Mikan Network Lab.

ネットワーク技術やCisco製品に関して、勉強・検証した内容を発信しています。

Mikan Network Lab.

ASA: VPNフィルタの設定

Cisco ASAにおけるAnyConnectでのSSL-VPNにおいて、VPNフィルタの設定例を記載します。VPNフィルタを用いることでVPN接続時にアクセス可能なサーバを制限することができます。

目次

1. 前提条件

本記事は以下に基づいて作成しています。
・Cisco Modeling Labs 2.1.1
・Cisco ASAv Version 9.14(1)
・Cisco AnyConnect 4.9

2. 要件

  • ASAとPC間でSSL-VPNを確立してください。
  • PCがASAのINSIDEインタフェース側にあるServer1(172.16.1.1)のみにアクセスできるようにVPNフィルタを設定してください。
  • SSL-VPN接続時にPCに払い出すアドレスの範囲は「172.16.0.101~172.16.0.200/24」にしてください。
  • VPNユーザ名は「ciscovpn」、パスワードは「ciscovpn」にしてください。
  • AnyConnectクライアントからSSL-VPN接続を開始する際に選択できるグループ名は「SSL-VPN」に設定してください。

構成図

3. 設定例

要件を満たす設定例を以下に示します。

 ASA 

hostname ASA
ip local pool VPN_POOL 172.16.0.101-172.16.0.200 mask 255.255.255.0
!
interface GigabitEthernet0/0
 nameif OUTSIDE
 security-level 0
 ip address 192.168.12.254 255.255.255.0
!
interface GigabitEthernet0/1
 nameif INSIDE
 security-level 100
 ip address 172.16.1.254 255.255.255.0
!
access-list VPN_FILTER extended permit ip 172.16.0.0 255.255.255.0 host 172.16.1.1
webvpn
 enable OUTSIDE
 anyconnect image disk0:/anyconnect-win-4.9.05042-webdeploy-k9.pkg 1
 anyconnect enable
 tunnel-group-list enable
group-policy G_VPN internal
group-policy G_VPN attributes
 vpn-filter value VPN_FILTER
 vpn-tunnel-protocol ssl-client
username ciscovpn password ciscovpn
tunnel-group T_VPN type remote-access
tunnel-group T_VPN general-attributes
 address-pool VPN_POOL
 default-group-policy G_VPN
tunnel-group T_VPN webvpn-attributes
 group-alias SSL-VPN enable

4. 動作確認

4.1. show vpn-sessiondb anyconnect filter name

  • ユーザciscovpnのセッションが存在しており、「172.16.0.101~172.16.0.200」の範囲のアドレスが割り当てられていることを確認。

ASA# show vpn-sessiondb anyconnect filter name ciscovpn

Session Type: AnyConnect

Username     : ciscovpn               Index        : 2
Assigned IP  : 172.16.0.101           Public IP    : 192.168.12.129
Protocol     : AnyConnect-Parent SSL-Tunnel DTLS-Tunnel
License      : AnyConnect Premium
Encryption   : AnyConnect-Parent: (1)none  SSL-Tunnel: (1)AES-GCM-256  DTLS-Tunnel: (1)AES-GCM-256
Hashing      : AnyConnect-Parent: (1)none  SSL-Tunnel: (1)SHA384  DTLS-Tunnel: (1)SHA384
Bytes Tx     : 16096                  Bytes Rx     : 9113
Group Policy : G_VPN                  Tunnel Group : T_VPN
Login Time   : 01:44:34 UTC Sat Feb 20 2021
Duration     : 0h:05m:28s
Inactivity   : 0h:00m:00s
VLAN Mapping : N/A                    VLAN         : none
Audt Sess ID : ac1001fe0000200060306982
Security Grp : none

4.2. PCからのping

  • PCからASAのINSIDE側インタフェースにあるServer1(172.16.1.1)に疎通が取れることを確認。
  • PCからASAのINSIDE側インタフェースにあるServer2(172.16.1.2)に疎通が取れないことを確認。

C:\>ping 172.16.1.1

172.16.1.1 に ping を送信しています 32 バイトのデータ:
172.16.1.1 からの応答: バイト数 =32 時間 =3ms TTL=255
172.16.1.1 からの応答: バイト数 =32 時間 =3ms TTL=255
172.16.1.1 からの応答: バイト数 =32 時間 =3ms TTL=255
172.16.1.1 からの応答: バイト数 =32 時間 =2ms TTL=255

172.16.1.1 の ping 統計:
    パケット数: 送信 = 4、受信 = 4、損失 = 0 (0% の損失)、
ラウンド トリップの概算時間 (ミリ秒):
    最小 = 2ms、最大 = 3ms、平均 = 2ms
C:\>ping 172.16.1.2

172.16.1.2 に ping を送信しています 32 バイトのデータ:
要求がタイムアウトしました。
要求がタイムアウトしました。
要求がタイムアウトしました。
要求がタイムアウトしました。

172.16.1.2 の ping 統計:
    パケット数: 送信 = 4、受信 = 0、損失 = 4 (100% の損失)、