2015-02-06 05:39 PM 2017-08-30 05:26 AM 更新
はじめに、本ドキュメントの最終的な目的は、インターネットのような公衆網を経由して、遠隔地にある拠点と個人間で、高度に暗号化されたセキュアな通信が行える環境を構築することです。この目的を達成するための技術として、IPsecベースのリモートアクセスVPNを導入したネットワークの構築法を紹介していきます。
リモートアクセスVPNでは、VPNコンセントレータとVPNクライアントソフトウェアが必要となりますが、Ciscoサービス統合型ルータは、VPNコンセントレータとして動作することが可能です。
Cisco Systemsはかつて「Cisco VPN Client」というVPNクライアントソフトウェアを提供していましたが、2014年7月30日にソフトウェアのダウンロードと障害解析部門のサポート受付が終了したため、現在は入手することができません。そのため、本ドキュメントでは、IPsecベースで動作するVPNクライアントソフトウェアとして、Shrew Soft VPN Clientを使用します。
Shrew Soft VPN ClientとはWindowsおよびLinux・BSD向けに提供されているIPsecベースのリモートアクセスVPNクライアントソフトウェアです。Shrew Soft VPN ClientにはStandard EditionとProfessional Editionの2つのパッケージがあります。Professional Editionは有料ですが、Standard Editionは無料で利用することができ、試用期間の制限などもありません。
VPNクライアントソフトウェアにShrew Soft VPN Client Standard Edition(version 2.2.2)、VPNコンセントレータにCisco1841サービス統合型ルータ(version 15.0)を使用した以下のトポロジを例に、リモートアクセスVPNを張った際のShrew Soft VPN ClientおよびCisco1841サービス統合型ルータの設定例を記載いたします。
①Windows PC --- VPNクライアントです。IPアドレス12.12.12.2/24が割り振られています。
②C1841(R1) --- インターネット上にあるルータに見立てています。
③C1841(R2) --- C1841をVPNコンセントレータとして使用します。
④Server --- アクセス対象のサーバです。
VPNの接続が確立すると、①から③までの通信が暗号化され、VPNクライアントであるWindows PCが外部のサイトに設置されたローカルサーバにアクセスできるようになります。
Cisco1841サービス統合型ルータでは、VPNコンセントレータの機能を以下のコマンドで実装することができます。なお、ここではCisco EzVPNの概念に基づいて設定を行っています。
AAAの設定
AAAを有効化し、AAA認証コマンド・AAA認可コマンドによりログイン認証とサービスの制限を設定します。
aaa new-model aaa authentication login AUTH local aaa authorization network NET local
VPNクライアントの認証用ユーザ名・パスワード
VPNクライアントの認証用ユーザ名とパスワードの設定を行います。
username cisco password 0 cisco
ISAKMPポリシー
ISAKMP SAを確立するための、ISAKMPポリシーを設定します。
パラメータ(ポリシー)をデフォルトから追加で定義しています。
・暗号化アルゴリズム---------------------- DES → AES
・ピア認証の方式--------------------------- RSA署名 → Pre-Share
・Diffie-Hellmanグループ-----------------グループ1 → グループ2
・ISAKMP SAのライフタイム-------------86400秒 → 3600秒
crypto isakmp policy 1 encryption aes hash sha authentication pre-share group 2 lifetime 3600
グループポリシー
リモートクライアントにダウンロードされるアトリビュートを含むグループポリシーを作成します。
crypto isakmp client configuration group RA key cisco domain cisco.com pool POOL acl split save-password netmask 255.255.255.0
ISAKMPプロファイルの設定
VPNクライアント接続のためのプロファイルの設定を行います。ここでAAA認証とAAA認可の設定の紐付けを行います。
crypto isakmp profile test match identity group RA client authentication list AUTH isakmp authorization list NET client configuration address respond client configuration group RA virtual-template 1
IPsecトランスフォームセットおよびプロトコル
IPsec SAを確立するために必要な、IPsecトランスフォームセットを設定します。
crypto ipsec transform-set test esp-aes esp-sha-hmac mode tunnel
IKEキープアライブ
必須の設定ではありませんが、このコマンドによりIPsecトンネルの通信断をリアルタイムに検出することができるようになり、デッドピアが早期に検知されます。
crypto isakmp keepalive 10
IPsecプロファイルの作成
IPsecポリシーをIPsecプロファイルに紐付けます。
crypto ipsec profile ipsecprof set transform-set test set isakmp-profile test
インタフェース
IPsec仮想トンネルインタフェースの設定を行います。
late1 type tunnel ip unnumbered Serial0/0 tunnel source Serial0/0 tunnel mode ipsec ipv4 tunnel protection ipsec profile ipsecprof
アクセスリスト
スプリットトンネル用のアクセスリストを定義します。
ip access-list extended split permit ip 192.168.12.0 0.0.0.255 any
アドレスプール
クライアントは10.0.0.1~254のアドレスプールからプライベートアドレスが割り振られます。
ip local pool POOL 10.0.0.1 10.0.0.254
Shrew Soft VPN Clientではクライアントの構成を平易に行うことができます。Access Managerのアプリケーションを開き、新しいサイトの構成を作成し、次のタブで以下の設定を行います。
[General]タブ
Host Name or IP Addressには、VPN接続が確立した際にVPNクライアントのゲートウェイになる、R2のSerial0/0/0のIPアドレス13.13.13.2(ホスト名でルータにアクセスする環境ではホスト名)を入力します。
[Authentication]タブ
認証方式がVPNコンセントレータと一致するよう、Authentication MethodにMutual PSK+XAuthを選択し、VPNコンセントレータに設定したグループポリシー名「RA」をKey ID Stringに入力します。
IPアドレスをVPNコンセントレータから取得するように設定します。Identitication TypeにIP Addressを選択し、Use a discovered remote host addressをチェックしてください。
VPNコンセントレータに設定されている事前共有鍵「cisco」を、Pre Shared Keyに入力します。
[Phase1]タブ
ISAKMP SAを確立するための設定を、VPNコンセントレータと一致させる必要があるため、次のパラメータを変更してください。
Cipher Algorithmにaesを選択
Hash Algorithmにsha1を選択
[Phase2]タブ
IPsec SAを確立するための設定を、VPNコンセントレータと一致させる必要があるため、次のパラメータを変更してください。
Transform Algorithmにesp-aesを選択
HMAC Algorithmにsha1を選択
[Policy]タブ
スプリットトンネルを有効化するには、接続先トポロジを静的に登録する必要があります。
Policy Generation Levelをrequireに変更し、Addを選択します。
Topology Entryウィンドウがポップするので、
接続先トポロジのネットワークアドレスを入力します。
クライアントの構成はこれで終了です。
Saveを選択し、設定を保存してください。
VPNコンセントレータ(R2)
VPNコンセントレータとして使用しているCiscoサービス統合型ルータにおいて、以下のコマンドを実行することにより、すべてのアクティブVPNセッションの一覧を取得することができます。
R2#show crypto session username cisco
Crypto session current status
Interface: Virtual-Access2
Username: cisco
Profile: test
Group: RA
Assigned address: 10.0.0.7
Session status: UP-ACTIVE
Peer: 12.12.12.2 port 500
IKE SA: local 13.13.13.2/500 remote 12.12.12.2/500 Active
IPSEC FLOW: permit ip 192.168.12.0/255.255.255.0 host 10.0.0.7
Active SAs: 2, origin: crypto map
VPNクライアント(Windows PC)
VPN接続に問題がなければ、Shrew Soft VPN Clientのステータスがtunnel enabledになり、リモートホストであるWindows PCとサーバ間でPingが通るようになります。
tunnel enabledの出力により、
VPN接続の確立がクライアントソフトで確認できます。
Pingが通ることからも、リモートホストであるWindows PCから、外部サイト内にあるローカルサーバに対して通信が可能になったことがわかります。
C:\WindowsPC>ping 192.168.12.4 192.168.12.4にpingを送信しています32 バイトのデータ: 192.168.12.4からの応答: バイト数 = 32 時間 = 53ms TTL=254 192.168.12.4からの応答: バイト数 = 32 時間 = 35ms TTL=254 192.168.12.4からの応答: バイト数 = 32 時間 = 34ms TTL=254 192.168.12.4からの応答: バイト数 = 32 時間 = 35ms TTL=254 192.168.12.4のping統計: パケット数: 送信 = 4、受信 = 4、損失 = 0 (0% の損失) ラウンド トリップの概算時間 (ミリ秒): 最小 = 34ms、最大 = 53ms、平均 = 39ms
R2#show running-config Building configuration... Current configuration : 2107 bytes ! ! Last configuration change at 06:08:30 UTC Wed Dec 24 2014 ! version 15.0 service timestamps debug datetime msec service timestamps log datetime msec no service password-encryption ! hostname R2 ! boot-start-marker boot-end-marker ! ! aaa new-model ! ! aaa authentication login AUTH local aaa authorization network NET local ! ! ! ! ! aaa session-id common ! ! ! dot11 syslog ip source-route ! ! ! ! ip cef no ipv6 cef ! multilink bundle-name authenticated ! ! ! ! ! license udi pid CISCO1841 sn FHK1424706J archive log config hidekeys vtp mode transparent username cisco password 0 cisco ! redundancy ! ! ! ! crypto isakmp policy 1 encr aes authentication pre-share group 2 lifetime 3600 crypto isakmp keepalive 10 ! crypto isakmp client configuration group RA key cisco domain cisco.com pool POOL acl split save-password netmask 255.255.255.0 crypto isakmp profile test match identity group RA client authentication list AUTH isakmp authorization list NET client configuration address respond client configuration group RA virtual-template 1 ! ! crypto ipsec transform-set test esp-aes esp-sha-hmac ! crypto ipsec profile ipsecprof set transform-set test set isakmp-profile test ! ! ! ! ! ! interface FastEthernet0/0 description LAN ip address 192.168.12.3 255.255.255.0 duplex auto speed auto ! ! interface FastEthernet0/1 no ip address shutdown duplex auto speed auto ! ! interface Serial0/0/0 ip address 13.13.13.2 255.255.255.252 no fair-queue clock rate 64000 ! ! interface Serial0/0/1 no ip address shutdown clock rate 125000 ! ! interface Virtual-Template1 type tunnel ip unnumbered Serial0/0/0 tunnel source Serial0/0/0 tunnel mode ipsec ipv4 tunnel protection ipsec profile ipsecprof ! ! ip local pool POOL 10.0.0.1 10.0.0.254 ip forward-protocol nd ip http server no ip http secure-server ! ! ip route 0.0.0.0 0.0.0.0 13.13.13.1 ! ip access-list extended split permit ip 192.168.12.0 0.0.0.255 any ! ! ! ! ! ! ! control-plane ! ! ! line con 0 exec-timeout 0 0 line aux 0 line vty 0 4 ! scheduler allocate 20000 1000 end
・Shrew Soft VPN Client Version2.1.6 Administrators Guide
https://www.shrew.net/static/help-2.1.x/vpnhelp.htm
・Cisco IOSソフトウェアに-設定例-設定例接続するリモートアクセスVPNクライアント(Xauth)としてstrongSwan
http://www.cisco.com/cisco/web/support/JP/112/1121/1121922_117257-config-ios-vpn-strongswan-00.html
検索バーにキーワード、フレーズ、または質問を入力し、お探しのものを見つけましょう
シスコ コミュニティをいち早く使いこなしていただけるよう役立つリンクをまとめました。みなさんのジャーニーがより良いものとなるようお手伝いします
下記より関連するコンテンツにアクセスできます