IPsec(Internet Protocol Security)は、インターネット上でのデータ通信のセキュリティを提供するためのプロトコルです。特にVPN(仮想プライベートネットワーク)の実装でよく使用されます。Ciscoのルーター間でIPsecを設定することで、安全にデータを転送し、インターネット上での通信を保護できます。本記事では、2つのCiscoルーター間でIPsecトンネルを設定する手順を完全かつ包括的に解説します。
1. IPsecの基本的な理解
IPsecは、データパケットの暗号化と認証を行うためのプロトコルであり、主に以下の2つのモードで機能します:

- トランスポートモード:IPヘッダーの一部を暗号化し、ペイロードのみを保護します。通常、ホスト間の通信で使用されます。
- トンネルモード:データパケット全体を暗号化し、新しいIPヘッダーを追加します。ルーター間の通信やゲートウェイ間でよく使用されます。
ここでは、2つのCiscoルーター間でトンネルモードのIPsecを設定する方法を説明します。
2. 必要な条件
- 2台のCiscoルーター(例えば、R1とR2)が必要です。
- 両方のルーターに管理者権限でアクセスできること。
- それぞれのルーターにIPアドレスが設定されていること。
- IPsec VPNトンネルを通すための基本的なネットワーク接続が確立されていること。
3. IPsec設定の前提条件
IPsec VPNを設定するには、いくつかの要素が必要です:
- IKE(Internet Key Exchange):セキュアな接続を確立するために使用されます。IKEのバージョンとして、IKEv1またはIKEv2を選択できます。IKEは、認証と暗号化のために必要な共有キーを交換します。
- 暗号化アルゴリズム:データを暗号化するために使用されるアルゴリズム(例:AES、3DESなど)。
- ハッシュアルゴリズム:データの整合性を確認するために使用されるアルゴリズム(例:SHA、MD5など)。
- 認証方法:双方のルーターが通信相手を認証するために使用する方法(例:プリシェアードキー(PSK)または証明書認証)。
4. Ciscoルーターの設定手順
4.1. IKEポリシーの設定
IKEはIPsecの基盤となる部分です。まず、IKEポリシーを設定して、暗号化方式、認証方法、ハッシュアルゴリズム、ライフタイムなどを指定します。
R1の設定:
plaintextR1(config)# crypto isakmp policy 10 R1(config-isakmp)# encryption aes 256 R1(config-isakmp)# hash sha R1(config-isakmp)# authentication pre-share R1(config-isakmp)# group 2 R1(config-isakmp)# lifetime 86400
R2の設定:
plaintextR2(config)# crypto isakmp policy 10 R2(config-isakmp)# encryption aes 256 R2(config-isakmp)# hash sha R2(config-isakmp)# authentication pre-share R2(config-isakmp)# group 2 R2(config-isakmp)# lifetime 86400
4.2. プリシェアードキーの設定
IKEで使用するプリシェアードキー(PSK)を設定します。このキーは、両方のルーターで一致する必要があります。
R1の設定:
plaintextR1(config)# crypto isakmp key cisco123 address 192.168.1.2
R2の設定:
plaintextR2(config)# crypto isakmp key cisco123 address 192.168.1.1
4.3. IPsecトンネルの設定
次に、IPsecトンネルを設定します。IPsecトンネルは、送信されるデータを暗号化し、安全に転送します。
R1の設定:
plaintextR1(config)# crypto ipsec transform-set ESP-AES256-SHA esp-aes 256 esp-sha-hmac R1(config)# crypto ipsec profile MY-IPSEC-PROFILE R1(config-ipsec-profile)# set transform-set ESP-AES256-SHA
R2の設定:
plaintextR2(config)# crypto ipsec transform-set ESP-AES256-SHA esp-aes 256 esp-sha-hmac R2(config)# crypto ipsec profile MY-IPSEC-PROFILE R2(config-ipsec-profile)# set transform-set ESP-AES256-SHA
4.4. トンネルインターフェースの設定
次に、トンネルインターフェースを作成し、トンネルの開始点として設定します。
R1の設定:
plaintextR1(config)# interface Tunnel0 R1(config-if)# ip address 10.1.1.1 255.255.255.252 R1(config-if)# tunnel source 192.168.1.1 R1(config-if)# tunnel destination 192.168.1.2 R1(config-if)# ip mtu 1400 R1(config-if)# ip tcp adjust-mss 1360
R2の設定:
plaintextR2(config)# interface Tunnel0 R2(config-if)# ip address 10.1.1.2 255.255.255.252 R2(config-if)# tunnel source 192.168.1.2 R2(config-if)# tunnel destination 192.168.1.1 R2(config-if)# ip mtu 1400 R2(config-if)# ip tcp adjust-mss 1360
4.5. ルーティングの設定
IPsecトンネルを通じて通信できるように、ルーティングを設定します。静的ルーティングまたは動的ルーティング(例:OSPF、EIGRP)を使用できます。
R1の設定(静的ルートの場合):
plaintextR1(config)# ip route 10.1.1.2 255.255.255.252 Tunnel0
R2の設定(静的ルートの場合):
plaintextR2(config)# ip route 10.1.1.1 255.255.255.252 Tunnel0
5. 設定の検証
IPsecトンネルが正しく設定されたかを確認するために、以下のコマンドを実行してトンネルのステータスを確認します。
R1での確認:
plaintextR1# show crypto isakmp sa R1# show crypto ipsec sa
R2での確認:
plaintextR2# show crypto isakmp sa R2# show crypto ipsec sa
両方のルーターでトンネルのステータスが「up」と表示されれば、設定が正しく行われたことを意味します。
6. トラブルシューティング
もしトンネルが「down」のままである場合、以下の点を確認します:
- ルーターの間のネットワーク接続が正常か。
- プリシェアードキーが正しく設定されているか。
- 暗号化アルゴリズムやハッシュアルゴリズムが一致しているか。
- ルーティングが正しく設定されているか。
結論
これで、Ciscoルーター間でのIPsecトンネルの設定が完了しました。この設定により、安全で暗号化されたデータ通信が可能となります。IPsecを使用することで、企業や組織はインターネット上でのデータ通信のセキュリティを大幅に向上させることができます。