2024-07-18 04:09 PM 2024-07-28 11:12 AM 更新
本ドキュメントは、Windowsマシン認証(MAR)とユーザー認証(dot1x)を用いた二要素認証を設定するために必要な手順について紹介しています。本ドキュメントは、Identity Services Engine Virtual 3.3 Patch 1、C1000-48FP-4G-L 15.2(7)E9にて確認、作成をしております。
本ドキュメントは、以下の構成で、設定・動作確認例を紹介します。
本ドキュメントで使用しているドメイン「ad.rem-xxx.com」は、検証環境のテスト用のドメインです。
マシン認証とは、ネットワークに接続しようとするデバイス(マシン)自体を認証する方法です。この方法では、特定のデバイスがネットワークにアクセスすることを許可または禁止することができます。マシン認証とユーザー認証を組み合わせた二要素認証(2FA)は、ネットワークセキュリティをさらに強化するための効果的な方法です。この方法では、ネットワークにアクセスするデバイスとユーザーの両方を認証することで、より高いレベルのセキュリティを提供します。
これはC1000 CLIでの最小限の設定です。
aaa new-model
radius server ISE33
address ipv4 1.x.x.191
key cisco123
aaa group server radius AAASERVER
server name ISE33
aaa authentication dot1x default group AAASERVER
aaa authorization network default group AAASERVER
aaa accounting dot1x default start-stop group AAASERVER
dot1x system-auth-control
interface Vlan14
ip address 1.x.x.101 255.0.0.0
interface GigabitEthernet1/0/1
switchport access vlan 14
switchport mode access
interface GigabitEthernet1/0/2
switchport access vlan 14
switchport mode access
authentication host-mode multi-auth
authentication port-control auto
dot1x pae authenticator
spanning-tree portfast edge
「Control Panel > System and Security」に移動し、「System > Advanced system settings」ボタンをクリックします。System Propertiesのウィンドウで、「Change」をクリックし、「Domain」を選択してドメイン名を入力します。
Windows Securityのウィンドウで、ドメインサーバーのユーザー名とパスワードを入力します。
「Authentication」に移動し、「Enable IEEE 802.1X authentication」をチェックした後、「Settings」ボタンをクリックします。Protected EAP Propertiesのウィンドウで、「Verify the server's identity by validating the certificate」のチェックを外してから、「Configure」をクリックします。EAP MSCHAPv2 Propertiesのウィンドウで、「Automatically use my Windows logon name and password (and domain if any)」をチェックします。
※Windowsマシンログイン時に入力されたユーザー名を持って、ユーザー認証を行います。
「Authentication > Additional Settings」に移動し、ドロップダウンリストから「User or computer authentication」を選択します。
「Active Directory Users and Computers > Computers」に移動し、Win10 PC1がドメインサーバーに登録されていることを確認します。
「Active Directory Users and Computers > Users」に移動し、testuser をドメインユーザーとして追加します。
追加したドメインユーザー(testuser)を「Domain Admins」と「Domain Users」のメンバーに追加します。
「Administration > Network Devices」に移動し、「Add」ボタンをクリックしてC1000デバイスを追加します。
「Administration > External Identity Sources > Active Directory」に移動し、「Connection」タブでActive Directoryを追加します。
「Groups」タブでドロップダウンリストから「Select Groups From Directory」を選択します。
「Retrieve Groups」をクリックしてから、ad.rem-xxx.com/Users/Domain Computers と ad.rem-xxx.com/Users/Domain Users をチェックして、「OK」をクリックします。
「Advanced Settings」タブでMARの設定を確認します。
※Aging Timeの設定範囲は1から8760までです。
「Administration > Identity Source Sequences」に移動し、Identity Source Sequenceを追加します。
「Policy > Results > Authorization > Downloadable ACLs」に移動し、DACLを追加します。
「Policy > Results > Authorization > Authorization Profiles」に移動し、authorization profileを追加します。
「Policy > Policy Sets」に移動し、「+」をクリックし、policy setを追加します。
「Policy > Policy Sets」に移動し、「MAR_Test」をクリックし、policy setに新しいauthentication policyを追加します。
「Policy > Policy Sets」に移動し、「MAR_Test」をクリックし、policy setに2つのauthorization policyを追加します。
マシン認証が成功した際に使用するauthorization policy:
マシン認証とユーザー認証の両方が成功した際に使用するauthorization policy:
Win10 PC1からサインアウトボタンをクリックし、マシン認証をトリガーします。
「show authentication sessions interface GigabitEthernet1/0/2 details」コマンドを実行して、マシン認証(User-Name: host/DESKTOP-L2IL9I6.ad.rem-xxx.com)のauthentication sessionを確認します。
Switch#show authentication sessions interface GigabitEthernet1/0/2 details
Interface: GigabitEthernet1/0/2
MAC Address: b496.9115.84cb
IPv6 Address: Unknown
IPv4 Address: 1.x.x.9
User-Name: host/DESKTOP-L2IL9I6.ad.rem-xxx.com
Status: Authorized
Domain: DATA
Oper host mode: multi-auth
Oper control dir: both
Session timeout: N/A
Restart timeout: N/A
Periodic Acct timeout: N/A
Session Uptime: 5s
Common Session ID: 01C2006500000049AA780D80
Acct Session ID: 0x0000003C
Handle: 0x66000016
Current Policy: POLICY_Gi1/0/2
Local Policies:
Service Template: DEFAULT_LINKSEC_POLICY_SHOULD_SECURE (priority 150)
Server Policies:
ACS ACL: xACSACLx-IP-MAR_Passed-6639ba20
Method status list:
Method State
dot1x Authc Success
Win10 PC1のログイン画面で、ユーザー名とパスワードを入力し、ユーザー認証をトリガーします。
「show authentication sessions interface GigabitEthernet1/0/2 details」コマンドを実行して、ユーザー認証(User-Name: AD\testuser)のauthentication sessionを確認します。
Switch#show authentication sessions interface GigabitEthernet1/0/2 details
Interface: GigabitEthernet1/0/2
MAC Address: b496.9115.84cb
IPv6 Address: Unknown
IPv4 Address: 1.x.x.9
User-Name: AD\testuser
Status: Authorized
Domain: DATA
Oper host mode: multi-auth
Oper control dir: both
Session timeout: N/A
Restart timeout: N/A
Periodic Acct timeout: N/A
Session Uptime: 85s
Common Session ID: 01C2006500000049AA780D80
Acct Session ID: 0x0000003D
Handle: 0x66000016
Current Policy: POLICY_Gi1/0/2
Local Policies:
Service Template: DEFAULT_LINKSEC_POLICY_SHOULD_SECURE (priority 150)
Server Policies:
Method status list:
Method State
dot1x Authc Success
ISE GUIの「Operations > RADIUS > Live Logs」に移動し、マシン認証とユーザー認証のlive logを確認します。
マシン認証の詳細なログを確認します。
ユーザー認証の詳細なログを確認します。
パターン1の状態で、ユーザー認証をトリガーするために、Win10 PC1のNICを無効にしてから有効にします。
「show authentication sessions interface GigabitEthernet1/0/2 details」コマンドを実行して、ユーザー認証(User-Name: AD\testuser)のauthentication sessionを確認します。
Switch#show authentication sessions interface GigabitEthernet1/0/2 details
Interface: GigabitEthernet1/0/2
MAC Address: b496.9115.84cb
IPv6 Address: Unknown
IPv4 Address: 1.x.x.9
User-Name: AD\testuser
Status: Authorized
Domain: DATA
Oper host mode: multi-auth
Oper control dir: both
Session timeout: N/A
Restart timeout: N/A
Periodic Acct timeout: N/A
Session Uptime: 419s
Common Session ID: 01C2006500000049AA780D80
Acct Session ID: 0x0000003D
Handle: 0x66000016
Current Policy: POLICY_Gi1/0/2
Local Policies:
Service Template: DEFAULT_LINKSEC_POLICY_SHOULD_SECURE (priority 150)
Server Policies:
Method status list:
Method State
dot1x Authc Success
MARキャッシュはISEに保存されているため、ユーザー認証のみが行われます。ISE GUIの「Operations > RADIUS > Live Logs」に移動し、ユーザー認証のlive logを確認します。
ユーザー認証の詳細なログを確認します。マシン認証について、Live Logの「ISE has confirmed previous successful machine authentication for user in Active Directory」の通り、実施されることはありません。
これらのデバッグログ(prrt-server.log)はISE側での認証の詳細な動作を確認するのに役立ちます。
以下は、本ドキュメントの「パターン1:マシン認証(MAR)とユーザー認証(dot1x)」でのdebug logの例です。
// machine authentication
MAR,2024-05-08 16:54:50,582,DEBUG,0x7fb2fd3db700,cntx=0000034313,sesn=ise33-01/504417979/41,CPMSessionID=01C2006500000049AA780D80,user=host/DESKTOP-L2IL9I6.ad.rem-xxx.com,CallingStationID=B4-96-91-15-84-CB,FramedIPAddress=1.x.x.9,MARCache::checkInsertConditions: subject=machine, calling-station-id=B4-96-91-15-84-CB, HostName=DESKTOP-L2IL9I6$@ad.rem-xxx.com,MARCache.cpp:105
// insert MAR cache
MAR,2024-05-08 16:54:50,582,DEBUG,0x7fb2fd3db700,cntx=0000034313,sesn=ise33-01/504417979/41,CPMSessionID=01C2006500000049AA780D80,user=host/DESKTOP-L2IL9I6.ad.rem-xxx.com,CallingStationID=B4-96-91-15-84-CB,FramedIPAddress=1.x.x.9,Inserting new entry to cache CallingStationId=B4-96-91-15-84-CB, HostName=DESKTOP-L2IL9I6$@ad.rem-xxx.com, IDStore=AD_Join_Point and TTL=18000,CallingStationIdCacheHandler.cpp:55
MAR,2024-05-08 16:54:50,582,DEBUG,0x7fb2fd3db700,cntx=0000034313,sesn=ise33-01/504417979/41,CPMSessionID=01C2006500000049AA780D80,user=host/DESKTOP-L2IL9I6.ad.rem-xxx.com,CallingStationID=B4-96-91-15-84-CB,FramedIPAddress=1.x.x.9,MARCache::onInsertRequest: event not locally,MARCache.cpp:134
// user authentication
MAR,2024-05-08 16:55:11,120,DEBUG,0x7fb2fdde0700,cntx=0000034409,sesn=ise33-01/504417979/45,CPMSessionID=01C2006500000049AA780D80,user=AD\testuser,CallingStationID=B4-96-91-15-84-CB,FramedIPAddress=1.x.x.9,MARCache::onQueryRequest: machine authentication confirmed locally,MARCache.cpp:222
MAR,2024-05-08 16:55:11,130,DEBUG,0x7fb2fe5e4700,cntx=0000034409,sesn=ise33-01/504417979/45,CPMSessionID=01C2006500000049AA780D80,user=AD\testuser,CallingStationID=B4-96-91-15-84-CB,FramedIPAddress=1.x.x.9,MARCache::onMachineQueryResponse: machine DESKTOP-L2IL9I6$@ad.rem-xxx.com valid in AD,MARCache.cpp:316
Machine Access Restriction Pros and Cons
分散環境のPSN間でMAR Cacheを共有するための設定
こんにちは。
本投稿の内容は当社で運用中の802.1X認証と酷似しています。
当時は試行錯誤を重ねて何とか実現できましたが、本投稿があればもっと楽に設定できのになと思いました。ただ、当方で設定した内容と本投稿の内容は一致していたので、設定した内容に自信を持つことが出来ました。
検索バーにキーワード、フレーズ、または質問を入力し、お探しのものを見つけましょう
シスコ コミュニティをいち早く使いこなしていただけるよう役立つリンクをまとめました。みなさんのジャーニーがより良いものとなるようお手伝いします
下記より関連するコンテンツにアクセスできます