内容

はじめに

前提条件

要件

使用するコンポーネント

背景説明

設定

ネットワーク図

ASAでの設定

ASDMでの設定

確認

シナリオ1一致するDAPは1つだけです

シナリオ2:デフォルトのDAPが一致しています

シナリオ3:複数のDAP(Action : Continue)が一致

シナリオ4:複数のDAP(Action :Terminate)が一致しています。

一般的なトラブルシューティング

関連情報

はじめに

このドキュメントでは、AnyConnect接続に使用されるデバイスのMACアドレスを確認するために、ASDM経由でダイナミックアクセスポリシー(DAP)を設定する方法について説明します。

前提条件

要件

次の項目に関する知識があることが推奨されます。

Cisco Anyconnectとホストスキャンの設定

使用するコンポーネント

このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。

ASAv 9.18(4)

ASDM 7.20(1)

Anyconnect 4.10.07073

ホストスキャン4.10.07073

Windows 10

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな（デフォルト）設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。

背景説明

HostScanは、AnyConnectセキュアモビリティクライアントがネットワーク上でセキュリティポリシーを適用できるようにするソフトウェアモジュールです。ホストスキャンの処理中に、クライアントデバイスに関するさまざまな詳細が収集され、適応型セキュリティアプライアンス(ASA)に報告されます。これらの詳細には、デバイスのオペレーティングシステム、ウイルス対策ソフトウェア、ファイアウォールソフトウェア、MACアドレスなどが含まれます。ダイナミックアクセスポリシー(DAP)機能を使用すると、ネットワーク管理者はユーザごとにセキュリティポリシーを設定できます。DAPのendpoint.device.MAC属性を使用して、クライアントデバイスのMACアドレスを事前定義されたポリシーと照合したり、照合したりできます。

設定

ネットワーク図

次の図は、このドキュメントの例で使用するトポロジを示しています。

図

ASAでの設定

これは、ASA CLIでの最小限の設定です。

tunnel-group dap_test_tg type remote-access

tunnel-group dap_test_tg general-attributes

default-group-policy dap_test_gp

tunnel-group dap_test_tg webvpn-attributes

group-alias dap_test enable

group-policy dap_test_gp internal

group-policy dap_test_gp attributes

vpn-tunnel-protocol ssl-client

address-pools value ac_pool

webvpn

anyconnect keep-installer installed

always-on-vpn profile-setting

ip local pool ac_pool 172.16.1.11-172.16.1.20 mask 255.255.255.0

webvpn

enable outside

hostscan image disk0:/hostscan_4.10.07073-k9.pkg

hostscan enable

anyconnect image disk0:/anyconnect-win-4.10.07073-webdeploy-k9.pkg 1

anyconnect enable

tunnel-group-list enable

ASDMでの設定

ここでは、ASDMでDAPレコードを設定する方法について説明します。この例では、endpoint.device.MAC属性を条件として使用する3つのDAPレコードを設定します。

・01_dap_test:endpoint.device.MAC=0050.5698.e608

・02_dap_test:endpoint.device.MAC=0050.5698.e605 = AnyConnectエンドポイントのMAC

・03_dap_test:endpoint.device.MAC=0050.5698.e609

1. 01_dap_testという名前の最初のDAPを設定します。

Configuration > Remote Access VPN > Network (Client) Access > Dynamic Access Policiesの順に移動します。Addをクリックし、図に示すように、Policy Name、AAA Attribute、endpoint attributes、Action、User Messageを設定します。

最初のDAPの設定

AAA属性のグループポリシーを設定します。

DAPレコードのグループポリシーの設定

エンドポイント属性のMACアドレスを設定します。

DAPのMAC条件の設定

2. 02_dap_testという名前の2番目のDAPを設定します。

2番目のDAPの設定

3. 3番目のDAPを03_dap_testという名前で設定します。

3番目のDAPの設定

4.  more flash:/dap.xml  コマンドを使用して、dap.xmlのDAPレコードの設定を確認します。

ASDMで設定されたDAPレコードの詳細は、dap.xmlとしてASAフラッシュに保存されます。これらの設定が完了すると、3つのDAPレコードがdap.xmlに生成されます。dap.xmlで各DAPレコードの詳細を確認できます。

注：DAPが一致する順序は、dap.xmlでの表示順序です。 デフォルトのDAP(DfltAccessPolicy)が最後に一致します。

ciscoasa# more flash:/dap.xml

