Contrail は、RFC 2385 に基づいて、BGP ピアリングの MD5 認証をサポートします。
このオプションにより、BGPは、接続ストリームに偽装されたTCPセグメントが導入されるのを防ぎます。両方の BGP ピアを同じ MD5 キーで設定する必要があります。設定が完了すると、各 BGPピアは、送信するすべてのセグメントのTCPヘッダーに16バイトのMD5ダイジェストを追加します。このダイジェストは、TCPセグメントのさまざまな部分にMD5アルゴリズムを適用して作成されます。署名されたセグメントを受信すると、受信者は同じデータから(独自のキーを使用して)独自のダイジェストを計算してそれを検証し、2つのダイジェストを比較します。有効なセグメントでは、双方が鍵を知っているので、比較は成功しています。
BGP MD5 認証を有効にし、Contrail ノードでキーを設定する方法は次のとおりです。
md5 キーがプロビジョニングに含まれておらず、ノードがすでにプロビジョニングされている場合は、md5 の引数を使用して次のスクリプトを実行できます。
contrail-controller/src/config/utils/provision_control.py
host@<your_node>:/opt/contrail/utils# python provision_control.py --host_name <host_name> --host_ip <host_ip> --router_asn <asn> --api_server_ip <api_ip> --api_server_port <api_port> --oper add --md5 “juniper” --admin_user admin --admin_password <password> --admin_tenant_name admin
- Webユーザーインターフェイスを使用してMD5を設定することもできます。
ポート8080(
:8080)でノードのIPアドレスに接続し、
Configure->Infrastructure->BGP Routersを選択します。
図1に示すように、BGPピアのリストが表示されます。
図1:BGPルーターウィンドウの編集
BGPピアの場合は、ピアエントリーの右側にある歯車アイコンをクリックします。次に 、「編集」をクリックします。BGPルーターの編集ダイアログボックスが表示されます。
ウィンドウを下にスクロールして、[ 詳細オプション]を選択します。
認証 モード>MD5 を選択し、 認証キー 値を入力して、MD5認証を設定します。