作業環境
- 型番:UNIVERGE IX2106
- バージョン:10.2.16
IPsec VPN 設定概要
UNIVERGE IX にて IPsec VPN を設定する場合は以下の項目を設定します。
- IKE の設定(フェーズ1 に該当)
- IKE プロポーザルの作成
- IKE ポリシーの設定
- IPsec VPN の設定(フェーズ2 に該当)
- 自動鍵プロポーザルの作成
- 自動鍵ポリシーマップの作成
- ローカル/リモートの IPsec ID の設定
- トンネルインターフェースの作成/設定
- その他の設定
- ルーティング設定など
この他細かいパラメータの設定も可能ですが、最低限としては上記の項目を設定すれば OK です。
IKE の設定
IKE フェーズ1 に該当する設定を行います。
IKE プロポーザルの作成
IKE(Internet Key Exchange Security Protocol)で使用する IKE プロポーザル(アルゴリズム、認証手段、DHグループ、ライフタイム)を作成します。
グローバルコンフィグモードにて以下コマンドで設定します。
ike proposal IKE-PROPOSAL [encryption ENCRYPT-ALG] [hash HASH-ALG] [authentication METHOD] [group bit] [lifetime SECONDS]
IKE-PROPOSAL
:作成する IKE プロポーザルの識別名ENCRYPT-ALG
:暗号化アルゴリズムを以下から指定- aes
- aes-192
- aes-256
- des(デフォルト)
- 3des
HASH-ALG
:認証アルゴリズムを以下から指定- md5(デフォルト)
- sha
- sha2-256
- sha2-384
- sha2-512
METHOD
:認証手段。pre-shared(デフォルト) のみ指定可能bit
:DH グループを以下から指定- 768-bit(デフォルト):DH Group 1
- 1024-bit:DH Group 2
- 1536-bit:DH Group 5
- 2048-bit:DH Group 14
SECONDS
:SA が有効である時間を指定- 範囲:300~691,200 秒
- デフォルト:28,800
IKE ポリシーの設定
IKE(Internet Key Exchange Security Protocol)を起動するポリシーを設定し自動鍵交換を実行させます。
グローバルコンフィグモードにて以下コマンドで設定します。
ike policy IKE-POLICY peer PEER-ADDRESS [key-type TIPE] key PRE-SHARED-KEY [mode MODE] [IKE-PROPOSAL]
IKE-POLICY
:作成する IKE ポリシーの識別名PEER-ADDRESS
:SA を張る相手のアドレス
TIPE
:鍵入力タイプを以下から指定- hex:16進入力
- char(デフォルト):文字入力
- secret { 0 | 1 }:KEY 暗号化。0 → 平文。1 → 暗号化
PRE-SHARED-KEY
:事前共有鍵
MODE
:メインモードまたはアグレッシブモード指定- main
- aggressive
IKE-PROPOSAL
:対応付ける IKE プロポーザルの識別名を指定。指定を省略した場合は以下のデフォルト値になる- アルゴリズム:des、md5
- 認証手段:pre-shared
- ライフタイム:28,800秒
- DHグループ:768-bit
IKE キープアライブの設定
IKE キープアライブ機能を有効にする設定は、グローバルコンフィグモードにて以下コマンドで行います。デフォルトでは無効です。
ike keepalive IKE-POLICY [SECONDS [RETRIES]]
IKE-POLICY
:設定対象の IKE ポリシーの識別名を指定SECONDS
:キープアライブメッセージ送信間隔- 範囲:10~3,600秒
- デフォルト:10秒
RETRIES
:リトライアウト回数- 範囲:2~60 回
- デフォルト:3 回
IPsec VPN の設定
IKE フェーズ2 に該当する設定を行います。
自動鍵プロポーザルの作成
IPsec 自動鍵交換時における自動鍵プロポーザル(アルゴリズム、ライフタイム)を作成します。
作成した自動鍵プロポーザルは、自動鍵ポリシーマップ(ipsec autokey-map
)、または自動鍵ダイナミックポリシーマップ(ipsec dynamic-map
)に登録します。
自動鍵プロポーザルはグローバルコンフィグモードにて以下コマンドで設定します。
ipsec autokey-proposal PROPOSAL [ESP-ENCRYPT-ALG] [ESP-HASH-ALG] [AH-HASH-ALG] [lifetime [time SECONDS | both SECONDS BYTES]]
PROPOSAL
:作成する自動鍵プロポーザルの識別名
ESP-ENCRYPT-ALG
:ESP 暗号アルゴリズム。以下から指定- esp-aes
- esp-aes-192
- esp-aes-256
- esp-des
- esp-3des
- esp-null
ESP-HASH-ALG
:ESP 認証アルゴリズム。以下から指定- esp-md5
- esp-sha
- esp-sha2-256
- esp-sha2-384
- esp-sha2-512
AH-HASH-ALG
:AH認証アルゴリズム- ah-md5
- ah-sha
- ah-sha2-256
- ah-sha2-384
- ah-sha2-512
lifetime
:SA 有効期間の設定。time
→ SA 有効時間のみ設定、both
→ SA 有効期間を時間とキロバイトで規制SECONDS
:SA が有効である時間を 300~691,200 秒 から指定BYTES
:SA が有効であるバイト規制を 1,000~4,000,000キロバイトから指定。デフォルト 1,000,000
自動鍵ポリシーマップの作成
自動鍵ポリシーマップはグローバルコンフィグモードにて以下コマンドで設定します。
ipsec autokey-map MAP-NAME ACL-NAME peer PEER-ADDRESS [pfs pfs-value] [esp-level LEVEL] [ah-level LEVEL] [PROPOSAL]
MAP-NAME
:作成する自動鍵ポリシーマップの識別名ACL-NAME
:IPsec 処理を実施するパケットを ACL で指定- トンネルインタフェースに IPsec を設定する場合は通常 src any dest any で設定
- トランスポートモードを使用する場合は、src にリモートルータのアドレスを、dest にリモートルータのアドレスを設定した ACL を指定する
PEER-ADDRESS
:SA を張る相手のアドレスを指定
pfs-value
:PFS(Perfect Forward Secrecy)の有効/無効設定。以下から指定- off(デフォルト)
- 768-bit
- 1024-bit
- 1536-bit
- 2048-bit
esp-level/ah-level
:ESP/AH のセキュリティレベルの設定。LEVEL
部分を以下から指定use
(デフォルト):送信時には IPsec を行う(IKE 起動時、SAがなければ SAを作りにいく)。受信時には IPsec されるパケットもされないパケットも受信するrequire
:送信時には IPsec を行う(IKE 起動時、SAがなければ SAを作りにいく)。受信時には IPsec されていないパケットは受信しない(廃棄)
PROPOSAL
:自動鍵プロポーザル名。省略した場合、自動鍵プロポーザルは以下のデフォルト値になる- SA提案アルゴリズム:esp-des、esp-md5
- ライフタイム:28800秒
ローカル/リモートの IPsec ID の設定
IPsec で接続するローカル及びリモートのネットワークを設定します。
グローバルコンフィグモードにて以下コマンドで設定します。
■ローカル ID の設定コマンド
ipsec local-id MAP-NAME LOCAL-ID
MAP-NAME
:対象の自動鍵ポリシーマップの識別名を指定LOCAL-ID
:ローカル側のネットワークを指定。例:192.168.1.0/24
■リモート ID の設定コマンド
ipsec remote-id MAP-NAME REMOTE-ID
MAP-NAME
:対象の自動鍵ポリシーマップの識別名を指定REMOTE-ID
:リモート側のネットワークを指定。例:10.10.3.0/24
トンネルインターフェースの作成/設定
トンネルインターフェースの作成/設定
interface Tunnel0.0
tunnel mode ipsec
ipsec policy ... #詳細は次項参照
ip address ...
no shutdown
IPsec ポリシーの設定
以下コマンドで IPsec を有効化します。
ipsec policy MODE MAP-NAME [DIRECTION] [df-bit DF-BIT] [pre-fragment]
MODE
:モードを次の2つから選択- tunnel
- transport
MAP-NAME
:以下のいずれかのマップ名を指定- 自動鍵ポリシーマップ名
- 固定鍵ポリシーマップ名
- 自動鍵ダイナミックポリシーマップ名
DIRECTION
:方向を指定- in:LAN 側インタフェースから入ってくるパケットに対して IPsec を適用
- out(デフォルト):WAN 側インタフェースへ出てゆくパケットに対して IPsec を適用
df-bit DF-BIT
:DF ビットの設定を以下からDF-BIT
部分に指定- auto:4-over-4 トンネル時にオリジナルパケットのDF ビットを引き継ぐ
- on:DF ビットをセットする
- off(デフォルト):DF ビットをセットしない
- ignore:オリジナルパケットにDF ビットがセットされていてもフラグメントを行う
pre-fragment
:トンネル時にフラグメント処理を行わなければならない場合に、カプセル化処理を行う前にフラグメントする
その他の設定
ルーティング設定
IPsec VPN 対向側のネットワークへのルートを設定します。
ip route address/prefix Tunnel0.0
各種確認コマンド
■ IKE 関係
show ike proposal
- ike プロポーザルの表示
show ike policy
- IKE ポリシーの表示
show ike sa
- IKE SA の表示
show ike statistics
- IKE 統計情報の表示
■ IPsec 関係
show ipsec autokey-proposal
- 自動鍵プロポーザルの確認
show ipsec autokey-map
- 自動鍵ポリシーの確認
show ipsec policy
- IPsec ポリシーの確認
show ipsec sa
- IKE SA の表示
show ipsec statistics
- ipsec 統計情報の表示
各種操作コマンド
■ IKE 関係
clear ike sa
- IKE SA の削除
clear ike statistics
- IKE 統計カウンタのリセット
■ IPsec 関係
clear ipsec sa
- IPsec SA の削除
clear ipsec statistics
- IPsec 統計カウンタのリセット
IPsec VPN 設定例
ネットワーク構成
■UNIVERGE IX
- 型番:UNIVERGE IX2106
- バージョン:10.2.16
■ 対向ルータ
- 型番:Cisco C891FJ-K9
- バージョン:15.3(3)M5
IPsec VPN 設計
項目 | IKE フェーズ1 | IKE フェーズ2 |
セキュリティプロトコル | – | esp |
暗号化アルゴリズム | 3des | 3des |
ハッシュアルゴリズム | sha1 | – |
認証方式/認証アルゴリズム | pre-share | esp-sha-hmac |
DH/PFS グループ | 1 | 無効 |
ISAKMP/IPsec SA ライフタイム | 86400秒 | 3600秒 |
Pre-shared Key | password | – |
IPsec 通信モード | – | tunnel |
IKE キープアライブ(DPD) | 無効 | – |
IPsec の対象トラフィック | – | 192.168.1.0/24 ⇔ 10.10.3.0/24 |
IKE モード | Main | Quick |
ISAKMP/IPsec のピアアドレス | 200.1.1.1 (200.1.1.2) | 200.1.1.1 (200.1.1.2) |
Cisco ルータの設定
■ Cisco ルータの設定(IPsec VPN 用設定の抜粋)
# IKE ポリシーの設定(IKE フェーズ 1)
crypto isakmp policy 1
authentication pre-share
encryption 3des
group 1
hash sha
lifetime 86400
# 共通鍵の指定 (password) と対向ルータのIPアドレス (200.1.1.1) の設定
crypto isakmp key password address 200.1.1.1
# IPsec トランスフォーム (TF-SET) の設定
crypto ipsec transform-set TF-SET esp-3des esp-sha-hmac
mode tunnel
# IPsec トラフィックの送信元と送信先の定義
ip access-list extended A-ipsec
permit ip 10.10.3.0 0.0.0.255 192.168.1.0 0.0.0.255
# 暗号 MAP の設定(IKEフェーズ2の設定)
crypto map CP-MAP 1 ipsec-isakmp
match address A-ipsec
set peer 200.1.1.1
set transform-set TF-SET
set security-association lifetime seconds 3600
# インタフェースへ IPsec ポリシーを適用
interface fastEthernet0
crypto map CP-MAP
# ルーティング設定
ip route 192.168.1.0 255.255.255.0 200.1.1.1
IX2106 の設定
#IKE 設定(IKE フェーズ1)
ike proposal ike_prop encryption 3des hash sha authentication pre-shared group 768-bit lifetime 86400
ike policy ike_pol peer 200.1.1.2 key-type char key password mode main ike_prop
#IPsec 設定(IKE フェーズ2)
ipsec autokey-proposal ips_prop esp-3des esp-sha lifetime time 3600
ip access-list ips_acl permit ip src any dest any
ipsec autokey-map ips_map ips_acl peer 200.1.1.2 pfs off esp-level use ah-level use ips_prop
ipsec local-id ips_map 192.168.1.0/24
ipsec remote-id ips_map 10.10.3.0/24
interface Tunnel0.0
tunnel mode ipsec
ipsec policy tunnel ips_map out
ip address unnumbered GigaEthernet0.0
no shutdown
#ルーティング設定
ip route 10.10.3.0/24 Tunnel0.0
#インターフェース GigaEthernet0.0 の設定
interface GigaEthernet0.0
ip address 200.1.1.1/30
no shutdown
設定後の状態確認
端末間で通信できることを確認する。また各ルータで下記コマンドの内容を確認する。
IX2106 側での確認
■ show ike sa
Router(config)# show ike sa
ISAKMP SA - 1 configured, 1 created
Local address is 200.1.1.1, port is 500
Remote address is 200.1.1.2, port is 500
IKE policy name is ike_pol
Direction is initiator
Initiator's cookie is 0x25e5a956b82c9639
Responder's cookie is 0xf9059c43859d3693
Exchange type is main mode
State is established
Authentication method is pre-shared
Encryption algorithm is 3des
Hash algorithm is sha1
DH group is modp768, lifetime is 86373 seconds
#ph1 success: 1, #ph1 failure: 0
#ph1 hash err: 0, #ph1 timeout: 0, #ph1 resend: 0
#ph2 success: 2, #ph2 failure: 0
#ph2 hash err: 0, #ph2 timeout: 0, #ph2 resend: 0
確認点:
- State is established
- #ph1 success: 1
- #ph2 success: 2
■ show ipsec sa
Router(config)# show ipsec sa
IPsec SA - 1 configured, 2 created
Interface is Tunnel0.0
Key policy map name is ips_map
Tunnel mode, 4-over-4, autokey-map
Local address is 200.1.1.1
Remote address is 200.1.1.2
Outgoing interface is GigaEthernet0.0
Interface MTU is 1446, path MTU is 1500
Inbound:
ESP, SPI is 0xf2479efa(4064780026)
Transform is ESP-3DES-HMAC-SHA-96
Remaining lifetime is 3245 seconds, lifebyte is 999935324 bytes
Replay detection support is on
Outbound:
ESP, SPI is 0x4f1fe653(1327490643)
Transform is ESP-3DES-HMAC-SHA-96
Remaining lifetime is 3245 seconds, lifebyte is 999921264 bytes
Replay detection support is on
Perfect forward secrecy is off
確認点:
- IPsec SA – 1 configured, 2 created
Cisco 側での確認
■ show crypto isakmp sa
RT#show crypto isakmp sa
IPv4 Crypto ISAKMP SA
dst src state conn-id status
200.1.1.2 200.1.1.1 QM_IDLE 2007 ACTIVE
IPv6 Crypto ISAKMP SA
■ show crypto ipsec sa
RT#show crypto ipsec sa
interface: FastEthernet0
Crypto map tag: CP-MAP, local addr 200.1.1.2
protected vrf: (none)
local ident (addr/mask/prot/port): (10.10.3.0/255.255.255.0/0/0)
remote ident (addr/mask/prot/port): (192.168.1.0/255.255.255.0/0/0)
current_peer 200.1.1.1 port 500
PERMIT, flags={origin_is_acl,}
#pkts encaps: 603, #pkts encrypt: 603, #pkts digest: 603
#pkts decaps: 602, #pkts decrypt: 602, #pkts verify: 602
#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.: 200.1.1.2, remote crypto endpt.: 200.1.1.1
plaintext mtu 1446, path mtu 1500, ip mtu 1500, ip mtu idb FastEthernet0
current outbound spi: 0xF2479EFA(4064780026)
PFS (Y/N): N, DH group: none
inbound esp sas:
spi: 0x4F1FE653(1327490643)
transform: esp-3des esp-sha-hmac ,
in use settings ={Tunnel, }
conn id: 11, flow_id: Onboard VPN:11, sibling_flags 80004040, crypto map: CP-MAP
sa timing: remaining key lifetime (k/sec): (911540/3478)
IV size: 8 bytes
replay detection support: Y
Status: ACTIVE(ACTIVE)
inbound ah sas:
inbound pcp sas:
outbound esp sas:
spi: 0xF2479EFA(4064780026)
transform: esp-3des esp-sha-hmac ,
in use settings ={Tunnel, }
conn id: 12, flow_id: Onboard VPN:12, sibling_flags 80004040, crypto map: CP-MAP
sa timing: remaining key lifetime (k/sec): (911540/3478)
IV size: 8 bytes
replay detection support: Y
Status: ACTIVE(ACTIVE)
outbound ah sas:
outbound pcp sas:
■ show crypto session
RT#show crypto session
Crypto session current status
Interface: FastEthernet0
Session status: UP-ACTIVE
Peer: 200.1.1.1 port 500
Session ID: 0
IKEv1 SA: local 200.1.1.2/500 remote 200.1.1.1/500 Active
IPSEC FLOW: permit ip 10.10.3.0/255.255.255.0 192.168.1.0/255.255.255.0
Active SAs: 2, origin: crypto map
―――――――――――――