
Use dropbear over wireguard.
dropbear を wireguard 経由で使用します。
カーネル起動中、暗号化パーティションがマウントされる前に wireguard ネットワーキングを有効にします。dropbear と組み合わせることで、鍵素材を保存したりリモートネットワーク上にポートを公開したりすることなく、完全に暗号化されたリモートブートを実現できます。wireguard サーバーのエンドポイントに到達できるインターネット接続が存在するだけでよいのです。
通常の dropbear 接続と DNS 解決を使用して wireguard エンドポイントを見つけることができます。 これにより、ローカルアクセスをすべて防止できる、完全に暗号化されたリモート管理ノードの作成が本質的に可能になります。
Linux に関する実務知識。ネットワーキングと Wireguard の理解。
インストールは make でサポートされています。ダウンロード、展開、設定を行い、ターゲットマシンにインストールします。
最新リリースを取得し、解凍します。
RELEASE=$(curl -Ls -o /dev/null -w %{url_effective} https://github.com/r-pufky/wireguard-initramfs/releases/latest | tr "/" "\n" | tail -n 1)
wget https://github.com/r-pufky/wireguard-initramfs/archive/refs/tags/"${RELEASE}".tar.gz
tar xvf "${RELEASE}".tar.gz
cd wireguard-initramfs-"${RELEASE}"
configs/initramfs ファイルには、動作中の wireguard 接続に基づいた変数が含まれています。詳細については wg set のマニュアルページ を参照してください。
make install
⚠️
ほとんどのインストールは現在 /boot を暗号化していません。したがって、クライアントの秘密鍵は信頼できない/漏洩したものと見なすべきです。リモートアンロックには、適切なポートブロックを備えた専用のポイントツーポイント wireguard ネットワークを使用することを強くお勧めします。
initramfs を再構築するには、次のいずれかの方法を使用します:
make build_initramfs # Debian
make build_initramfs_rpi # Raspberry Pi
update-initramfs -u -k all && update-grub # Manual build
reboot
静的なエラーはビルドを中止します。設定ミスは検出されません。マシンに物理的にアクセスできるうちに必ずテストしてください。
wireguard-initramfs は dropbear と組み合わせることで、リモートネットワークを制御する必要も、そのシステムのパブリック IP を知る必要もなく、リモートシステムのアンロックを可能にします。また、SSH 接続が試行される前に、暗号化された no-trust トンネルを作成します。
まず、リモートアンロックが wireguard 経由で確実に動作するように、dropbear をすべてのネットワークインターフェースで使用するよう設定します。動作が確認できたら、wireguard ネットワークのみに制限します:
/etc/dropbear/initramfs/config
DROPBEAR_OPTIONS='... -p 172.31.255.10:22 ...'
2023-10-21 のような以前のリリースを使用しているユーザーは、以下のコマンドを実行して現在のプロジェクトを更新できます:
sudo bash scripts/migrate_project_structure.sh
make install
make build_initramfs
アダプター設定は /etc/wireguard/initramfs.conf に、initramfs 設定は /etc/wireguard/initramfs にあります。
これにより、プロジェクト構造と内容は維持されるはずです。ただし、完全な wireguard アダプター設定がサポートされるようになったため、手動による検証が必要です。
すべて歓迎します。プルリクエストを送信するか、バグを報告してください!
Debian パッケージングに詳しいですか? これを .deb パッケージ化しましょう!