Pared 是一个使用 Crystal 编写的安全、高性能 Linux 主机安全控制平面和实时管理 Web 控制台。它基于 Kemal 和 Blueprint 服务端渲染组件,使用 SQLite3、一个小型 vanilla-JS/WebSocket 层以及原生 libsystemd 日志流,将 firewalld 和 NetworkManager 编排统一到一个集中式、响应式界面中。
Pared 具备双向 TLS (mTLS) 无密码认证、Linux PAM/SSSD 身份管理、用于实时日志流的原生 libsystemd C 绑定、内核数据包模拟、自动化防锁定回滚守护机制,以及容器网络绕过审计。
DROP/REJECT)的自动化易失性暂存快照,带有 30 秒回滚看门狗计时器,防止操作员被锁定。0.0.0.0、::)进行零信任防火墙绕过审计。/trace、/rollback <zone>、/wg peer <term>、/zone add),并通过服务端分发到匹配的控制台。pam_acct_mgmt)、SSSD D-Bus 组解析、带 CRL 检查的 X.509 客户端证书 mTLS,以及 CSRF 保护。NOTIFY_SOCKET 集成原生看门狗,以及结构化审计日志。libsystemd 开发头文件(systemd-devel)firewalld 和 NetworkManager 活动守护进程# 1. Clone repository & install shard dependencies
git clone https://gitlab.com/renich/pared.git
cd pared
shards install
# 2. Provision host system Polkit rules & seed default database
make setup
make seed
# 3. Compile and launch development server
make build
make run
控制平面 Web 仪表板可通过 http://localhost:3636 访问。
通过 make seed 初始化后,默认凭据为:
[email protected]password(UID ≥ 1000 的本地系统 PAM 用户账户也可以直接认证)。
Pared 通过全面的单元测试和 E2E 浏览器测试套件强制执行严格的质量标准:
# Run unit & integration test suite (200 examples)
make spec
# Run headless Selenium E2E browser test suite (16 examples)
make test-browser
# Run static analysis (Ameba)
bin/ameba
# Run security vulnerability scan (Flaw)
bin/flaw scan .
# Run reStructuredText documentation linter (crstlint)
find docs -name "*.rst" -exec crstlint {} +
生产强化版 systemd 单元文件位于 scripts/pared.service,实现了内核沙箱、看门狗 ping 和能力限制:
# Build production release binary
make release
# Install binary and systemd service
sudo install -m 755 bin/pared /usr/local/bin/pared
sudo install -m 644 scripts/pared.service /etc/systemd/system/pared.service
# Enable and start service
sudo systemctl daemon-reload
sudo systemctl enable --now pared.service
# Inspect service status and watchdog health
sudo systemctl status pared.service
全面的架构规范和决策记录维护在 docs/ 目录中:
要在本地构建 Sphinx HTML 文档:
sphinx-build -b html -W docs docs/_build/html