802.1X自己並不算太難,確切的說命令的繁瑣,實驗環境難以搭建(虛擬機+物理交換機)。是讓人比較難入門的門檻。我也沒有物理交換機,但畢竟配置只要貼在blog裏面就好了。ISE和802.1x的概念仍是能夠操做複習下的。html
一 交換機的推薦配置
文檔能夠參考,是個美國思科的SE寫的:
http://www.network-node.com/blog/2015/12/30/switch-configuration-for-dot1x
official document
https://www.cisco.com/c/en/us/support/docs/security/identity-services-engine/116143-config-cise-posture-00.htmlnode
我從新整理一遍web
aaa new-model數據庫
aaa authenticatoin dot1x default group ISE
aaa authorization network default group ISE
aaa accouting dot1x start-stop group ISE服務器
(命令格式與tacacs+很是類似,記住default是對全部支持802.1x的接口開啓認證,其實就是access口,思科又來缺心眼,authorization來個network是什麼鬼?)網絡
aaa group server radius ISE
server-private 192.168.133.11 key cisco123app
aaa server radius dynamic-author
client 192.138.133.11 key cisco123less
ip radius source-interface loopback 0dom
dot1x system-auth-controltcp
device-tracking tracking 3750/3850彷佛有點不一樣
radius-server vsa send authentication
radius-server vsa send accounting
radius-server attribute 6 on-for-login-auth // sends Service-Type attribute in access request
radius-server attribute 8 include-in-access-req // send Framed-IP-address attribute
radius-server attribute 25 access-request include // send Class attribute in access request
ip access-list extended ACL-DEFAULT
remark DHCP
permit udp any eq bootpc any eq bootps
remark DNS
permit udp any any eq domain
remark PING
permit icmp any any
remark TFTP
permit udp any any eq tftp
remark Drop ALL
deny ip any any log
ip access-list extended Web-Redirect
deny udp any any eq domain
deny udp eq bootpc any eq bootps
deny tcp any any eq 8905
deny udp any any eq 8905
deny tcp any any eq 8909
deny udp any any eq 8909
deny tcp any any eq 8443
permit ip any any
ip http server
ip http secure-server
查了下文檔,教主的課件有個端口8906其實已經不須要了。
https://www.cisco.com/c/en/us/support/docs/security/identity-services-engine/116143-config-cise-posture-00.html
UDP/TCP 8905: Used for posture communication between NAC Agent and ISE
UDP/TCP 8909: Used for client provisioning.
TCP 8443: Used for guest and posture discovery.
access port
int gi 1/0/22
switchport mode access
switchport access vlan 10
spanning-tree portfast
device-tracking //3850/3650平臺須要在接口下有這條命令,之前確定沒有
ip access-group ACL-DEFAULT in //默認放行的ACL,和authentication open一塊兒使用
authentication open //認證不通都能打開物理接口,可是無受權流量由默認ACL控制
authentication event fail action next-method
authentication event server dead action authorize vlan 999
authentication event server alive action reinitialize
authentication host-mode multi-auth
authentication order dot1x mab
authenticatino priority dot1x mab
authentication port-control auto
authentication violation restrict
mab
dot1x pae authenticator
二 MAB和802.1x概念
抄幾段話:
官方有一份講MAB很是詳細的文檔,我截取些關鍵點
High level MAB authentication sequence,能夠看出認證過程就是交換機發送request identity多達3次,當802.1x timeout以後開始進行mab地址認證
-
-一個典型的MAB包,注意service-type=call-check NAS-Port-Type=Ethernet 注意username是明文的,因此實際上很好欺騙的
-ISE端默認的MAB匹配條件
記住在ISE中,全部的endpoint無論你是否獲得受權,MAC地址都是能夠被ISE記錄下來的。之後會有profiling將這些終端進行分組,咱們就能夠根據這個組來進行受權了。
三 802.1x
先說幾種認證方式,EAP-MD5(不詳細講了,生產環境不部署,考試也不考),PEAP(MS-CHAPv2),EAP-TLS,EAP-FAST
首先說下EAP,extensible authentication protocol,國外有個印度無線大神,他的blog寫的很是的好。我直接借用他的圖片。
普通EAP,沒啥參考價值
PEAP (MS-CHAPv2)
這種認證方式要求ISE須要有CA簽發的證書,客戶端須要信任CA的根證書。若是須要作機器認證,那就須要在客戶端上配有computer certificate而且ISE須要導入CA根證書。
配置演示
首先先縮小可使用的協議範圍:
記住hostlookup 和PAP/ASCII是留着給MAB作保底用的,因此不能刪除。
authorization profile
這個排版是醜。。。
附帶客戶端的配置:
smartcart or certifcate指的其實就是EAP-TLS,右邊的additional setting裏面是指機器認證和用戶認證同時進行。
EAP-TLS,
這種認證方式要求ISE和客戶端都有CA的根證書,本質上就是使用證書的雙向認證。
注意,EAP-TLS也是支持機器認證的。
ISE段policy sets裏面的東西幾乎大同小異,惟一不一樣的是identity source。由於是使用證書認證,那就得建立一個certificate profile。
EAP-FAST (felxible authenticatino via secure tunnel)
這種認證方式必須得在客戶端安裝anyconnect NAM組件。固然有了anyconnect以後,能夠支持如今這三種主流的認證技術。須要指出的是,EAP-FAST是ISE推了一個PAC文件到客戶端,搭建TLS tunnel。
三 無線dot1x
無線沒啥項目經驗,只是作過些實驗。摸着石頭過河吧。
首先WLC一個重要概念,port和interface。port指的是物理接口,而interface是一個邏輯概念。
思科的官網一個圖片解釋的很清楚,一個port能夠鏈接這交換機的trunk接口。一個咱們本身配置的dynamic interface 對應一個vlan,同時和WLAN SSID之間的mapping關係也是咱們本身配置的。
至於AP如何找到並和WLC創建capwap tunnel,這是無線的內容。通常咱們用option 43。
建立一個dynamic interface,在flexconnect其實未必須要
認證方式默認實際上是802.1x,能夠改爲
AP啓用flexconnect模式
因爲沒有AP,沒辦法截圖。主要就是AP 模式切換成flexconnect,在flexconnect裏面配置vlan mapping,AP地址須要使用native vlan。(這些配完以後,使用PSK實際上就能夠通訊了)
接下來配置radius服務器
記得須要enable CoA
添加審計Radius
接下來就是修改flexconnect ACL。記住WLC此時對於ISE就是一臺NAD,交換機上的相似的一些列表,也須要在WLC上進行配置。由於咱們使用的是flexconnect,因此配置的也是FlexConnect ACL。
兩條ACL,一個permit all 一個basic traffic,放行DHCP,DNS,CAPWAP和ICMP流量
咱們須要在flexconnect group裏面啓用這些個ACL,在紅圈的地方添加AP
須要調用這條basic-traffic ACL到某一個特定的AP,老樣子,沒辦法截圖。
接下來去WLAN,修改認證的屬性。
記住ISE NAC,其實就是讓這個WLAN支持CoA
添加一個SNMP,這個主要仍是給profiling用的,radius的受權仍然只要通過radius就能夠。
接下來ISE端的配置。。
首先就是NAD,SNMP,如上,其實就是給profiling作準備的。802.1x其實意義不大。
主要看看authorization profile,不像交換機,有DACL或者ACL須要配置。Wireless 802.1x就是一個airos 的ACL和VLAN。
policy set的匹配條件主要就是wireless_802.1x和WLC的location,device type等等
記得在查看受權結果的時候應該去WLC查看client
四 Web authentication for guest
web authentication 就是專門爲guest 服務而設置的。
當一個endpoint鏈接到咱們網絡的時候,由於他既不支持dot1x,MAC地址也不在ISE的數據庫中,當MAB 超時以後,咱們配置的ISE策略會讓他自動掉落到最後一條策略。因此咱們在看到ISE預配的MAB策略中,有個continue
web authentication其實在ISE端是個二次認證的過程。第一次,客戶會在一個默認的VLAN環境下,獲得一個網頁進行認證,同時獲得一條Web Redirect ACL(在交換機內配置)以及一條DACL。記住web authentication是種三層認證方式。
另外,這個youtube vod
https://www.youtube.com/watch?v=Zb6uTmzsSAE
講了一下web authentication的flow。前面十分鐘頗有借鑑意義。基本上解釋了當MAB過期以後他會發送一個authentication passed 回給NAD,同時受權結果是個網頁。
當客戶收到這個網頁以後,會登記本身的信息,產生一個guest帳戶,而後再作一次認證。
說下posture_remediation 這條DACL。這條DACL是和web redirect一塊兒做爲結果推送給NAS的。
permit udp any any eq domain
permit icmp any any
permit tcp any host 192.168.133.11 eq 8905
permit udp any host 192.168.133.11 eq 8905
permit tcp any host 192.168.133.11 eq 8909
permit udp any host 192.168.133.11 eq 8909
permit tcp any host 192.168.133.11 eq 8443
permit tcp any any eq 80
permit tcp any any eq 443
ip access-list extended Web-Redirect
deny udp any any eq domain
deny udp eq bootpc any eq bootps
deny tcp any any eq 8905
deny udp any any eq 8905
deny tcp any any eq 8909
deny udp any any eq 8909
deny tcp any any eq 8443
permit ip any any
全部在posture被permit的和redirect ACL中被redirect的,尤爲是DNS,須要注意。
咱們能夠看到在推送受權結果的時候,還有一個self-registered-portal
以此類推,咱們也須要在WLC配置一條相似的flexconnect ACL(注意:我這裏是central web authentication,central 的意義在因而由ISE推送認證頁面,至於identity source仍然是能夠在WLC或者交換機本地的,固然實際上沒人會這麼作)。
這個portal是在Guest Access裏面配置的。
點進去配置
這兩個要剔除,由於這是BYOD的東西。
能夠自定義Guest Type
進入sponsor portal修改
點擊Sponsor Groups,咱們看到有三種能夠選擇
ALL_ACCOUNTS: 可以管理全部的guest 帳戶
GroupAccounts: 可以管理由這個組的用戶所建立的Guest 帳戶
OwnAccounts:只可以管理有這個用戶建立的guest 帳戶
在部署過程當中,其實這些就用系統預配的就能夠了。
這裏由於是guest,因此通常就能夠只要上到網頁就好了,固然實際能夠調優,好比要收郵件等等。
WLC和flexconnect group配置ACL
兩個受權結果,一個有線一個無線
受權策略,
另外吐槽一下,這個identity group我找了半天。。。。
WLC端的認證方式須要修改。須要注意的是WLC,dot1x MAB 和web authentication是相互矛盾的。網頁認證屬於三層認證方式,因此拿到了ip地址以後通常受權結果也只有ACL
須要vlan,由於受權不會推送vlan
禁用二層認證,mac filtering就是MAB
802.1X MAB 網頁認證訪客就暫時講到這裏。。。好多東西,仍是把證書拆出來說。