◆ EIGRP - MD5認証
ルーティングプロトコルのEIGRPに認証を実装することで、認証の設定がないEIGRPルータがネットワーク
に接続されてもEIGRPネイバーは確立せず、既存の経路情報が不正に交換されることを防ぐことができます。
認証機能を実装したEIGRPルータでは、送信と受信の全てのEIGRPパケットを認証します。認証に失敗した
場合は、EIGRPのHelloパケットが無視されるのでEIGRPネイバーが確立しません。隣接するEIGRPルータの
双方で同じキーID( 番号 )とキー( パスワード )が一致した場合に認証は成功してネイバーが確立します。
ルーティングプロトコルの認証には、プレーンテキストとMD5の2種類の認証方式があります。EIGRPでは
MD5のみをサポートしています。MD5による認証では、以下のフローでEIGRPの認証が行われていきます。
Step |
説明 |
1 |
隣接する2台のEIGRPルータの両方に、同じキーIDと同じキーを設定 |
2 |
EIGRPルータは、キーIDとキーを基に生成されたメッセージダイジェストを送信 |
3 |
受信パケットのメッセージダイジェストと自身で生成したメッセージダイジェストを比較して一致すれば認証成功 |
ルーティングプロトコルの認証では、複数のキーをキーチェーンで管理することができます。キーチェーン内
の各キーには有効期限を設定することができます。設定した有効期限を過ぎると自動的に使用するキーを変更
するのでセキュリティが向上します。キーチェーンに複数のキーがある場合、キーIDの最も小さいキーが送信
に使用されます。 ルーティングプロトコル認証は一般的な設定ではありませんが、この認証設定を行う場合、
一般的に、キーチェーンの中のキーは1つにして、有効期限(ライフタイム)はなしとする実装例が多いです。
EIGRPパケット |
説明 |
送信時 |
有効なキーにおいて、最小のキーIDのキーを使用 |
受信時 |
有効なキーを全て使用 |
◆ EIGRP - 認証の設定
◆ キーチェーンの作成
(config)# key chain name
コマンド引数 |
説明 |
name |
複数のキーを管理するためのキーチェーンの名前を指定。
|
◆ キーIDの作成
(config-keychain)# key key-id
コマンド引数 |
説明 |
key-id |
0 〜 2147483647 の間でキー番号を指定。キーIDはネイバーと一致している必要がある。
|
◆ キーの設定(パスワードの設定)
(config-keychain-key)# key-string password
コマンド引数 |
説明 |
password |
EIGRPパケットの送信時、受信時の認証で使用する文字列を指定。大文字小文字は区別。
|
◆ 受信ライフタイムの設定 - オプション
(config-keychain-key)# accept-lifetime start-time { end-time | infinite | duration seconds }
◆ 送信ライフタイムの設定 - オプション
(config-keychain-key)# send-lifetime start-time { end-time | infinite | duration seconds }
コマンド引数 |
説明 |
start-time |
開始時間の指定。例えば 09:00:00 dec 1 2017 のように指定。
|
end-time |
終了時間の指定。end-time値はstart-time値より遅い必要がある。 |
infinite |
start-time値から無期限に使用可能にする場合に指定。 |
seconds |
キーが使用可能な時間を秒単位で指定。1 〜 2147483646の範囲で指定 |
◆ EIGRPのMD5認証の有効化
(config-if)# ip authentication mode eigrp number md5
◆ キーチェーンの適用
(config-if)# ip authentication key-chain eigrp number keychain-name
◆ EIGRP - 認証の設定例
EIGRP認証の設定を行う場合、一般的には1つのキーチェーン、1つのキーを使用することから下図のような
構成で設定を行うことが多いです。また、ライフタイムは設定せずに無期限のキーを使用することが多いです。
設定したキーチェーンとキーについては、show key chainコマンドによりその有効な状態を確認できます。
認証が成功しているかどうかは show ip eigrp neighbors でネイバーが確立していればOKと判断できます。
|