はじめに
このドキュメントでは、Cisco AnyConnect セキュア モビリティ クライアントが、Cisco ASA への接続中にローカル LAN にアクセスできるようにする方法について説明します。
前提条件
要件
このドキュメントでは、機能しているリモートアクセスVPN設定がCisco適応型セキュリティアプライアンス(ASA)にすでに存在していることを前提としています。
必要に応じて、『CLIブック3:Cisco ASAシリーズVPN CLIコンフィギュレーションガイド9.17』の設定を参照してください。
使用するコンポーネント
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。
- Cisco ASA 5500 シリーズ バージョン 9(2)1
- Cisco Adaptive Security Device Manager(ASDM)バージョン 7.1(6)
- Cisco AnyConnect セキュア モビリティ クライアント バージョン 3.1.05152
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
ネットワーク図
クライアントは一般的なスモールオフィス/ホームオフィス(SOHO)ネットワーク上にあり、インターネット経由で本社に接続しています。
背景説明
この設定により、Cisco AnyConnectセキュアモビリティクライアントは、IPsec、Secure Sockets Layer(SSL)、またはInternet Key Exchange Version 2(IKEv2)を介して企業リソースへの安全なアクセスが可能になり、クライアントが配置された場所への印刷などのアクティビティを実行する機能もクライアントに提供されます。許可されている場合、インターネット宛てのトラフィックは引き続き ASA にトンネリングされます。
すべてのインターネット トラフィックが暗号化されずに送信される従来のスプリット トンネリング シナリオとは異なり、VPN クライアント用にローカルの LAN アクセスを有効にすると、それらのクライアントは、存在する場所のネットワーク上にあるデバイスだけと暗号化せずに通信することを許可されます。たとえば、自宅からASAに接続しながらローカルLANアクセスを許可されているクライアントは、自分のプリンタに出力することはできますが、インターネットにアクセスするには、まずトンネル経由でトラフィックを送信する必要があります。
ASA でスプリット トンネリングを設定する場合とほぼ同じように、ローカル LAN アクセスの許可には、アクセス リストが使用されます。ただし、スプリットトンネリングのシナリオとは異なり、このアクセスリストでは、暗号化する必要があるネットワークが定義されません。代わりに、暗号化しないネットワークを定義します。また、スプリット トンネリング シナリオとは異なり、リスト内の実際のネットワークを知る必要はありません。その代わりに、ASA は、クライアントのローカル LAN を意味すると理解されているデフォルト ネットワークの 0.0.0.0/255.255.255.255 を供給します。
注:クライアントがローカルLANアクセス用に接続および設定されている場合、ローカルLAN上で名前による印刷または表示はできません。ただし、IP アドレスによる表示や印刷は可能です。この状況の詳細および回避策については、このドキュメントの「トラブルシュート」セクションを参照してください。
AnyConnectセキュアモビリティクライアントのローカルLANアクセスの設定
ASAへの接続中にCisco AnyConnectセキュアモビリティクライアントがローカルLANにアクセスできるようにするには、次のタスクを実行します。
ASDM 経由での ASA の設定
ASA に接続しながら、VPN Client にローカル LAN アクセスを許可するには、ASDM で次の手順を実施します。
Configuration > Remote Access VPN > Network (Client) Access > Group Policy
を選択して、ローカルLANアクセスをイネーブルにするグループポリシーを選択します。次に、Edit
をクリックします。
- 次に.
Advanced > Split Tunneling
- Policyの
Inherit
ボックスのチェックマークを外し、Exclude Network List Below
を選択します。
- Network Listの
Inherit
ボックスのチェックマークを外し、Manage
をクリックして、アクセスコントロールリスト(ACL)マネージャを起動します。
- ACL Managerで、
Add > Add ACL...
を選択して、新しいアクセスリストを作成します。
- ACLの名前を指定して、
OK
をクリックします。
- ACLが作成されたら、
Add > Add ACE...
を選択して、アクセスコントロールエントリ(ACE)を追加します。
- クライアントのローカル LAN に対応する ACE を定義します。
- 選択.
Permit
- IP アドレス 0.0.0.0 を選択します。
- /32 のネットマスクを選択します。
- (任意)説明を入力します。
- をクリックします。
OK
- ACL Managerを終了するには、
OK
をクリックします。
- Split Tunnel Network List で、作成した ACL が選択されていることを確認します。
- グループポリシーの設定に戻るには、
OK
をクリックします。
Apply
(必要な場合)、Send
の順にクリックして、コマンドをASAに送信します。
CLI による ASA の設定
ASA に接続しているときに VPN Client にローカル LAN へのアクセスを許可するには、ASDM を使用する代わりに ASA CLI で次の手順を実行することもできます。
- コンフィギュレーション モードに切り替えます。
ciscoasa>enable
Password:
ciscoasa#configure terminal
ciscoasa(config)#
- ローカル LAN アクセスを許可するアクセス リストを作成します。
ciscoasa(config)#access-list Local_LAN_Access remark Client Local LAN Access
ciscoasa(config)#access-list Local_LAN_Access standard permit host 0.0.0.0
- 修正するポリシーのグループ ポリシー コンフィギュレーション モードに入ります。
ciscoasa(config)#group-policy hillvalleyvpn attributes
ciscoasa(config-group-policy)#
- スプリット トンネル ポリシーを指定します。この場合、ポリシーは
excludespecified
です。
ciscoasa(config-group-policy)#split-tunnel-policy excludespecified
- スプリット トンネル アクセス リストを指定します。この場合、リストは
Local_LAN_Access
です。
ciscoasa(config-group-policy)#split-tunnel-network-list value Local_LAN_Access
- 次のコマンドを実行します。
ciscoasa(config)#tunnel-group hillvalleyvpn general-attributes
- グループポリシーをトンネルグループに関連付けます。
ciscoasa(config-tunnel-ipsec)# default-group-policy hillvalleyvpn
- 2 つのコンフィギュレーション モードを終了します。
ciscoasa(config-group-policy)#exit
ciscoasa(config)#exit
ciscoasa#
- この設定を不揮発性RAM(NVRAM)に保存して、ソースファイル名を指定するようにプロンプトが表示されたら、
Enter
を押します。
ciscoasa#copy running-config startup-config
Source filename [running-config]?
Cryptochecksum: 93bb3217 0f60bfa4 c36bbb29 75cf714a
3847 bytes copied in 3.470 secs (1282 bytes/sec)
ciscoasa#
Cisco AnyConnect セキュア モビリティ クライアントの設定
Cisco AnyConnectセキュアモビリティクライアントを設定するには、『CLIブック3:Cisco ASAシリーズVPN CLIコンフィギュレーションガイド、9.17』の「AnyConnect接続の設定」セクションを参照してください。
スプリット除外トンネリングでは、AnyConnectクライアントでAllowLocalLanAccess
をイネーブルにする必要があります。すべてのスプリット除外トンネリングは、ローカル LAN アクセスと見なされます。スプリットトンネリングの除外機能を使用するには、AnyConnect VPN Client preferencesでAllowLocalLanAccess
プリファレンスをイネーブルにする必要があります。デフォルトでは、ローカル LAN アクセスはディセーブルになっています。
ローカル LAN アクセスを許可し、そのためにスプリット除外トンネリングを許可するには、ネットワーク管理者がそれをプロファイル内で有効にするか、ユーザがプリファレンス設定で有効にすることができます(次のセクションの画像を参照してください)。スプリットトンネリングがセキュアゲートウェイでイネーブルになっていて、Allow Local LAN access
ポリシーが設定されている場合、ローカルLANアクセスを許可するためにユーザがsplit-tunnel-policy exclude specified
チェックボックスをオンにします。また、
true
を使用してローカルLANアクセスが許可されている場合は、VPN Clientプロファイルを設定できます。
ユーザ設定
ローカルLANアクセスを許可するためにCisco AnyConnectセキュアモビリティクライアントのPreferencesタブで行う必要がある選択を次に示します。
Linux上
XML プロファイルの例
次に、XML で VPN クライアント プロファイルを設定する例を示します。
<?xml version="1.0" encoding="UTF-8"?>
<AnyConnectProfile xmlns="http://schemas.xmlsoap.org/encoding/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://schemas.xmlsoap.org/encoding/ AnyConnectProfile.xsd">
<ClientInitialization>
<UseStartBeforeLogon UserControllable="true">false</UseStartBeforeLogon>
<AutomaticCertSelection UserControllable="true">false</AutomaticCertSelection>
<ShowPreConnectMessage>false</ShowPreConnectMessage>
<CertificateStore>All</CertificateStore>
<CertificateStoreOverride>false</CertificateStoreOverride>
<ProxySettings>Native</ProxySettings>
<AllowLocalProxyConnections>true</AllowLocalProxyConnections>
<AuthenticationTimeout>12</AuthenticationTimeout>
<AutoConnectOnStart UserControllable="true">false</AutoConnectOnStart>
<MinimizeOnConnect UserControllable="true">true</MinimizeOnConnect>
<LocalLanAccess UserControllable="true">true</LocalLanAccess>
<ClearSmartcardPin UserControllable="true">true</ClearSmartcardPin>
<IPProtocolSupport>IPv4,IPv6</IPProtocolSupport>
<AutoReconnect UserControllable="false">true
<AutoReconnectBehavior UserControllable="false">DisconnectOnSuspend
</AutoReconnectBehavior>
</AutoReconnect>
<AutoUpdate UserControllable="false">true</AutoUpdate>
<RSASecurIDIntegration UserControllable="false">Automatic
</RSASecurIDIntegration>
<WindowsLogonEnforcement>SingleLocalLogon</WindowsLogonEnforcement>
<WindowsVPNEstablishment>LocalUsersOnly</WindowsVPNEstablishment>
<AutomaticVPNPolicy>false</AutomaticVPNPolicy>
<PPPExclusion UserControllable="false">Disable
<PPPExclusionServerIP UserControllable="false"></PPPExclusionServerIP>
</PPPExclusion>
<EnableScripting UserControllable="false">false</EnableScripting>
<EnableAutomaticServerSelection UserControllable="false">false
<AutoServerSelectionImprovement>20</AutoServerSelectionImprovement>
<AutoServerSelectionSuspendTime>4</AutoServerSelectionSuspendTime>
</EnableAutomaticServerSelection>
<RetainVpnOnLogoff>false
</RetainVpnOnLogoff>
</ClientInitialization>
</AnyConnectProfile>
確認
設定を確認するには、次のセクションの手順を実行します。
Cisco AnyConnect セキュア モビリティ クライアントを ASA に接続して設定を検証します。
- サーバリストから接続エントリを選択し、
Connect
をクリックします。
Advanced Window for All Components > Statistics...
を選択して、トンネルモードを表示します。
Linux上
- 「
Route Details
」タブをクリックして、Cisco AnyConnectセキュアモビリティクライアントがローカルアクセスできるルートを表示します。
この例では、クライアントは 10.150.52.0/22 および 169.254.0.0/16 へのローカル LAN アクセスを許可されています。その他のすべてのトラフィックは暗号化され、トンネル経由で送信されます。
Linux上
Cisco AnyConnect セキュア モビリティ クライアント
Diagnostics and Reporting Tool(DART)から AnyConnect ログを調べると、ローカル LAN アクセスを許可するパラメータが設定されているかどうかを判断できます。
******************************************
Date : 11/25/2011
Time : 13:01:48
Type : Information
Source : acvpndownloader
Description : Current Preference Settings:
ServiceDisable: false
CertificateStoreOverride: false
CertificateStore: All
ShowPreConnectMessage: false
AutoConnectOnStart: false
MinimizeOnConnect: true
LocalLanAccess: true
AutoReconnect: true
AutoReconnectBehavior: DisconnectOnSuspend
UseStartBeforeLogon: false
AutoUpdate: true
RSASecurIDIntegration: Automatic
WindowsLogonEnforcement: SingleLocalLogon
WindowsVPNEstablishment: LocalUsersOnly
ProxySettings: Native
AllowLocalProxyConnections: true
PPPExclusion: Disable
PPPExclusionServerIP:
AutomaticVPNPolicy: false
TrustedNetworkPolicy: Disconnect
UntrustedNetworkPolicy: Connect
TrustedDNSDomains:
TrustedDNSServers:
AlwaysOn: false
ConnectFailurePolicy: Closed
AllowCaptivePortalRemediation: false
CaptivePortalRemediationTimeout: 5
ApplyLastVPNLocalResourceRules: false
AllowVPNDisconnect: true
EnableScripting: false
TerminateScriptOnNextEvent: false
EnablePostSBLOnConnectScript: true
AutomaticCertSelection: true
RetainVpnOnLogoff: false
UserEnforcement: SameUserOnly
EnableAutomaticServerSelection: false
AutoServerSelectionImprovement: 20
AutoServerSelectionSuspendTime: 4
AuthenticationTimeout: 12
SafeWordSofTokenIntegration: false
AllowIPsecOverSSL: false
ClearSmartcardPin: true
******************************************
Ping でローカル LAN アクセスをテストする
VPN ClientがVPNヘッドエンドとトンネル接続しながらローカルLANアクセスが維持できているかどうかは、Microsoft Windowsコマンドラインでping
コマンドを発行する方法でもテストできます。クライアントのローカル LAN が 192.168.0.0/24 で、もう一方のホストも同じネットワーク上に存在し、IP アドレス 192.168.0.3 が付与されている例を次に示します。
C:\>ping 192.168.0.3
Pinging 192.168.0.3 with 32 bytes of data:
Reply from 192.168.0.3: bytes=32 time<1ms TTL=255
Reply from 192.168.0.3: bytes=32 time<1ms TTL=255
Reply from 192.168.0.3: bytes=32 time<1ms TTL=255
Reply from 192.168.0.3: bytes=32 time<1ms TTL=255
Ping statistics for 192.168.0.3:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
Linux上
トラブルシュート
ここでは、設定のトラブルシューティングに使用できる情報を示します。
名前による印刷またはブラウズができない
VPN Client がローカル LAN アクセス用に接続され設定されていると、ローカル LAN では名前によって印刷やブラウズを行うことはできません。この状況を回避するために次の 2 つのオプションを利用できます。
関連情報