Cisco
サイト間IPsec設定例
構成図
IPsec+PPPoE+NAT+ACLのコンフィグからRT-2のIPsecの設定箇所をピックアップします。
IPsecの設定例
crypto isakmp policy 110 ← ISAKMPの設定。数字はプライオリティ(小さい値が優先)です。 encr aes ← ISAKMPの暗号アルゴリズムにAESを設定しています。…(1) hash sha256 ← ISAKMPの認証アルゴリズムにSHA-256を設定しています。…(2) authentication pre-share ← 共通鍵方式を設定しています。…(3) group 2 ← オプション設定。ISAKMPのDHグループを変更したい場合に設定します。…(4) lifetime 1800 ← オプション設定。ISAKMPライフタイムを変更したい場合に設定します。…(5) crypto isakmp key PS-key address 11.11.11.11 ← 共通鍵とIPsec対向機器のIPアドレスを設定します。 crypto isakmp keepalive 30 periodic ← オプション設定。DPDを変更したい場合に設定します。…(6) ! ! crypto ipsec transform-set TS-name esp-aes esp-sha256-hmac ← トランスフォームセットでIPsecの暗号と認証アルゴリズムを設定します。…(7) mode tunnel ← トンネルモードかトランスポートモードを設定します。 ! ! ! crypto map MAP-name 160 ipsec-isakmp ← ISAKMPの設定。数字はシーケンス番号(小さい値が優先)です。 set peer 11.11.11.11 ← IPsec対向機器のIPアドレスを設定します。 set security-association lifetime seconds 1200 ← オプション設定。IPsecライフタイムを変更したい場合に設定します。…(8) set transform-set TS-name set pfs group14 ← オプション設定。PFSを有効にしたい場合に設定します。…(9) match address IPsec interface Vlan1 ip address 10.2.1.22 255.255.255.0 ip nat inside ip tcp adjust-mss 1350 ← MSSをIPsecパケットに合わせて変更します。…(10) interface Dialer1 ip access-group Internet-ACL in ip mtu 1492 ip nat outside crypto map MAP-name ← IPsecをインターフェースにマッピングします。…(11) ip access-list extended IPsec ← IPsec対象通信をアクセスリストで設定します。 permit ip 10.2.1.0 0.0.0.255 10.1.1.0 0.0.0.255 ip access-list extended Internet-ACL permit udp host 9.9.9.1 eq ntp host 22.22.22.22 eq ntp permit icmp any host 22.22.22.22 permit tcp any host 22.22.22.22 eq www permit udp host 11.11.11.11 eq isakmp host 22.22.22.22 eq isakmp ← IPsec対向機器からのISAKMP(UDP500)を許可します。 permit esp host 11.11.11.11 host 22.22.22.22 ← IPsec対向機器からのIPsec(ESPパケット)を許可します。 ip access-list extended Internet-PAT deny ip 10.2.1.0 0.0.0.255 10.1.1.0 0.0.0.255 ← IPsec対象通信をPATから除外します。 permit ip 10.2.1.0 0.0.0.255 any
(1) ISAKMPで設定できる暗号アルゴリズム
RT-1(config-isakmp)#encryption ? 3des Three key triple DES aes AES - Advanced Encryption Standard. des DES - Data Encryption Standard (56 bit keys).
(2) ISAKMPで設定できる認証アルゴリズム
RT-1(config-isakmp)#hash ? md5 Message Digest 5 sha Secure Hash Standard sha256 Secure Hash Standard 2 (256 bit) sha384 Secure Hash Standard 2 (384 bit) sha512 Secure Hash Standard 2 (512 bit)
(3) 設定できる認証方式
RT-1(config-isakmp)#authentication ? pre-share Pre-Shared Key rsa-encr Rivest-Shamir-Adleman Encryption rsa-sig Rivest-Shamir-Adleman Signature
(4) ISAKMPで設定できるDHグループ
RT-1(config-isakmp)#group ? 1 Diffie-Hellman group 1 (768 bit) 14 Diffie-Hellman group 14 (2048 bit) 15 Diffie-Hellman group 15 (3072 bit) 16 Diffie-Hellman group 16 (4096 bit) 19 Diffie-Hellman group 19 (256 bit ecp) 2 Diffie-Hellman group 2 (1024 bit) 20 Diffie-Hellman group 20 (384 bit ecp) 21 Diffie-Hellman group 21 (521 bit ecp) 24 Diffie-Hellman group 24 (2048 bit, 256 bit subgroup) 5 Diffie-Hellman group 5 (1536 bit)
(5) 設定できるISAKMPライフタイム(デフォルトは86400)
RT-1(config-isakmp)#lifetime ? <60-86400> lifetime in seconds
(6) DPDについて
Dead Peer Detectionの略です。使用されなくなったピアを検知し削除する機能です。
periodicに設定すると、タイマー毎にピアの生存を確認し、使用されなくなったピアがあれば早い段階で検知し削除します。
デフォルト設定はon-demandです。タイマーではなく、ピアの応答がない場合に削除します。
(7) IPsecで設定できる暗号アルゴリズム
RT-1(config)#crypto ipsec transform-set TS-name ? ah-md5-hmac AH-HMAC-MD5 transform ah-sha-hmac AH-HMAC-SHA transform ah-sha256-hmac AH-HMAC-SHA256 transform ah-sha384-hmac AH-HMAC-SHA384 transform ah-sha512-hmac AH-HMAC-SHA512 transform comp-lzs IP Compression using the LZS compression algorithm esp-3des ESP transform using 3DES(EDE) cipher (168 bits) esp-aes ESP transform using AES cipher esp-des ESP transform using DES cipher (56 bits) esp-gcm ESP transform using GCM cipher esp-gmac ESP transform using GMAC cipher esp-md5-hmac ESP transform using HMAC-MD5 auth esp-null ESP transform w/o cipher esp-seal ESP transform using SEAL cipher (160 bits) esp-sha-hmac ESP transform using HMAC-SHA auth esp-sha256-hmac ESP transform using HMAC-SHA256 auth esp-sha384-hmac ESP transform using HMAC-SHA384 auth esp-sha512-hmac ESP transform using HMAC-SHA512 auth
(7) IPsecで設定できる認証アルゴリズム
RT-1(config)#crypto ipsec transform-set TS-name esp-aes ? 128 128 bit keys. 192 192 bit keys. 256 256 bit keys. ah-md5-hmac AH-HMAC-MD5 transform ah-sha-hmac AH-HMAC-SHA transform ah-sha256-hmac AH-HMAC-SHA256 transform ah-sha384-hmac AH-HMAC-SHA384 transform ah-sha512-hmac AH-HMAC-SHA512 transform comp-lzs IP Compression using the LZS compression algorithm esp-md5-hmac ESP transform using HMAC-MD5 auth esp-sha-hmac ESP transform using HMAC-SHA auth esp-sha256-hmac ESP transform using HMAC-SHA256 auth esp-sha384-hmac ESP transform using HMAC-SHA384 auth esp-sha512-hmac ESP transform using HMAC-SHA512 auth
(8) 設定できるIPsecライフタイム(デフォルトは3600)
RT-1(config-crypto-map)#set security-association lifetime seconds ? <120-2592000> Security association duration in seconds
(9) IPsecで設定できるDHグループ
RT-1(config-crypto-map)#set pfs ? group1 D-H Group1 (768-bit modp) group14 D-H Group14 (2048-bit modp) group15 D-H Group15 (3072-bit modp) group16 D-H Group16 (4096-bit modp) group19 D-H Group19 (256-bit ecp) group2 D-H Group2 (1024-bit modp) group20 D-H Group20 (384-bit ecp) group21 D-H Group21 (521-bit ecp) group24 D-H Group24 (2048-bit modp, 256 bit subgroup) group5 D-H Group5 (1536-bit modp)
(10) MSSは余裕を持たせた値にしています。
(11) このコマンドを設定するとISAKMPが動作します。
RT-1(config-if)#crypto map MAP-name 000039: *Nov 9 00:52:00.123: %CRYPTO-6-ISAKMP_ON_OFF: ISAKMP is ON
IPsecの状態確認
RT-2#show crypto engine connections active Crypto Engine Connections ID Type Algorithm Encrypt Decrypt LastSeqN IP-Address 1 IPsec AES+SHA256 0 18 18 22.22.22.22 2 IPsec AES+SHA256 23 0 0 22.22.22.22 2001 IKE SHA256+AES 0 0 0 22.22.22.22 RT-2# RT-2#show crypto isakmp sa IPv4 Crypto ISAKMP SA dst src state conn-id status 22.22.22.22 11.11.11.11 QM_IDLE 2001 ACTIVE IPv6 Crypto ISAKMP SA RT-2# RT-2#show crypto ipsec sa interface: Dialer1 Crypto map tag: MAP-name, local addr 22.22.22.22 protected vrf: (none) local ident (addr/mask/prot/port): (10.2.1.0/255.255.255.0/0/0) remote ident (addr/mask/prot/port): (10.1.1.0/255.255.255.0/0/0) current_peer 11.11.11.11 port 500 PERMIT, flags={origin_is_acl,} #pkts encaps: 23, #pkts encrypt: 23, #pkts digest: 23 #pkts decaps: 18, #pkts decrypt: 18, #pkts verify: 18 #pkts compressed: 0, #pkts decompressed: 0 #pkts not compressed: 0, #pkts compr. failed: 0 #pkts not decompressed: 0, #pkts decompress failed: 0 #send errors 0, #recv errors 0 local crypto endpt.: 22.22.22.22, remote crypto endpt.: 11.11.11.11 plaintext mtu 1422, path mtu 1492, ip mtu 1492, ip mtu idb Dialer1 current outbound spi: 0x3C27C1A1(1009238433) PFS (Y/N): Y, DH group: group14 inbound esp sas: spi: 0xAC6FE00C(2893013004) transform: esp-aes esp-sha256-hmac , in use settings ={Tunnel, } conn id: 1, flow_id: Onboard VPN:1, sibling_flags 80000040, crypto map: MAP-name sa timing: remaining key lifetime (k/sec): (4308057/1059) IV size: 16 bytes replay detection support: Y Status: ACTIVE(ACTIVE) inbound ah sas: inbound pcp sas: outbound esp sas: spi: 0x3C27C1A1(1009238433) transform: esp-aes esp-sha256-hmac , in use settings ={Tunnel, } conn id: 2, flow_id: Onboard VPN:2, sibling_flags 80000040, crypto map: MAP-name sa timing: remaining key lifetime (k/sec): (4308055/1059) IV size: 16 bytes replay detection support: Y Status: ACTIVE(ACTIVE) outbound ah sas: outbound pcp sas: RT-2#
SAの削除コマンド
RT-2#show crypto engine connections active Crypto Engine Connections ID Type Algorithm Encrypt Decrypt LastSeqN IP-Address 11 IPsec AES+SHA256 0 0 0 22.22.22.22 12 IPsec AES+SHA256 0 0 0 22.22.22.22 2005 IKE SHA256+AES 0 0 0 22.22.22.22 RT-2# RT-2#clear crypto sa ← IPsec SAの削除コマンド RT-2# RT-2#show crypto engine connections active Crypto Engine Connections ID Type Algorithm Encrypt Decrypt LastSeqN IP-Address 2005 IKE SHA256+AES 0 0 0 22.22.22.22 RT-2# RT-2#clear crypto isakmp ← ISAKMP SAの削除コマンド RT-2# RT-2#show crypto engine connections active Crypto Engine Connections ID Type Algorithm Encrypt Decrypt LastSeqN IP-Address RT-2#