FutureNet

NXR,WXRシリーズ

IPsec編

4. Virtual Private Cloud(VPC)設定

4-1. Cloudn Compute(VPCタイプOpenNW)接続設定

「Cloudn Compute(VPCタイプOpenNW)」(以下Cloudn)はNTTコミュニケーションズ社が提供するクラウド上に論理的なプライベートネットワーク(Virtual Private Cloud)を構築し、その中にCloudnの仮想サーバを設置するサービスです。なお、この設定例は弊社独自の検証結果を元に作成しております。よって、Cloudnの仮想ネットワークとの接続を保証するものではありません。
※Cloudn Compute(VPCタイプOpenNW)に関する情報は下記URL をご参照ください。
http://www.ntt.com/cloudn/data/server3.html

 

【 構成図 】

  • この設定例ではNXRでRoute Based IPsec設定を行います。
  • Cloudn側の設定については操作マニュアル等をご参照ください。

 

【 設定データ 】

〔NXRの設定〕

設定項目 設定内容
ホスト名 NXR
LAN側インタフェース ethernet0のIPアドレス 192.168.10.1/24
WAN側インタフェース PPPoEクライアント(ethernet1) ppp0
ppp0のIPアドレス 10.10.10.1/32
IPマスカレード 有効
IPアクセスグループ in ppp0_in
SPIフィルタ 有効
MSS自動調整 オート
IPリダイレクト 無効
ISP接続用ユーザID test1@example.jp
ISP接続用パスワード test1pass
IPsecローカルポリシー 1
スタティックルート No.1 宛先IPアドレス 10.0.0.0/16
ゲートウェイ(インタフェース) tunnel1
ディスタンス 1
No.2 宛先IPアドレス 10.0.0.0/16
ゲートウェイ(インタフェース) null
ディスタンス 254
No.3 宛先IPアドレス 0.0.0.0/0
ゲートウェイ(インタフェース) ppp0
IPフィルタ ルール名 ppp0_in
ppp0_in No.1 動作 許可
送信元IPアドレス any
宛先IPアドレス 10.10.10.1
プロトコル UDP
送信元ポート 500
宛先ポート 500
No.2 動作 許可
送信元IPアドレス any
宛先IPアドレス 10.10.10.1
プロトコル 50(ESP)
IPsec IPsecアクセスリスト リスト名 ipsec_acl
送信元IPアドレス 192.168.10.0/24
宛先IPアドレス 10.0.0.0/16
IPsecローカルポリシー1 address ip
IPsec ISAKMPポリシー1 名前 Cloudn
認証方式 pre-share
認証鍵 ipseckey
認証アルゴリズム sha1
暗号化アルゴリズム aes128
DHグループ 5
ライフタイム 10800秒
ISAKMPモード メインモード
リモートアドレス 10.10.100.1
DPD 再送間隔 30秒
リトライ回数 3回
動作 restart
ローカルポリシー 1
 IPsecトンネルポリシー1 名前 Cloudn
ネゴシエーションモード オート
認証アルゴリズム sha1
暗号化アルゴリズム aes128
PFS 有効(グループ5)
ライフタイム 3600秒
ISAKMPポリシー 1
IPsecアクセスリスト ipsec_acl
トンネル1インタフェース トンネルモード IPsec(IPv4)
トンネルプロテクション ipsec policy 1
MSS自動調整 オート
DNS サービス 有効
FastFowarding 有効

【 設定例 】

〔NXRの設定〕

