Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

BGP ルート認証

BGP のルーター認証について

ルーターとルートの認証とルートの整合性を使用すると、誤ったルーティング情報を他のルーターと共有するように構成されたマシンまたはルーターによる攻撃を受けるリスクが大幅に軽減されます。この種の攻撃では、攻撃されたルーターがだまされてルーティングループを作成させたり、攻撃されたルーターのルーティングテーブルを大幅に増やしてパフォーマンスに影響を与えたり、ルーティング情報を攻撃者が分析できるようにネットワーク内の場所にリダイレクトしたりする可能性があります。セグメントで偽の経路広告を送信することができます。これらの更新は、ルートの送信元を確認するための認証メカニズムがない限り、ネイバールーターのルーティングテーブルに受け入れられます。

ルーターとルートの認証により、ルーターは、パスワード(鍵)に基づいて信頼できる送信元と通信していることを確認できる場合にのみ、情報を共有できます。この方法では、ハッシュされたキーがルートとともに別のルーターに送信されます。受信側ルーターは、送信されたキーを自身で設定されたキーと比較します。それらが同じである場合、ルートを受け入れます。ハッシュ アルゴリズムを使用すると、キーはプレーン テキストでネットワーク経由で送信されません。代わりに、設定されたキーを使用してハッシュが計算されます。ルーティング更新は、キーとともにハッシュ関数への入力テキストとして使用されます。このハッシュは、ルート更新とともに受信ルーターに送信されます。受信側ルーターは、受信したハッシュを、設定された事前共有鍵を使用してルート更新時に生成するハッシュと比較します。2 つのハッシュが同じ場合、ルートは信頼できる送信元からのものと見なされます。キーは、送信ルーターと受信ルーターのみが認識します。

セキュリティをさらに強化するために、一連の認証キー( キーチェーン)を設定できます。各キーには、キーチェーン内で一意の開始時間があります。キーチェーン認証を使用すると、ピアリングセッションを停止せずにパスワード情報を定期的に変更できます。このキーチェーン認証方法は、ピアリングセッションをリセットしたり、ルーティングプロトコルを中断したりすることなく、キーがロールオーバーされるため、 ヒットレス と呼ばれます。

送信ピアは、以下のルールを使用して、アクティブな認証キーを識別します。

  • 開始時刻が現在の時刻以下である (つまり、将来ではない)。

  • 開始時刻は、開始時刻が現在の時刻より短い (つまり、現在の時刻に最も近い) チェーン内の他のすべてのキーの時刻よりも大きくなります。

受信ピアは、着信鍵識別子に基づいて、認証に使用する鍵を決定します。

送信ピアは、設定された開始時間に基づいて現在の認証キーを識別し、現在のキーを使用してハッシュ値を生成します。次に、送信ピアは、TCP拡張認証オプションオブジェクトをBGPアップデートメッセージに挿入します。オブジェクトには、オブジェクト ID (IANA によって割り当てられる)、オブジェクトの長さ、現在のキー、およびハッシュ値が含まれています。

受信ピアは、受信する TCP 拡張認証オプションを調べ、受信した認証鍵を検索し、開始時刻、システム時刻、および tolerance パラメーターに基づいて鍵が受け入れ可能かどうかを判別します。鍵が受け入れられると、受信ピアはハッシュを計算し、更新メッセージを認証します。

キーチェーンを TCP セッションに初めて適用すると、セッションがリセットされます。ただし、キーチェーンが適用されると、キーチェーンにパスワードを追加または削除しても、TCP セッションはリセットされません。また、キーチェーンが認証アルゴリズムから別の認証アルゴリズムに変更されても、TCP セッションはリセットされません。

TCP認証

通常、TCP 認証は次の階層レベルで構成します。

  • [edit protocols bgp]

  • [edit protocols bgp group group-name]

  • [edit protocols bgp group group-name neighbor address]

TCP 認証とプレフィックス サブネット

Junosデバイスは、BGPグループで設定された許可されたプレフィックスサブネットを介して検出されるBGPピアへのTCP認証をサポートします。

BGPセッションのTCP-AOまたはTCP MD5のプレフィックスベースの認証を設定するには、以下の階層で ステートメントを設定します 。allow (all | prefix-list)

  • [edit protocols bgp group group-name]

  • [edit protocols bgp group group-name dynamic-neighbor dyn-name]

TCP認証の詳細については、TCPを参照してください。

例:BGP のルーター認証の設定

すべてのBGPプロトコル交換を認証することで、信頼済みのルーティングデバイスだけが自律システム(AS)ルーティング更新に参加することを保証できます。デフォルトでは認証は無効になっています。

要件

開始する前に、以下を実行します。

  • ルーター・インターフェイスを設定します。

  • 内部ゲートウェイプロトコル(IGP)を設定します。

概要

認証を構成すると、アルゴリズムによってエンコードされたチェックサムが作成され、それが送信されるパケットに含まれます。受信側のルーティング デバイスは、認証キー(パスワード)を使用してパケットのチェックサムを検証します。

