6.6. IPsec 暗号化の有効化
クラスター管理者は、クラスターと外部 IPsec エンドポイント間の Pod 間 IPsec 暗号化を有効化できます。
次のいずれかのモードで IPsec を設定できます。
-
Full
: Pod 間のトラフィックおよび外部トラフィックの暗号化 -
External
: 外部トラフィックの暗号化
IPsec を Full
モードで設定する場合は、「外部トラフィックの IPsec 暗号化の設定」手順も完了する必要があります。
IPsec を Full
モードで有効化した場合、クラスター管理者は、full
スキーマを networks.operator.openshift.io
に追加することで、モードのオプションを設定できます。full
スキーマは encapsulation
パラメーターをサポートします。このパラメーターを使用して、IPsec トラフィックのネットワークアドレス変換トラバーサル (NAT-T) カプセル化を設定できます。encapsulation
パラメーターは次の値をサポートします。
-
Auto
はデフォルト値であり、libreswan
がノード内のトラフィックでネットワークアドレス変換 (NAT) パケットを検出すると、UDP カプセル化を有効にします。 -
Always
は、ノードで利用可能なすべてのトラフィックタイプに対して、UDP カプセル化を有効にします。このオプションは、ノード内の NAT パケットを検出する際にlibreswan
に依存しません。
前提条件
-
OpenShift CLI (
oc
) がインストールされている。 -
cluster-admin
権限を持つユーザーとしてクラスターにログインしている。 -
クラスター MTU のサイズを
46
バイト減らして、IPsec ESP ヘッダーにオーバーヘッドを設けている。
手順
IPsec 暗号化を有効にするには、次のコマンドを入力します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 外部ホストへのトラフィックを暗号化するには
External
を指定します。Pod 間のトラフィックを暗号化し、必要に応じて外部ホストへのトラフィックを暗号化するにはFull
を指定します。デフォルトでは、IPsec は無効になっています。
IPsec が
Full
モードで有効化され、encapsulation
がAlways
に設定されている場合の設定例Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 「外部トラフィックの IPsec 暗号化の設定」手順を完了して、IPsec を使用して外部トラフィックを暗号化します。
検証
OVN-Kubernetes データプレーン Pod の名前を見つけるには、次のコマンドを入力します。
oc get pods -n openshift-ovn-kubernetes -l=app=ovnkube-node
$ oc get pods -n openshift-ovn-kubernetes -l=app=ovnkube-node
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、クラスターで IPsec が有効になっていることを確認します。
注記クラスター管理者は、IPsec を
Full
モードで設定した際に、クラスター上の Pod 間で IPsec を有効化したことを確認できます。この手順では、クラスターと外部ホストの間で IPsec が機能しているかどうかは検証されません。oc -n openshift-ovn-kubernetes rsh ovnkube-node-<XXXXX> ovn-nbctl --no-leader-only get nb_global . ipsec
$ oc -n openshift-ovn-kubernetes rsh ovnkube-node-<XXXXX> ovn-nbctl --no-leader-only get nb_global . ipsec
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow ここで、
<XXXXX>
は、前のステップの Pod のランダムな文字シーケンスを指定します。コマンドからの正常な出力には、ステータスが
true
と表示されます。