nxr120#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
nxr120(config)#hostname NXR
NXR(config)#interface ethernet 0
NXR(config-if)#ip address 192.168.10.1/24
NXR(config-if)#exit
NXR(config)#ip route 10.0.0.0/16 tunnel 1 1
NXR(config)#ip route 10.0.0.0/16 null 254
NXR(config)#ip route 0.0.0.0/0 ppp 0
NXR(config)#ip access-list ppp0_in permit any 10.10.10.1 udp 500 500
NXR(config)#ip access-list ppp0_in permit any 10.10.10.1 50
NXR(config)#ipsec access-list ipsec_acl ip 192.168.10.0/24 10.0.0.0/16
NXR(config)#ipsec local policy 1
NXR(config-ipsec-local)#address ip
NXR(config-ipsec-local)#exit
NXR(config)#ipsec isakmp policy 1
NXR(config-ipsec-isakmp)#description Cloudn
NXR(config-ipsec-isakmp)#authentication pre-share ipseckey
NXR(config-ipsec-isakmp)#hash sha1
NXR(config-ipsec-isakmp)#encryption aes128
NXR(config-ipsec-isakmp)#group 5
NXR(config-ipsec-isakmp)#lifetime 10800
NXR(config-ipsec-isakmp)#isakmp-mode main
NXR(config-ipsec-isakmp)#remote address ip 10.10.100.1
NXR(config-ipsec-isakmp)#keepalive 30 3 periodic restart
NXR(config-ipsec-isakmp)#local policy 1
NXR(config-ipsec-isakmp)#exit
NXR(config)#ipsec tunnel policy 1
NXR(config-ipsec-tunnel)#description Cloudn
NXR(config-ipsec-tunnel)#negotiation-mode auto
NXR(config-ipsec-tunnel)#set transform esp-aes128 esp-sha1-hmac
NXR(config-ipsec-tunnel)#set pfs group5
NXR(config-ipsec-tunnel)#set sa lifetime 3600
NXR(config-ipsec-tunnel)#set key-exchange isakmp 1
NXR(config-ipsec-tunnel)#match address ipsec_acl
NXR(config-ipsec-tunnel)#exit
NXR(config)#interface tunnel 1
NXR(config-tunnel)#tunnel mode ipsec ipv4
NXR(config-tunnel)#tunnel protection ipsec policy 1
NXR(config-tunnel)#ip tcp adjust-mss auto
NXR(config-tunnel)#exit
NXR(config)#interface ppp 0
NXR(config-ppp)#ip address 10.10.10.1/32
NXR(config-ppp)#ip masquerade
NXR(config-ppp)#ip access-group in ppp0_in
NXR(config-ppp)#ip spi-filter
NXR(config-ppp)#ip tcp adjust-mss auto
NXR(config-ppp)#no ip redirects
NXR(config-ppp)#ppp username test1@example.jp password test1pass
NXR(config-ppp)#ipsec policy 1
NXR(config-ppp)#exit
NXR(config)#interface ethernet 1
NXR(config-if)#no ip address
NXR(config-if)#pppoe-client ppp 0
NXR(config-if)#exit
NXR(config)#dns
NXR(config-dns)#service enable
NXR(config-dns)#exit
NXR(config)#fast-forwarding enable
NXR(config)#exit
NXR#save config

【 設定例解説 】

〔NXRの設定〕

1. <ホスト名の設定>
nxr120(config)#hostname NXR

ホスト名を設定します。

 

2. <LAN側(ethernet0)インタフェース設定>
NXR(config)#interface ethernet 0
NXR(config-if)#ip address 192.168.10.1/24

ethernet0インタフェースのIPアドレスを設定します。

 

3. <スタティックルート設定>
NXR(config)#ip route 10.0.0.0/16 tunnel 1 1
NXR(config)#ip route 10.0.0.0/16 null 254

CloudnのVPC向けのルートを設定します。なお、IPsec SA確立時はトンネル1インタフェースを、未確立時はnullインタフェースのルートを利用するように設定します。
(☞) nullインタフェースを出力インタフェースとして設定した場合、パケットが出力されることはありません(ドロップされます)。

NXR(config)#ip route 0.0.0.0/0 ppp 0

デフォルトルートを設定します。

 

4. <IPアクセスリスト設定>
NXR(config)#ip access-list ppp0_in permit any 10.10.10.1 udp 500 500
NXR(config)#ip access-list ppp0_in permit any 10.10.10.1 50

IPアクセスリスト名をppp0_inとし、NXRのWAN側IPアドレス10.10.10.1宛のIKEパケット(UDPポート500番)、ESPパケット(プロトコル番号50)を許可します。
なお、このIPアクセスリスト設定はppp0インタフェース設定で登録します。
(☞) IPアクセスリストを設定しただけではフィルタとして有効にはなりません。フィルタリングしたいインタフェースでの登録が必要になります。

 

5. <IPsecアクセスリスト設定>
NXR(config)#ipsec access-list ipsec_acl ip 192.168.10.0/24 10.0.0.0/16

ipsec_aclという名前のIPsecアクセスリストを設定します。なお、送信元IPアドレスは192.168.10.0/24,宛先IPアドレスは10.0.0.0/16とします。
(☞) Route Based IPsecでESP化するか否かはIPsecアクセスリストではなく、トンネルインタフェースをゲートウェイとするルート設定の有無で決まります。よって、Policy Based IPsecではIPsecアクセスリストで設定したルールに基づきIPsecでESP化するかどうかが決定されましたが、Route Based IPsecではIPsecアクセスリストをIKEフェーズ2のIDとしてのみ使用します。

 

6. <IPsecローカルポリシー設定>
NXR(config)#ipsec local policy 1
NXR(config-ipsec-local)#address ip

IPsecトンネルの送信元IPアドレスをip(IPv4)と設定します。

 

7. <IPsec ISAKMPポリシー設定>
NXR(config)#ipsec isakmp policy 1
NXR(config-ipsec-isakmp)#description Cloudn
NXR(config-ipsec-isakmp)#authentication pre-share ipseckey

