UnixPower on Networking
  http://www.unix-power.net/

 
 Top - Cisco - Cisco ASA AnyConnect



CiscoASAでSSL-VPNを構築します。


最近はリモートアクセスIPSecVPNではなくSSL-VPNでアクセスするのが主流だと思われます。IPSecだと専用のクライアントアプリケーショ ンが必要なのに対しSSL-VPNではブラウザがあれば利用可能という手軽さがあるのかもしれません。


一言でSSL-VPNといっても2種類あります。一つはクライアントレス方式、もう一つがクライアント ( AnyConnect ) 方式です。クライアントレス方式とはASAがいわばproxyのような動きをし、ASAを介してブラウザベースで操作する方式です。対してAnyConnect方式はログインのときのみブラウザを使用し、最初のログイン時に専用ソフトがインストールされ仮想IPアドレスが割り当てられる方式で、接続後はあたかも内部LANにいるかのように操作できる方式です。


ここで取り上げるのはAnyConnect方式です。


AnyConnectはバージョンにより同様の設定を行なっていても細かな挙動が異なることがあり、また設定内容も異なってきます。以下ではVer8.0と8.6の設定例を記載致しますので参考にし て頂ければと思います。


< Ver8.0の場合 >


※PAT処理をしている場合、SSL-VPNで割り当てるIPを対象外にする必要があります
access-list no_nat extended permit ip any 192.168.200.0 255.255.255.128
nat (inside) 0 access-list no_nat
nat (dmz) 0 access-list no_nat

※outsideインターフェイスでSSL-VPNを有効としイメージファイルを指定します。
webvpn
enable outside
svc image disk0:/anyconnect-win-2.3.0254-k9.pkg 1
svc enable

※SSL-VPNでログインした際の仮想IPアドレスの範囲を設定します。
ip local pool remote-client 192.168.200.1-192.168.200.127

※SSL-VPN経由で通信する対象IPアドレス( SplitTunnel )を設定します。
access-list split standard permit 10.0.0.0 255.0.0.0
access-list split standard permit 192.168.0.0 255.255.0.0
access-list split standard permit 172.16.0.0 255.240.0.0

※グループポリシーを設定します。グループポリシーとはユーザに割り当てる属性値です。
 上記で設定したsplitおよびremote-clientはここで紐付けます。
group-policy Grp-Policy internal
group-policy Grp-Policy attributes
dns-server value yy.zz.yy.zz
vpn-tunnel-protocol svc
split-tunnel-policy tunnelspecified
split-tunnel-network-list value split
address-pools value remote-client

※トンネルグループを設定します。トンネルグループはグループポリシーと紐付きます。
tunnel-group ASA type remote-access
tunnel-group ASA general-attributes
default-group-policy Grp-Policy
tunnel-group ASA webvpn-attributes
group-url https://xx.yy.xx.yy/remote-access/ enable

※ログイン用のユーザIDとパスを登録し、その際Tunnel-Groupも指定することで
 特定URLからのみのログインが可能となります。
username user1 password password
username user1 attributes
group-lock value ASA




< Ver8.6の場合 >


8.6の場合ですとまずNATの記載方法が異なります。その他、AnyConnectでも一部記載の仕方が異なる部分があるので注意してください。


※PAT処理をしている場合、SSL-VPNで割り当てるIPを対象外にする必要があります
object network vpnpool
subnet 192.168.250.0 255.255.255.128
nat (any,outside) 1 source static any any destination static vpnpool vpnpool

※outsideインターフェイスでSSL-VPNを有効としイメージファイルを指定します。
webvpn
enable outside
anyconnect-essentials
anyconnect image disk0:/anyconnect-win-3.0.08057-k9.pkg 1
anyconnect enable

※SSL-VPNでログインした際の仮想IPアドレスの範囲を設定します。
ip local pool remote-client 192.168.200.1-192.168.200.127

※SSL-VPN経由で通信する対象IPアドレス( SplitTunnel )を設定します。
access-list split standard permit 10.0.0.0 255.0.0.0
access-list split standard permit 192.168.0.0 255.255.0.0
access-list split standard permit 172.16.0.0 255.240.0.0

※グループポリシーを設定します。グループポリシーとはユーザに割り当てる属性値です。
 上記で設定したsplitおよびremote-clientはここで紐付けます。
group-policy Grp-Policy internal
group-policy Grp-Policy attributes
dns-server value yy.zz.yy.zz
vpn-tunnel-protocol ssl-client
split-tunnel-policy tunnelspecified
split-tunnel-network-list value SPLIT
address-pools value remote-client

※トンネルグループを設定します。トンネルグループはグループポリシーと紐付きます。
tunnel-group ASA type remote-access
tunnel-group ASA general-attributes
default-group-policy Grp-Policy
tunnel-group ASA webvpn-attributes
group-url https://xx.yy.xx.yy/remote-access/ enable

※ログイン用のユーザIDとパスを登録し、その際Tunnel-Groupも指定することで
 特定URLからのみのログインが可能となります。
username user1 password password
username user1 attributes
group-lock value ASA


上記の設定でブラウザからSSL-VPNでログインすることが可能となります。



上で設定したID/PASSでログイン可能です。ログインに成功すればanyconnectソフトウェアが自動的にダウンロードされインストールされます。その後、仮想IPアドレスが割り当てられあたかもLAN内部にいるかのように操作できます。





SSL-VPNを設定を実施してブラウザでアクセスしてもログイン画面すら表示されないということを経験しました。その場合、以下のコンフィグが設定されているか確認してみます。

ssl encryption des-sha1

設定されている場合、次のコンフィグを適用することでログイン画面は正常に表示されるようになります。

no ssl encryption des-sha1
ssl encryption rc4-sha1 aes128-sha1 aes256-sha1 3des-sha1




 
 関連記事
 Cisco PIX Firewallの設定
 CiscoASAの基本設定
 CiscoASA PPPoE+NAT/PAT
 CiscoASA IPSec VPN
 Copyright(C) 2003-2015 UnixPower on Networking All rights reserved.