
LinuxのfirewalldおよびNetworkManagerによるホストセキュリティ向けの、Crystal製の軽量かつセキュアなコントロールプレーン & リアルタイムWebダッシュボード。
Pared は、Crystal で書かれた安全で高性能な Linux ホストセキュリティコントロールプレーンおよびリアルタイム管理 Web コンソールです。Kemal と Blueprint のサーバーレンダリングコンポーネント、SQLite3、小さなバニラ 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) を備えた Linux PAM フォールバック、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