簡介:
802.1x協議起源於802.11協議,後者是標準的無線局域網協議,802.1x協議的主要目的是爲了解決無線局域網用戶的接入認證問題。現在已經開始被應用於一般的有線LAN的接入。爲了對端口加以控制,以實現用戶級的接入控制。802.1x就是IEEE爲了解決基於端口的接入控制(Port-Based Access Control)而定義的一個標準。
1、802.1X首先是一個認證協議,是一種對用戶進行認證的方法和策略。
2、802.1X是基於端口的認證策略(這裏的端口可以是一個實實在在的物理端口也可以是一個就像VLAN一樣的邏輯端口,對於無線局域網來說個“端口”就是一條信道)
3、802.1X的認證的最終目的就是確定一個端口是否可用。對於一個端口,如果認證成功那麼就“打開”這個端口,允許文所有的報文通過;如果認證不成功就使這個端口保持“關閉”,此時只允許802.1X的認證報文EAPOL(Extensible Authentication Protocol over LAN)通過。
802.1x 的體系結構
使用802.1x的系統爲典型的Client/Server 體系結構,包括三個實體:Supplicant
System(客戶端)、Authenticator System (設備端)以及Authentication Server
System(認證服務器),如下圖所示。
(1)客戶端是位於局域網段一端的一個實體,由連接到該鏈接另一端的設備端對其進行認證。客戶端一般爲一個用戶終端設備,用戶通過啓動客戶端軟件發起802.1x認證。客戶端軟件必須支持EAPOL (EAP over LANs,局域網上的EAP)協議。
(2)設備端是位於局域網段一端的一個實體,用於對連接到該鏈接另一端的實體進行認證。設備端通常爲支持802.1x協議的網絡設備它爲客戶端提供接入局域網的端口,該端口可以是物理端口,也可以是邏輯端口。
(3)認證服務器是爲設備端提供認證服務的實體。認證服務器用於實現用戶的認證、授權和計費,通常爲 RADIUS 服務器。該服務器可以存儲用戶的相關信息,例如用戶的賬號、密碼以及用戶所屬的 VLAN、優先級、用戶的訪問控制列表等。
802.1x 的工作機制
IEEE 802.1x 認證系統利用EAP(Extensible Authentication Protocol ,可擴展認證
協議)協議,作爲在客戶端和認證服務器之間交換認證信息的手段。
(1)在客戶端PAE 與設備端PAE 之間,EAP 協議報文使用 EAPOL封裝格式,直接承載於LAN 環境中。
(2)在設備端PAE 與RADIUS 服務器之間,EAP協議報文可以使用 EAPOR 封裝格式(EAP over RADIUS),承載於RADIUS 協議中;也可以由設備端PAE進行終結,而在設備端PAE與RADIUS 服務器之間傳送PAP協議報文或CHAP 協議報文。
(3)當用戶通過認證後,認證服務器會把用戶的相關信息傳遞給設備端,設備端PAE根據RADIUS 服務器的指示(Accept或Reject )決定受控端口的授權非授權狀態。
下面我呢介紹一個802.1x案例:
802.1x 提供了一個用戶身份認證的實現方案,爲了實現此方案,除了配置802.1x
相關命令外,還需要在交換機上配置AAA方案,選擇使用 RADIUS 或本地認證方
案,以配合802.1x 完成用戶身份認證:
步驟說明
(1)802.1x 用戶通過域名和交換機上配置的ISP 域相關聯。
(2)配置ISP 域使用的 AAA 方案,包括本地認證方案和RADIUS 方案。
(3)如果採用RADIUS 方案,通過遠端的RADIUS 服務器進行認證,則需要在RADIUS 服務器上配置相應的用戶名和密碼,然後在交換機上進行RADIUS客戶端的相關設置。
(4)如果是需要本地認證,則需要在交換機上手動添加認證的用戶名和密碼,當用戶使用和交換機中記錄相同的用戶名和密碼,啓動802.1x客戶端軟件進行認證時,就可以通過認證。
(5)也可以配置交換機先採用RADIUS 方案,通過RADIUS 服務器進行認證,如
果RADIUS 服務器無效,則使用本地認證。
[Quidway]dot1x 在全局下開啓dot1x
802.1X is enabled globally.
[Quidway]interface Ethernet 1/0/10 在接口下開啓dot1x,必須在接口下開啓纔有用
[Quidway-Ethernet1/0/10]dot1x
802.1X is enabled on port Ethernet1/0/10.
[Quidway]radius scheme radius10 創建RADIUS 方案radius1 並進入其視圖
[Quidway-radius-radius10]primary authentication 192.168.30.100 設置驗證的服務器地址
[Quidway-radius-radius10]accounting optional 審計這裏我們用不上,我們設置成審計可選
[Quidway-radius-radius10]server-type standard 設置驗證的服務器類型standard(標準的)
[Quidway-radius-radius10]key authentication 123456 RADIUS服務器驗證密鑰,和服務器一致
[Quidway-radius-radius10]user-name-format without-domain 不發送域名
[Quidway]domain 111.com 新建一個域111.com
New Domain added.
[Quidway-isp-111.com]radius-scheme radius10 在這個域裏面引用radius1的方案
[Quidway-isp-111.com]accounting optional 設置一下來自於域的設計選項,我們選擇可選
我們想實現控制一個域裏面的用戶數量
[Quidway-isp-111.com]access-limit enable 10 限制域的用戶數量爲10
下面我們要設置驗證服務器了
既然我們做了集中的身份驗證,那需要在服務器上有用戶的數據庫
我們來新建一個用戶
帳號qaz
密碼654321
下面來創建一個RADIUS客戶端 這裏我設置的是交換機,共享密鑰設置爲123456
好了 配置已經完成了,下面我們來測試一下
現在PC之間的訪問肯定是不會通信的,因爲沒通過dot1x認證
我們用華三的802.1X客戶端連接
我們來看下Windows的日誌
下圖可以看到已經允許qaz用戶的訪問
至此我們的dot1x驗證已經做好了
爲了讓用戶獲得IP地址 這裏我們可以在配置一臺DHCP,DHCP服務器已經搭建好了
DHCP服務器地址:192.168.20.254
地址範圍:192.168.20.5-----192.168.20.253
用Linux搭建的