<dapRecordList> <dapRecord> <dapName> <value>01_dap_test</value> <--- 1st DAP name </dapName> <dapViewsRelation> <value>and</value> </dapViewsRelation> <dapBasicView> <dapSelection> <dapPolicy> <value>match-all</value> </dapPolicy> <attr> <name>aaa.cisco.grouppolicy</name> <value>dap_test_gp</value> <--- 1st DAP group policy <operation>EQ</operation> <type>caseless</type> </attr> </dapSelection> <dapSelection> <dapPolicy> <value>match-any</value> </dapPolicy> <dapSubSelection> <dapPolicy> <value>match-all</value> </dapPolicy> <attr> <name>endpoint.device.MAC["0050.5698.e608"]</name> <--- 1st DAP MAC Address condition <value>true</value> <type>caseless</type> <operation>EQ</operation> </attr> </dapSubSelection> </dapSelection> </dapBasicView> </dapRecord> <dapRecord> <dapName> <value>02_dap_test</value> <--- 2nd DAP name </dapName> <dapViewsRelation> <value>and</value> </dapViewsRelation> <dapBasicView> <dapSelection> <dapPolicy> <value>match-any</value> </dapPolicy> <attr> <name>aaa.cisco.grouppolicy</name> <value>dap_test_gp</value> <--- 2nd DAP group policy <operation>EQ</operation> <type>caseless</type> </attr> </dapSelection> <dapSelection> <dapPolicy> <value>match-any</value> </dapPolicy> <dapSubSelection> <dapPolicy> <value>match-all</value> </dapPolicy> <attr> <name>endpoint.device.MAC["0050.5698.e605"]</name> <--- 2nd DAP MAC Address condition <value>true</value> <type>caseless</type> <operation>EQ</operation> </attr> </dapSubSelection> </dapSelection> </dapBasicView> </dapRecord> <dapRecord> <dapName> <value>03_dap_test</value> <--- 3rd DAP name </dapName> <dapViewsRelation> <value>and</value> </dapViewsRelation> <dapBasicView> <dapSelection> <dapPolicy> <value>match-any</value> </dapPolicy> <attr> <name>aaa.cisco.grouppolicy</name> <value>dap_test_gp</value> <--- 3rd DAP group policy <operation>EQ</operation> <type>caseless</type> </attr> </dapSelection> <dapSelection> <dapPolicy> <value>match-any</value> </dapPolicy> <dapSubSelection> <dapPolicy> <value>match-all</value> </dapPolicy> <attr> <name>endpoint.device.MAC["0050.5698.e609"]</name> <--- 3rd DAP MAC Address condition <value>true</value> <type>caseless</type> <operation>EQ</operation> </attr> </dapSubSelection> </dapSelection> </dapBasicView> </dapRecord> </dapRecordList>

確認

シナリオ1一致するDAPは1つだけです

1. エンドポイントのMACが0050.5698.e605であり、02_dap_testのMAC条件と一致することを確認します。

2. エンドポイントで、Anyconnect接続を実行し、ユーザ名とパスワードを入力します。

ユーザ名とパスワードの入力

3. Anyconnect UIで、02_dap_testが一致していることを確認します。

UIでのユーザメッセージの確認

4. ASA syslogで、02_dap_testが一致していることを確認します。

注：ASAでdebug dap traceが有効になっていることを確認します。

Dec 30 2023 11:46:11: %ASA-4-711001: DAP_TRACE: Feb 01 2024 08:55:37: %ASA-4-711001: endpoint.device.MAC["0050.5698.e605"] = "true"

Dec 30 2023 11:46:11: %ASA-4-711001: DAP_TRACE: Username: cisco, Dec 30 2023 11:46:11: %ASA-4-711001: Selected DAPs: ,02_dap_test Dec 30 2023 11:46:11: %ASA-4-711001: DAP_TRACE: Dec 30 2023 11:46:11: %ASA-4-711001: dap_process_selected_daps: selected 1 records Dec 30 2023 11:46:11: %ASA-4-711001: DAP_TRACE: Username: cisco, Dec 30 2023 11:46:11: %ASA-4-711001: DAP_close: 17

シナリオ2:デフォルトのDAPが一致しています

1. 02_dap_testのendpoint.device.MACの値を、エンドポイントのMACと一致しない0050.5698.e607に変更します。

2. エンドポイントで、Anyconnect接続を実行し、ユーザ名とパスワードを入力します。

3. Anyconnect接続が拒否されたことを確認します。

UIでのユーザメッセージの確認

4. ASA syslogで、DfltAccessPolicyが一致していることを確認します。

注：デフォルトでは、DfltAccessPolicyのアクションはTerminateです。

Dec 30 2023 12:13:39: %ASA-4-711001: DAP_TRACE: Feb 01 2024 08:55:37: %ASA-4-711001: endpoint.device.MAC["0050.5698.e605"] = "true"

Dec 30 2023 12:13:39: %ASA-4-711001: DAP_TRACE: Username: cisco, Dec 30 2023 12:13:39: %ASA-4-711001: Selected DAPs:

Dec 30 2023 12:13:39: %ASA-4-711001: DAP_TRACE: Dec 30 2023 12:13:39: %ASA-4-711001: dap_process_selected_daps: selected 0 records

Dec 30 2023 12:13:39: %ASA-4-711001: DAP_TRACE: Username: cisco, Dec 30 2023 12:13:39: %ASA-4-711001: Selected DAPs: DfltAccessPolicy

Dec 30 2023 12:13:39: %ASA-4-711001: DAP_TRACE: Username: cisco, Dec 30 2023 12:13:39: %ASA-4-711001: DAP_close: 1B

シナリオ3:複数のDAP(Action : Continue)が一致

1. 各DAPのアクションと属性を変更します。

・01_dap_test:

