FutureNet

NXR,WXRシリーズ

VXRシリーズ編

5. VXR-x64(AWS)IPsec接続設定

5-1. VXR-x64(AWS)IPsec接続設定(IPv4)

Amazon Web Services(以下AWS)上でセットアップしたVXR-x64でNXRシリーズとIPsec接続を行う設定例です。固定IPアドレス環境だけでなく、動的IPアドレスを持つルータからのIPsec接続も可能です。

※Amazon Web Services、“Powered by Amazon Web Services”ロゴ、およびかかる資料で使用されるその他のAWS商標は、米国その他の諸国における、Amazon.com, Inc.またはその関連会社の商標です。

 

コンテンツ
構成図 設定例 設定例解説 端末の設定例 補足 付録

 

【 構成図 】

  • AWS側のセキュリティグループで、IPsec用に以下のインバウンドルールを追加します。
    ※VXR-x64へのSSHアクセス用ルール等はすでに作成済みとします。

    タイプ プロトコル ポート範囲 ソース
    カスタムUDPルール UDP 500 0.0.0.0/0
    カスタムUDPルール UDP 4500 0.0.0.0/0

 

【 設定例 】

〔VXR-x64の設定〕

vxr-x64#configure terminal
vxr-x64(config)#hostname VXR
VXR(config)#interface ethernet 1
VXR(config-if)#ip address 10.0.1.254/24
VXR(config-if)#exit
VXR(config)#ip route 192.168.10.0/24 tunnel 1 1
VXR(config)#ip route 192.168.10.0/24 null 254
VXR(config)#ipsec nat-traversal enable
VXR(config)#ipsec access-list ipsec_acl ip any any
VXR(config)#ipsec local policy 1
VXR(config-ipsec-local)#address ip
VXR(config-ipsec-local)#self-identity fqdn vxr
VXR(config-ipsec-local)#exit
VXR(config)#ipsec isakmp policy 1
VXR(config-ipsec-isakmp)#description NXR
VXR(config-ipsec-isakmp)#authentication pre-share ipseckey
VXR(config-ipsec-isakmp)#hash sha256
VXR(config-ipsec-isakmp)#encryption aes128
VXR(config-ipsec-isakmp)#group 5
VXR(config-ipsec-isakmp)#lifetime 86400
VXR(config-ipsec-isakmp)#isakmp-mode aggressive
VXR(config-ipsec-isakmp)#remote address ip any
VXR(config-ipsec-isakmp)#remote identity fqdn nxr
VXR(config-ipsec-isakmp)#keepalive 30 3 periodic clear
VXR(config-ipsec-isakmp)#local policy 1
VXR(config-ipsec-isakmp)#exit
VXR(config)#interface tunnel 1
VXR(config-tunnel)#tunnel mode ipsec ipv4
VXR(config-tunnel)#tunnel protection ipsec policy 1
VXR(config-tunnel)#ip tcp adjust-mss auto
VXR(config-tunnel)#exit
VXR(config)#ipsec tunnel policy 1
VXR(config-ipsec-tunnel)#description NXR
VXR(config-ipsec-tunnel)#negotiation-mode responder
VXR(config-ipsec-tunnel)#set transform esp-aes128 esp-sha256-hmac
VXR(config-ipsec-tunnel)#set pfs group5
VXR(config-ipsec-tunnel)#set sa lifetime 28800
VXR(config-ipsec-tunnel)#set key-exchange isakmp 1
VXR(config-ipsec-tunnel)#match address ipsec_acl
VXR(config-ipsec-tunnel)#exit
VXR(config)#interface ethernet 0
VXR(config-if)#ip masquerade
VXR(config-if)#ipsec policy 1
VXR(config-if)#exit
VXR(config)#dns
VXR(config-dns)#service enable
VXR(config-dns)#exit
VXR(config)#fast-forwarding enable
VXR(config)#exit
VXR#save config

 

〔NXRの設定〕

