Fallback Crypto
os-fallbackcrypto · 保護
ホスト自身が運ぶ IPsec トンネル(Sophos XGS のコプロセッサーが引き受けないもの)を、カーネルのどの暗号ドライバーで暗号化するかを選びます。
メニューの場所
- os-xgs-npu をインストールした場合: XGS: Fallback Crypto
- os-xgs-npu がない場合: VPN: IPsec: Fallback Crypto

選択肢は 3 つです。aesni only は OPNsense の出荷時のままです。ossl beside aesni では、カーネルの OpenSSL ベースのドライバー ossl(4) を、すぐに、そして毎回の起動の早い段階で、トンネルができる前に読み込み、新しい SA を両者で分け合います。ossl only では、OPNsense 自身の Tunables を通してローダーで aesni を無効にし、次の起動からすべてのセッションを ossl が受け持ちます。
ossl は OpenSSL 自身の AES-GCM を持っています。AVX-512 と VAES があれば幅の広いコード、AVX、PCLMULQDQ、MOVBE があれば AES-NI/GHASH を組み合わせたコードです。XGS 3300 のホストである AMD Ryzen Embedded V1780B には AVX-512 がないので、ossl は後者を使うことになります。これらのホストで ossl が aesni より速いかどうかは、まだ測定していません。
どの XGS でも、コプロセッサーは自分が引き受けた SA を、ここで何を選んでも暗号化します。この設定が変えるのはホストに残された SA だけです。os-xgs-npu が IPsec をソフトウェアプロバイダーに限定している XGS 136 では、両者は矛盾しません。ossl はソフトウェアプロバイダーであり、このプラグインの起動初期フックは os-xgs-npu のものより先に動きます。
機能
-
3 つの選択肢
aesni only、ossl beside aesni、ossl only。
-
トンネルより先に読み込み
ossl はすぐに、そして毎回の起動の早い段階で、トンネルができる前に読み込まれます。
-
Tunables で aesni を無効化
hint.aesni.0.disabled=1 は OPNsense 自身の Tunables を通して書き込まれるので、System: Settings: Tunables で確認できます。
-
プロセッサーの機能
ホストのプロセッサー、AES-GCM が依存する機能、そこで ossl がどの AES-GCM コードを使うか。
-
プロバイダーと SA
存在する暗号プロバイダー、IPsec がソフトウェアプロバイダーに限定されているかどうか、カーネル内の SA とそのアルゴリズム。
-
次の起動
次の起動で何が動くか、残りのために再起動がまだ必要かどうか。
インストールと更新
0.1.0-alpha.7.1 の次の os-xgs-npu リリースからは、XGS: Updates の Plugins タブにこのプラグインが表示され、インストール済みのコピーはそこで手動で更新でき、未インストールの環境ではそこからインストールできます。そのリリースから作られる完成済みイメージにも含まれます。それまでは、以下のとおりインストールと更新を行います。更新を実行する cron エントリーはありません。XGS アプライアンスでもほかの OPNsense でも、インストールは root で行います。リポジトリのチェックアウトから sh install/install.sh を実行する方法(ページは os-xgs-npu があれば XGS の下、なければ VPN: IPsec の下に置かれ、再実行しても設定は保たれます)と、リリースのパッケージ os-fallbackcrypto-1.0.0.pkg を SHA256SUMS で確認して pkg で追加する方法があります。この方法でインストールしたコピーは、自身の self-update.py で更新します。プロバイダーを選んで適用するまでは何も変わりません。削除する前に aesni only に戻して適用するか、削除後に System: Settings: Tunables から hint.aesni.0.disabled を消してください。OPNsense のプラグインリポジトリには含まれていません。
制限と、まだテストされていないこと
- ページからの選択の適用(ossl を読み込み tunable を書き込む apply.php)。
- ossl 上のトンネルと、aesni を無効にした状態。
- どちらのプロバイダーのスループットも未測定で、ossl が aesni より速いかどうかはわかっていません。
- tools/make-package.sh でビルドし pkg で追加するパッケージ。
- os-xgs-npu のない OPNsense へのインストール。
- Plugins タブまたは self-update.py による更新。1.0.0 が最初のリリースなので、インストール済みのコピーより新しいリリースはまだありません。
リポジトリ
最初のリリース: 2026-10-25