dapSelection（MACアドレス） = endpoint.device.MAC[0050.5698.e605] = AnyConnectエンドポイントのMAC

アクション=続行

・02_dap_test:

dapSelection （ホスト名） = endpoint.device.hostname[DESKTOP-VCKHRG1] = Anyconnectエンドポイントのホスト名

アクション=続行

・03_dap_test DAPレコードの削除

2. エンドポイントで、Anyconnect接続を実行し、ユーザ名とパスワードを入力します。

3. Anyconnect UIで、2つのDAPがすべて一致していることを確認します

注：接続が複数のDAPに一致する場合、複数のDAPのユーザメッセージが統合され、Anyconnect UIに同時に表示されます。

UIでのユーザメッセージの確認

4. ASA syslogで、2つのDAPがすべて一致していることを確認します。

Feb 01 2024 08:49:02: %ASA-4-711001: DAP_TRACE: Feb 01 2024 08:55:37: %ASA-4-711001: endpoint.device.MAC["0050.5698.e605"] = "true"

Feb 01 2024 08:49:02: %ASA-4-711001: DAP_TRACE: Feb 01 2024 08:49:02: %ASA-4-711001: endpoint.device.hostname = "DESKTOP-VCKHRG1"

Feb 01 2024 08:49:02: %ASA-4-711001: DAP_TRACE: Username: cisco, Feb 01 2024 08:49:02: %ASA-4-711001: Selected DAPs: ,01_dap_test,02_dap_test

Feb 01 2024 08:49:02: %ASA-4-711001: DAP_TRACE: Feb 01 2024 08:49:02: %ASA-4-711001: dap_process_selected_daps: selected 2 records

Feb 01 2024 08:49:02: %ASA-4-711001: DAP_TRACE: Username: cisco, Feb 01 2024 08:49:02: %ASA-4-711001: DAP_close: 4

シナリオ4:複数のDAP(Action :Terminate)が一致しています

1. 01_dap_testのアクションを変更します。

・01_dap_test:

dapSelection（MACアドレス） = endpoint.device.MAC[0050.5698.e605] = AnyConnectエンドポイントのMAC

アクション=終了

・02_dap_test:

dapSelection （ホスト名） = endpoint.device.hostname[DESKTOP-VCKHRG1] = Anyconnectエンドポイントのホスト名

アクション=続行

2. エンドポイントで、Anyconnect接続を実行し、ユーザ名とパスワードを入力します。

3. Anyconnect UIで、01_dap_testのみが一致していることを確認します。

注：アクションを終了するように設定されたDAPレコードに一致する接続。終了操作の後、後続のレコードが一致しなくなりました。

UIでのユーザメッセージの確認

4. ASA syslogで、01_dap_testのみが一致していることを確認します。

Feb 01 2024 08:55:37: %ASA-4-711001: DAP_TRACE: Feb 01 2024 08:55:37: %ASA-4-711001: endpoint.device.MAC["0050.5698.e605"] = "true"

Feb 01 2024 08:55:37: %ASA-4-711001: DAP_TRACE: Feb 01 2024 08:55:37: %ASA-4-711001: endpoint.device.hostname = "DESKTOP-VCKHRG1" Feb 01 2024 08:55:37: %ASA-4-711001: DAP_TRACE: Username: cisco, Feb 01 2024 08:55:37: %ASA-4-711001: Selected DAPs: ,01_dap_test Feb 01 2024 08:55:37: %ASA-4-711001: DAP_TRACE: Feb 01 2024 08:55:37: %ASA-4-711001: dap_process_selected_daps: selected 1 records Feb 01 2024 08:55:37: %ASA-4-711001: DAP_TRACE: Username: cisco, Feb 01 2024 08:55:37: %ASA-4-711001: DAP_close: 6

一般的なトラブルシューティング

次のデバッグログは、ASAでのDAPの詳細な動作を確認するのに役立ちます。

debug dap trace

debug dap trace errors

Feb 01 2024 08:49:02: %ASA-4-711001: DAP_TRACE: Feb 01 2024 08:55:37: %ASA-4-711001: endpoint.device.MAC["0050.5698.e605"] = "true" Feb 01 2024 08:49:02: %ASA-4-711001: DAP_TRACE: Feb 01 2024 08:49:02: %ASA-4-711001: endpoint.device.hostname = "DESKTOP-VCKHRG1" Feb 01 2024 08:49:02: %ASA-4-711001: DAP_TRACE: Username: cisco, Feb 01 2024 08:49:02: %ASA-4-711001: Selected DAPs: ,01_dap_test,02_dap_test Feb 01 2024 08:49:02: %ASA-4-711001: DAP_TRACE: Feb 01 2024 08:49:02: %ASA-4-711001: dap_process_selected_daps: selected 2 records Feb 01 2024 08:49:02: %ASA-4-711001: DAP_TRACE: Username: cisco, Feb 01 2024 08:49:02: %ASA-4-711001: DAP_close: 4

関連情報

https://www.cisco.com/c/en/us/support/docs/security/asa-5500-x-series-next-generation-firewalls/108000-dap-deploy-guide.html#toc-hId-981572249