nxrg110#configure terminal
nxrg110(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.1.0/24 tunnel 1 1
NXR(config)#ip route 10.0.1.0/24 null 254
NXR(config)#ip access-list wwan0_in permit 203.0.113.1 any udp any 500
NXR(config)#ip access-list wwan0_in permit 203.0.113.1 any udp any 4500
NXR(config)#ipsec nat-traversal enable
NXR(config)#ipsec access-list ipsec_acl ip any any
NXR(config)#ipsec local policy 1
NXR(config-ipsec-local)#address ip
NXR(config-ipsec-local)#self-identity fqdn nxr
NXR(config-ipsec-local)#exit
NXR(config)#ipsec isakmp policy 1
NXR(config-ipsec-isakmp)#description VXR
NXR(config-ipsec-isakmp)#authentication pre-share ipseckey
NXR(config-ipsec-isakmp)#hash sha256
NXR(config-ipsec-isakmp)#encryption aes128
NXR(config-ipsec-isakmp)#group 5
NXR(config-ipsec-isakmp)#lifetime 86400
NXR(config-ipsec-isakmp)#isakmp-mode aggressive
NXR(config-ipsec-isakmp)#remote address ip 203.0.113.1
NXR(config-ipsec-isakmp)#remote identity fqdn vxr
NXR(config-ipsec-isakmp)#keepalive 30 3 periodic restart
NXR(config-ipsec-isakmp)#local policy 1
NXR(config-ipsec-isakmp)#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)#ipsec tunnel policy 1
NXR(config-ipsec-tunnel)#description VXR
NXR(config-ipsec-tunnel)#negotiation-mode auto
NXR(config-ipsec-tunnel)#set transform esp-aes128 esp-sha256-hmac
NXR(config-ipsec-tunnel)#set pfs group5
NXR(config-ipsec-tunnel)#set sa lifetime 28800
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 wwan 0
NXR(config-wwan)#ip masquerade
NXR(config-wwan)#ip spi-filter
NXR(config-wwan)#ip access-group in wwan0_in
NXR(config-wwan)#ip tcp adjust-mss auto
NXR(config-wwan)#wwan username [WWAN接続用ユーザID] password [WWAN接続用パスワード]
NXR(config-wwan)#wwan authentication chap
NXR(config-wwan)#mobile apn [APN] cid 1 pdp-type ip
NXR(config-wwan)#ipsec policy 1
NXR(config-wwan)#exit
NXR(config)#mobile error-recovery-reset
NXR(config)#mobile 1 carrier [キャリア]
NXR(config)#exit
NXR#clear mobile 1
NXR#configure terminal
NXR(config)#dns
NXR(config-dns)#service enable
NXR(config-dns)#exit
NXR(config)#exit
NXR#save config

 

【 設定例解説 】

〔VXR-x64の設定〕

1. <ホスト名の設定>
vxr-x64(config)#hostname VXR

ホスト名を設定します。

 

2. <LAN側(ethernet1)インタフェース設定>
VXR(config)#interface ethernet 1
VXR(config-if)#ip address 10.0.1.254/24

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

 

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

192.168.10.0/24向けのルートを設定します。
(☞) IPsec SA確立時はトンネル1インタフェースを、未確立時はnullインタフェースのルートを利用するように設定します。

 

4. <IPsec NATトラバーサル設定>
VXR(config)#ipsec nat-traversal enable

NATトラバーサルを有効にします。

 

5. <IPsecアクセスリスト設定>
VXR(config)#ipsec access-list ipsec_acl ip any any

送信元IPアドレス,宛先IPアドレスともにanyのIPsecアクセスリストipsec_aclを設定します。

 

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

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

VXR(config-ipsec-local)#self-identity fqdn vxr

セルフID(FQDN方式)を設定します。
(☞) NXRのIPsec ISAKMPポリシー1のリモートIDと同じIDを設定します。

 

7. <IPsec ISAKMPポリシー設定>
VXR(config)#ipsec isakmp policy 1
VXR(config-ipsec-isakmp)#description NXR

ISAKMPポリシー1の説明文を設定します。

VXR(config-ipsec-isakmp)#authentication pre-share ipseckey

認証方式としてpre-share(事前共有鍵)を選択し、事前共有鍵を設定します。
(☞) 事前共有鍵はNXRのipsec isakmp policy 1と共通の値を設定します。

VXR(config-ipsec-isakmp)#hash sha256

認証アルゴリズムをsha256に設定します。

VXR(config-ipsec-isakmp)#encryption aes128

暗号化アルゴリズムをaes128に設定します。

VXR(config-ipsec-isakmp)#group 5

DH(Diffie-Hellman)グループをgroup 5に設定します。

VXR(config-ipsec-isakmp)#lifetime 86400

ISAKMP SAのライフタイムを設定します。

VXR(config-ipsec-isakmp)#isakmp-mode aggressive

フェーズ1のネゴシエーションモードをアグレッシブモードに設定します。

VXR(config-ipsec-isakmp)#remote address ip any

リモートアドレスにanyを設定します。

VXR(config-ipsec-isakmp)#remote identity fqdn nxr

リモートID(FQDN方式)を設定します。
(☞) NXRのセルフIDと同じIDを設定します。

VXR(config-ipsec-isakmp)#keepalive 30 3 periodic clear

IKE KeepAlive(DPD)を監視間隔30秒、リトライ回数3回、keepalive失敗時にSAを削除するように設定します。

VXR(config-ipsec-isakmp)#local policy 1

このIPsec ISAKMPポリシーで使用するIPsecローカルポリシーを設定します。

 

8. <トンネル1インタフェース設定>
VXR(config)#interface tunnel 1
VXR(config-tunnel)#tunnel mode ipsec ipv4

トンネル1インタフェースのトンネルモードをipsec ipv4に設定します。

VXR(config-tunnel)#tunnel protection ipsec policy 1

このトンネルインタフェースで使用するIPsecトンネルポリシーを設定します。

VXR(config-tunnel)#ip tcp adjust-mss auto

TCP MSSの調整機能をオートに設定します。

 

9. <IPsec トンネルポリシー設定>
VXR(config)#ipsec tunnel policy 1
VXR(config-ipsec-tunnel)#description NXR

IPsecトンネルポリシー1の説明文を設定します。

VXR(config-ipsec-tunnel)#negotiation-mode responder

ネゴシエーションモードをresponderに設定します。

VXR(config-ipsec-tunnel)#set transform esp-aes128 esp-sha256-hmac

暗号化アルゴリズムをaes128、認証アルゴリズムをsha256に設定します。

VXR(config-ipsec-tunnel)#set pfs group5

PFSを有効、DHグループをgroup5に設定します。

VXR(config-ipsec-tunnel)#set sa lifetime 28800

IPsec SAのライフタイムを設定します。

VXR(config-ipsec-tunnel)#set key-exchange isakmp 1

このIPsecトンネルポリシーで使用するIPsec ISAKMPポリシーを設定します。

VXR(config-ipsec-tunnel)#match address ipsec_acl

IPsecアクセスリストを設定します。

 

10. <WAN側(ethernet0)インタフェース設定>
VXR(config)#interface ethernet 0
VXR(config-if)#ip masquerade

IPマスカレードを有効にします。

VXR(config-if)#ipsec policy 1

このインタフェースで使用するIPsecローカルポリシーを設定します。

 

11. <DNS設定>
VXR(config)#dns
VXR(config-dns)#service enable

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

 

12. <ファストフォワーディング設定>
VXR(config)#fast-forwarding enable

ファストフォワーディングを有効にします。

 

13. <設定の保存>
VXR#save config

設定内容を保存します。

 

〔NXRの設定〕

1. <ホスト名の設定>
nxrg110(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.1.0/24 tunnel 1 1
NXR(config)#ip route 10.0.1.0/24 null 254

10.0.1.0/24向けのルートを設定します。

 

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

IPアクセスリストwwan0_inを以下のルールで設定します。

  • 送信元IPアドレス203.0.113.1、宛先UDPポート500番を許可
  • 送信元IPアドレス203.0.113.1、宛先UDPポート4500番を許可

 

5. <IPsec NATトラバーサル設定>
NXR(config)#ipsec nat-traversal enable

NATトラバーサルを有効にします。

 

6. <IPsecアクセスリスト設定>
NXR(config)#ipsec access-list ipsec_acl ip any any

送信元,宛先IPアドレスともにanyのIPsecアクセスリストipsec_aclを設定します。

 

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

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

NXR(config-ipsec-local)#self-identity fqdn nxr

セルフID(FQDN方式)を設定します。
(☞) VXR-x64のIPsec ISAKMPポリシー1のリモートIDと同じIDを設定します。

 

8. <IPsec ISAKMPポリシー設定>
NXR(config)#ipsec isakmp policy 1
NXR(config-ipsec-isakmp)#description VXR

ISAKMPポリシー1の説明文を設定します。

NXR(config-ipsec-isakmp)#authentication pre-share ipseckey

認証方式にpre-share(事前共有鍵)を選択し、事前共有鍵を設定します。
(☞) 事前共有鍵はVXR-x64のipsec isakmp policy 1と共通の値を設定します。

NXR(config-ipsec-isakmp)#hash sha256

認証アルゴリズムをsha256に設定します。

NXR(config-ipsec-isakmp)#encryption aes128

暗号化アルゴリズムをaes128に設定します。

NXR(config-ipsec-isakmp)#group 5

DHグループをgroup 5に設定します。

NXR(config-ipsec-isakmp)#lifetime 86400

ISAKMP SAのライフタイムを設定します。

NXR(config-ipsec-isakmp)#isakmp-mode aggressive

フェーズ1のネゴシエーションモードをアグレッシブモードに設定します。

NXR(config-ipsec-isakmp)#remote address ip 203.0.113.1

リモートアドレスにVXR-x64のElastic IPアドレスを設定します。

NXR(config-ipsec-isakmp)#remote identity fqdn vxr

リモートID(FQDN方式)を設定します。
(☞) VXR-x64のセルフIDと同じIDを設定します。

NXR(config-ipsec-isakmp)#keepalive 30 3 periodic restart

IKE KeepAlive(DPD)を監視間隔30秒、リトライ回数3回、keepalive失敗時にSAを削除しIKEのネゴシエーションを開始するように設定します。

NXR(config-ipsec-isakmp)#local policy 1

このIPsec ISAKMPポリシーで使用するIPsecローカルポリシーを設定します。

 

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

トンネル1インタフェースのトンネルモードをipsec ipv4に設定します。

NXR(config-tunnel)#tunnel protection ipsec policy 1

このトンネルインタフェースで使用するIPsecトンネルポリシーを設定します。

NXR(config-tunnel)#ip tcp adjust-mss auto

TCP MSSの調整機能をオートに設定します。

 

10. <IPsec トンネルポリシー設定>
NXR(config)#ipsec tunnel policy 1
NXR(config-ipsec-tunnel)#description VXR

IPsecトンネルポリシー1の説明文を設定します。

NXR(config-ipsec-tunnel)#negotiation-mode auto

ネゴシエーションモードをautoに設定します。

NXR(config-ipsec-tunnel)#set transform esp-aes128 esp-sha256-hmac

暗号化アルゴリズムをaes128、認証アルゴリズムをsha256に設定します。

NXR(config-ipsec-tunnel)#set pfs group5

PFSを有効、DHグループをgroup5に設定します。

NXR(config-ipsec-tunnel)#set sa lifetime 28800

IPsec SAのライフタイムを設定します。

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

このIPsecトンネルポリシーで使用するIPsec ISAKMPポリシーを設定します。

NXR(config-ipsec-tunnel)#match address ipsec_acl

IPsecアクセスリストを設定します。

 

11. <WAN側(wwan0)インタフェース設定>
NXR(config)#interface wwan 0

wwan0インタフェースを設定します。
(☞) wwan0インタフェースはデフォルトでDHCPクライアントが設定されています。

NXR(config-wwan)#ip masquerade
NXR(config-wwan)#ip spi-filter

IPマスカレード、ステートフルパケットインスペクションを有効にします。

NXR(config-wwan)#ip access-group in wwan0_in

IPアクセスグループのinフィルタにIPアクセスリストwwan0_inを設定します。

NXR(config-wwan)#ip tcp adjust-mss auto

TCP MSSの調整機能をオートに設定します。

NXR(config-wwan)#wwan username [WWAN接続用ユーザID] password [WWAN接続用パスワード]

WWAN接続用ユーザID,パスワードを設定します。

NXR(config-wwan)#wwan authentication chap

WWAN接続用の認証方式を設定します。

NXR(config-wwan)#mobile apn [APN] cid 1 pdp-type ip

APN,CID,PDPタイプを設定します。

NXR(config-wwan)#ipsec policy 1

このインタフェースで使用するIPsecローカルポリシーを設定します。

 

12. <モバイルエラーリカバリー設定>
NXR(config)#mobile error-recovery-reset

通信モジュールとの通信に重大な問題が発生する可能性が高いと判断した場合、通信モジュールのリセットを行うように設定します。

 

13. <モバイルキャリア設定>
NXR(config)#mobile 1 carrier [キャリア]

mobile1(内蔵通信モジュール)のキャリアを設定します。
(☞) キャリア設定は「clear mobile 1」コマンドによるモバイルリセットを行うことで反映されます。

 

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

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

 

15. <設定の保存>
NXR#save config

設定内容を保存します。

 

【 端末の設定例 】

192.168.10.0/24
IPアドレス 192.168.10.100
サブネットマスク 255.255.255.0
デフォルトゲートウェイ 192.168.10.1
DNSサーバアドレス

 

【 補足 】

forbidden-access-wan機能が有効になっている場合、Route Based IPsec経由でルータにアクセスすることはできません。アクセスするためにはトンネルインタフェースでアクセスを許可するフィルタを設定します。

ここではNXRのTELNETサーバ,HTTPサーバへのアクセスを許可する設定例を紹介します。

(☞) 工場出荷状態では、ethernet0インタフェース以外からのTELNETサーバ,HTTPサーバへのアクセス禁止が有効になっています。

<IPアクセスリスト設定>
(config)#ip access-list tunnel1_in permit 10.0.1.0/24 192.168.10.1 tcp any 23
(config)#ip access-list tunnel1_in permit 10.0.1.0/24 192.168.10.1 tcp any 880

IPアクセスリストtunnel1_inを以下のルールで設定します。

  • 送信元IPアドレス10.0.1.0/24、宛先IPアドレス192.168.10.1、宛先TCPポート23番を許可
  • 送信元IPアドレス10.0.1.0/24、宛先IPアドレス192.168.10.1、宛先TCPポート880番を許可

(☞) IPアクセスリストを設定しただけではフィルタとして有効にはなりません。フィルタリングを行うインタフェースでの登録が必要になります。

 

<トンネル1インタフェース設定>
(config)#interface tunnel1
(config-tunnel)#ip access-group in tunnel1_in

IPアクセスグループのinフィルタにIPアクセスリストtunnel1_inを設定します。

 

【 付録 】