この例には、キーチェーンの設定と適用に関する次のステートメントが含まれています。

  • key- キーチェーンは複数のキーを持つことができます。キーチェーン内の各キーは、一意の整数値で識別される必要があります。有効な識別子値の範囲は 0 から 63 です。

    キーの長さは最大 126 文字です。文字には任意のASCII文字列を含めることができます。スペースを含む場合、すべての文字を引用符(" ")で囲んでください。

  • tolerance—(オプション)キーチェーンごとに、クロックスキューの許容値を秒単位で設定できます。クロックスキューの許容範囲は、BGP 更新の鍵を受け入れる受信側に適用されます。設定可能な範囲は 0 から 999,999,999 秒です。許容期間中は、現在のパスワードまたは以前のパスワードのいずれかを使用できます。

  • key-chain- キーチェーンごとに、名前を指定する必要があります。この例では、1 つのキーチェーンを定義します。bgp-auth. ルーティングデバイスに複数のキーチェーンを設定できます。例えば、BGP 用のキーチェーン、OSPF 用のキーチェーン、LDP 用のキーチェーンを作成することができます。

  • secret- キーチェーン内のキーごとに、秘密のパスワードを設定する必要があります。このパスワードは、暗号化またはプレーンテキスト形式でステートメントに 入力できます。secret 常に暗号化された形式で表示されます。

  • start-time- 各キーで開始時刻を UTC 形式で指定する必要があります。制御は 1 つのキーから次のキーに渡されます。(ルーティングデバイスのクロックに基づいて)設定された開始時刻が到来すると、その開始時刻を持つキーがアクティブになります。開始時刻は、ルーティングデバイスのローカルタイムゾーンで指定され、キーチェーン内で一意である必要があります。

  • authentication-key-chain- すべてのピア、グループ、またはネイバーに対して、グローバルBGPレベルでキーチェーンを適用できます。この例では、 という 外部 BGP(EBGP)グループで定義されているピアにキーチェーンを適用します。ext

  • authentication-algorithm- キーチェーンごとに、ハッシュアルゴリズムを指定できます。アルゴリズムには、AES-128、MD5、または SHA-1 のいずれかを指定できます。

    キーチェーンと認証アルゴリズムを BGP 隣接セッションに関連付けます。

この例では、 という名前の キーチェーンを設定します。bgp-auth キー 0 は、2011-6-23.20:19:33 -0700 から送信および承認され、キーチェーン内の次のキー (キー 1) がアクティブになると送信および承認を停止します。キー 1 は 1 年後の 2012-6-23.20:19:33 -0700 にアクティブになり、キー 1 の開始時刻より後の開始時刻で別のキーが構成されていない限り、送信と受け入れを停止しません。30 秒のクロック スキュー許容誤差は、鍵を受け入れるレシーバーに適用されます。許容期間中は、現在のキーまたは前のキーのいずれかを使用できます。キーは共有秘密パスワードです。つまり、認証されたルーティング更新を受信するネイバーは、同じキー(パスワード)を含め、同じ認証キーチェーン設定を持っている必要があります。そのため、ルーター R0 とルーター R1 がピアとして設定されている場合は、同じ認証キーチェーン設定が必要です。この例では、1つのルーティング・デバイスでの設定のみを示しています。

トポロジー図

図 1 この例で使用されているトポロジーを示しています。

図 1: BGP の認証BGP の認証

設定

CLIクイック構成

この例をすばやく設定するには、次のコマンドをコピーしてテキストファイルに貼り付け、改行を削除して、ネットワーク構成に合わせて必要な詳細を変更し、[edit]階層レベルのCLIにコマンドをコピー&ペーストしてください。

手順

ステップバイステップでの手順

次の例では、設定階層内のさまざまなレベルに移動する必要があります。CLIのナビゲーションについては、Junos OS CLIユーザーガイド設定モードでCLIエディターを使用する を参照してください。

ルーターR1がデバイスCE1からのルート・フィルターを受信し、受信したフィルターを使用してアウトバウンド・ルート・フィルタリングを実行するように設定するためには:

  1. ローカルの自律システムを設定します。

  2. 1 つ以上の BGP グループを設定します。

  3. 複数のキーを使用した認証を構成します。

    各キーの開始時刻は、キーチェーン内で一意である必要があります。

  4. 認証キーチェーンを BGP に適用し、ハッシュアルゴリズムを設定します。

  5. (オプション)クロックスキュー許容値を秒単位で適用します。

結果

コンフィギュレーションモードから、show protocolsshow routing-options、、およびの各コマshow securityンドを入力し、コンフィギュレーションを確認します。出力結果に意図した設定内容が表示されない場合は、この例の手順を繰り返して設定を修正します。

デバイスの設定が完了したら、設定モードから commit を入力します。

BGP 対応デバイスごとに適切なインターフェイス名とアドレスを使用して、ネットワーク内のすべての BGP 対応デバイスを対象に、この手順を繰り返します。

検証

設定が正常に機能していることを確認します。

ネイバーの認証の確認

目的

コマンドの出力に オプションが表示されていることを確認します。AutheKeyChainshow bgp neighbor

アクション

動作モードからshow bgp neighborコマンドを入力します。

認証メッセージが送信されたことを確認する

目的

BGP に拡張認証オプションがあることを確認します。

アクション

動作モードからmonitor traffic interface fe-0/0/1コマンドを入力します。

認証エラーのチェック

目的

認証エラーが原因で TCP によってドロップされたパケットの数を確認します。

アクション

動作モードからshow system statistics tcp | match authコマンドを入力します。

キーチェーンの動作確認

目的

認証エラーが原因で TCP によってドロップされたパケットの数を確認します。

アクション

動作モードからshow security keychain detailコマンドを入力します。

変更履歴

サポートされる機能は、使用しているプラットフォームとリリースによって決まります。 特定の機能がお使いのプラットフォームでサポートされているかどうかを確認するには、 Feature Explorer をご利用ください。

リリース
説明
22.4R1
Junos OS Evolved Release 22.4R1以降、IPサブネットでTCP-AOまたはTCP MD5認証を構成して、そのサブネットの下にアドレス全体を含めることができます。
22.4R1
Junos OS Evolved Release 22.4R1以降、TCP認証はVRF認識です。
19.1R1
Junos OS リリース 19.1R1 以降、Junos OS は、BGP グループで設定された許可されたプレフィックス サブネットを介して検出された BGP ピアに TCP 認証のサポートを拡張します。