ISAKMPポリシーの説明としてCloudn、認証方式としてpre-share(事前共有鍵)を選択し事前共有鍵ipseckeyを設定します。なお、事前共有鍵はCloudnと共通の値を設定します。

NXR(config-ipsec-isakmp)#hash sha1
NXR(config-ipsec-isakmp)#encryption aes128
NXR(config-ipsec-isakmp)#group 5
NXR(config-ipsec-isakmp)#lifetime 10800
NXR(config-ipsec-isakmp)#isakmp-mode main

認証アルゴリズムとしてsha1、暗号化アルゴリズムとしてaes128,Diffie-Hellman(DH)グループとしてgroup 5、ISAKMP SAのライフタイムとして10800秒、フェーズ1のネゴシエーションモードとしてメインモードを設定します。

NXR(config-ipsec-isakmp)#remote address ip 10.10.100.1
NXR(config-ipsec-isakmp)#keepalive 30 3 periodic restart
NXR(config-ipsec-isakmp)#local policy 1

リモートアドレスにCloudnのWAN側IPアドレスを設定します。また、IKE KeepAlive(DPD)を監視間隔30秒,リトライ回数3回としkeepalive失敗時にSAを削除しIKEのネゴシエーションを開始するよう設定します。そして、IPsecローカルポリシー1と関連づけを行います。

 

8. <IPsec トンネルポリシー設定>
NXR(config)#ipsec tunnel policy 1
NXR(config-ipsec-tunnel)#description Cloudn
NXR(config-ipsec-tunnel)#negotiation-mode auto

IPsecトンネルポリシーの説明としてCloudn、ネゴシエーションモードとしてautoを設定します。

NXR(config-ipsec-tunnel)#set transform esp-aes128 esp-sha1-hmac
NXR(config-ipsec-tunnel)#set pfs group5
NXR(config-ipsec-tunnel)#set sa lifetime 3600

暗号化アルゴリズムとしてaes128、認証アルゴリズムとしてsha1、PFSを有効にし、かつDHグループとしてgroup5、IPsec SAのライフタイムとして3600秒を設定します。

NXR(config-ipsec-tunnel)#set key-exchange isakmp 1
NXR(config-ipsec-tunnel)#match address ipsec_acl

ISAKMPポリシー1と関連づけを行い、IPsecアクセスリストipsec_aclを設定します。

 

9. <トンネル1インタフェース設定>
NXR(config)#interface tunnel 1
NXR(config-tunnel)#tunnel mode ipsec ipv4
NXR(config-tunnel)#tunnel protection ipsec policy 1
NXR(config-tunnel)#ip tcp adjust-mss auto

トンネル1インタフェースでトンネルモードをipsec ipv4、使用するトンネルポリシーとして1を設定します。また、TCPMSS値をオートに設定します。

 

10. <WAN側(ppp0)インタフェース設定>
NXR(config)#interface ppp 0
NXR(config-ppp)#ip address 10.10.10.1/32

ppp0インタフェースのIPアドレスを設定します。

NXR(config-ppp)#ip masquerade
NXR(config-ppp)#ip access-group in ppp0_in
NXR(config-ppp)#ip spi-filter
NXR(config-ppp)#ip tcp adjust-mss auto
NXR(config-ppp)#no ip redirects

IPマスカレード、ステートフルパケットインスペクションを有効に設定します。また、IPアクセスリストppp0_inをinフィルタに適用します。そして、TCP MSSの調整機能をオート、ICMPリダイレクト機能を無効に設定します。

NXR(config-ppp)#ppp username test1@example.jp password test1pass
NXR(config-ppp)#ipsec policy 1

ISP接続用ユーザIDとパスワードを設定します。また、IPsecトンネルのエンドポイントとなるためIPsecローカルポリシー1を設定します。

 

11. <ethernet1インタフェース設定>
NXR(config)#interface ethernet 1
NXR(config-if)#no ip address
NXR(config-if)#pppoe-client ppp 0

PPPoEクライアントとしてppp0インタフェースを使用できるように設定します。

 

12. <DNS設定>
NXR(config)#dns
NXR(config-dns)#service enable

DNSサービスを有効にします。

 

13. <ファストフォワーディングの有効化>
NXR(config)#fast-forwarding enable

ファストフォワーディングを有効にします。ファストフォワーディングを設定することによりパケット転送の高速化を行うことができます。
(☞) ファストフォワーディングの詳細および利用時の制約については、NXR,WXRシリーズのユーザーズガイド(CLI版)に記載されているファストフォワーディングの解説をご参照ください。

 

【 端末の設定例 】

LAN_Aの端末
IPアドレス 192.168.10.100
サブネットマスク 255.255.255.0
デフォルトゲートウェイ 192.168.10.1
DNSサーバ