Cisco IPsec設定

スポンサーリンク

IPSec(Security Architecture for IP) とは暗号化技術となります。
VPNの構築に使われ、ネットワーク層で機能します。
事前共有キー (Pre-Shared Key)での認証を実施するのでSSLVPNより処理が速いとされています。
細かい仕組みはこちらを参照→「IPsecとは①」

構成

IPsec設定

ISAKMP SA(フェーズ1)の設定値
(config)#crypto isakmp policy (プライオリティ値) ISAKMPポリシーの設定
プライオリティ値=1~10000で指定可能
数字が低いほど優先度が高くなる
(config-isakmp)#encryption (暗号値) 暗号化アルゴリズムの指定。
(des | 3des | aes | aes 192 | aes 256)から選択
デフォルトはdes
(config-isakmp)#hash (ハッシュ値) ハッシュアルゴリズムの指定
(md5 | sha | sha256 | sha384 | sha512)から選択
デフォルトはsha
(config-isakmp)#authentication (認証値) 認証アルゴリズムの指定
(rsa-sig | rsa-encr | pre-share)から選択
デフォルトはrsa-sig
(config-isakmp)#group (DHグループ値) DH(Diffie-Hellman)グループの指定。
( 1 | 2 | 5 | 14 | 15 | 16 | 19 | 20 )から選択
デフォルトは1
(config-isakmp)# lifetime (秒) IKE SA のライフタイムを指定
60~86,400秒で指定可能
デフォルトは86,400秒
(config)#crypto isakmp key (パスワード) address (ピアのIPアドレス)  事前共有鍵と接続先IPアドレスの設定。
※認証設定でpre-shareを設定した場合
(config)#crypto isakmp keepalive (秒) [ periodic | on-demand ]  DPDの設定※リアルタイムで通信断を検知したい場合に設定する
10~3,600秒で指定可能
•periodic:DPD メッセージを指定時間で定期的に送信
•on-demand:DPD メッセージをIPsecトラフィックが流れていないときのみ送信
IPSEC SA(フェーズ2)の設定値
(config)#crypto ipsec transform-set (トランスフォーム名) (ESP暗号化トランスフォーム1) [ESP/AH認証トランスフォーム2]
トランクフォーム名:任意の名前を指定
AH/ESP暗号化トランスフォーム:ESP = esp-gcm | esp-gmac | esp-aes(128・192・256) | esp-des | esp-3des から選択
ESP/AH認証トランスフォーム:AH = ah-md5-hmac | ah-sha-hmac から選択
                ESP = esp-md5-hmac | esp-sha-hmac
mode:Trasport | tunnel から選択 ※指定しない場合はTunnelとなる
(cfg-crypto-tran)#mode [transport | tunnel] mode:Trasport | tunnel から選択 ※デフォルトはTunnel
IPsecの対象とする通信をACLの設定
(config)#access-list (番号 | 名前) permit ip 送信元IPアドレス SM 宛先IPアドレス SM IPsecの対象とする通信をACLで定義 ※ACLの細かい設定はこちら
暗号マップの作成
(config)#crypto map (暗号MAP名) (シーケンス番号) ipsec-isakmp 暗号マップの枠を作成
MAP名:任氏の名前  シーケンス番号:番号を指定(小さい値が優先)
(config-crypto-map)#set peer (ピアのIPアドレス)  接続相手のIPアドレスを指定
(config-crypto-map)#set transform-set (トランスフォーム名) IPSEC SA(フェーズ2)の設定で作成したトランスフォーム名を指定
(config-crypto-map)#match address (アクセスリスト番号 | アクセスリスト名) 暗号化するACLを指定
(config-crypto-map)#set pfs (group1・2・5) IPSec SA ネゴシエーションの Diffie-Hellman(DH)グループ ID を指定。
• デフォルトでは無し オプションなので設定しなくても問題なし
※新しい SA を要求する場合、Perfect Forward Secrecy(PFS; 完全転送秘密)を要求する
暗号マップをインターフェースに割り当て
(config-if)#crypto map (暗号MAP名) インターフェースに対する暗号マップの適用

設定例

パケット内容

GREトンネル

GRE(Generic Routing Encapsulation)とはトンネルプロトコルの1つでパケットをGREでカプセル化します。
IPsecと異なり、トンネル内で暗号化は行いません。
GREトンネルを使用する事でマルチキャストを転送できるようになるので、主にルーティングプロトコルの交換に使用されます。
GREを使用するときは大体はIPsecとセットで使用します。

GRE設定

(config)#interface tunnel (番号)  トンネルインターフェースの作成 
(config-if)#ip address IPアドレス サブネットマスク GREトンネルで設定する任意のローカルアドレスを設定
(config-if)#tunnel source (実I/FのIP | I/F名) 送信元のIPアドレスを指定
(config-if)#tunnel destination (宛先IP) 宛先IPアドレスを指定

GRE over IPsecの設定

GREトンネルの通信をIPsecで暗号化します。
①IPsecトンネルとGREの設定を実施して、IPsecで指定しているACLの設定を下記のように設定します。
GREトンネルとセットで使うと先にGREトンネルが構築されるため、ACLを下記のようにする必要があるみたい

access-list (番号) permit gre host (送信元IP) host (宛先IP)

暗号化するIPを指定する
番号:任意の番号(IPsecのcrypto mapで指定するACL)
プロトコル:GREを指定
送信元:GREで指定した送信元I/FのIPアドレス
宛先:GREで指定した宛先のIPアドレス

②IPSecプロファイルを作成してTunnelインターフェースに適用する
 Ciscoパケットトレーサでは設定ができませんでした

(config)#crypto ipsec profile プロファイル名 任意のプロファイル名を設定
(config-crypto)#set transform-set (トランスフォームセット名) IPsecの設定の時に作成したトランスフォームを指定
(config-if)#tunnel protection ipsec profile プロファイル名 作成したGREトンネルにIPsecプロファイルを設定

詳細確認コマンド

show crypto isakmp policy 作成したIKEフェーズ 1 のISAKMPポリシーを表示
show crypto isakmp sa IKEフェーズ 1 のピア間で構築された ISAKMP SAを表示
ステータス ①表示無し:IPsecの通信が行われていない状態
②MM_NO_STATE:IKEフェーズ1の失敗 ③QM_IDLE:IKEフェーズ1の成功
show crypto ipsec transform-set IKEフェーズ 2 のトンラスフォームセットの表示
show crypto ipsec sa IKEフェーズ 2 のピア間で構築された IPSec SA を表示
show crypto session detail IPsec SAの詳細ステータス表示

コメント

タイトルとURLをコピーしました