Please Rate this Document

Configuration Guide on EAP-TLS authentication for WPA-Enterprise (with FreeRADIUS)

Knowledgebase
FAQ
WPA-Enterprise
RADIUS
EAP-TLS
2022-10-21
17

用戶端情境

Extensible Authentication Protocol (EAP 可延伸的驗證通訊協定) 是網路連線中常使用的身份驗證框架。WPA-Enterprise 標準採用 IEEE 802.1X (具備多種 EAP 類型) 作為身份驗證機制的規範。IETF RFCs 定義的 EAP 方法有很多,例如 EAP-MD5、EAP-POTP、EAP-GTC、EAP-TLS、EAP-IKEv2 等。本文將佈屬一個 RADIUS (Remote Authentication Dial In User Service) Server 使用 EAP-TLS 方式實現 WPA-Enterprise 身份驗證。

備註:

本案例用於驗證和測試使用,如您要將 RADIUS 服務應用於企業或商業場景,請諮詢專業機構。

FreeRADIUS 是 GPLv2 認證許可下的開源 RADIUS 服務,網址可參考:github.com.

 

設定

 

步驟 1. 在 Linux 上安裝 FreeRADIUS

有關 FreeRADIUS’s 安裝包指引,可參考 FreeRADIUS Packages | NetworkRADIUS。您可以參照以下網址內容的原始碼進行建置,以確保正確的安裝:github.com。如在以下過程中發現 RADIUS 出現錯誤,例如無法啟動或處理任何請求,請檢查是否有正確安裝。

本安裝指引運行環境:Ubuntu 22.04 LTS with FreeRADIUS 3.2 (apt-installed)

 

步驟 2. 編輯 FreeRADIUS 用戶端設定

在預設情況下,FreeRADIUS 3.2 是安裝在 /etc/freeradius/ 路徑底下。

首先,將您的 AP 加到設定檔中,以讓 FreeRADIUS 可以透過 AP 發送身份驗證的請求。開啟 terminal 並執行以下指令:

$ sudo nano /etc/freeradius/clients.conf

將以下內容加入設定檔中:

client AP1 { #’AP1’ is the alias of your access point

ipaddr = 192.168.0.100/24 #The IP address of AP1

secret = testing123

#The ’secret’ will be the ‘Authentication Password’

#in Omada Controller’s RADIUS profile settings

}

備註:有關 WPA-Enterprise 加密,EAPs 並不像控制器為RADIUS的用戶端之一,因此請確認所有 EAPs 的 IP 都包含在 clients.conf 設定檔內。

接著按下 Ctrl+X 儲存檔案。

 

步驟 3. 編輯 FreeRADIUS EAP 設定以啟用 TLS

編輯 EAP 設定

$ sudo nano /etc/freeradius/mods-enabled/eap

找到 eap 字串範圍後,將 default_eap_type 修改為 tls 如下:

eap{

default_eap_type = tls

接著按下 Ctrl + X 鍵儲存檔案。

 

Step 4. 建立憑證

FreeRADIUS 透過 OpenSSL 建立憑證。設定檔及 CAs 路徑為 /etc/freeradius/certs。首先請先到該目錄下:

$ sudo -s

$ cd /etc/freeradius/certs

請注意,您需要在每次重新建立前清除所有 CAs,否則 openssl 將會提示 "Nothing to be done",並且不會產生新的 CAs。請依照以下指令刪除現有的檔案:

$ rm -f *csr *key *p12 *pem *crl *crt *der *mk *txt *attr *old serial dh

您可以編輯與 *.cnf 相關的檔案以符合您的需求。在此我們只是將其保留為預設值以進行測試,在清除 CAs 後,執行 make 指令建立新的 CAs。

$ make

 

步驟 5. 啟用 FreeRADIUS server

您可以透過以下指令,讓 FreeRADIUS server 在附帶 log 的 debug 模式下運行:

$ sudo freeradius -X

輸出的資訊應如下所示,一旦出現 "Ready to process requests",即代表 FreeRADIUS server 已正確啟動。

 

步驟 6. 配置無線網路的認證設定

在此步驟中,您要將無線網路的安全性指定為 WPA-Enterprise,並設定 RADIUS profile。RADIUS server 的 Authentication 密碼為 "testing123",設定於 /etc/freeradius/clients.conf。Authentication Server IP 為您的 RADIUS server IP,Authentication port 為 RADIUS 服務預設的 1812。

假如您使用 Omada 控制器,可參考 Omada SDN Controller User Guide | TP-Link Chapter 4.4.1--> WPA-Enterprise

假如您使用 EAP 的獨立模式,可參考 configuring_eap_standalone_eap (tp-link.com) Chapter 2.2 Config SSIDs--> WPA-Enterprise。

 

步驟 7. 安裝用戶端憑證及驗證身份

將產生的 ca.der 和 client.p12 檔(步驟4) 複製到有無線裝置的用戶端電腦或筆電。請留意,有部份智慧行動裝置因為相容性較低,故在安裝 CAs 時可能會發生 errors,您可藉由 Windows PC 進行以下測試。

在 Windows 10/11 安裝 CAs 並依步驟操作。如您是用 Windows 7 作業系統,由於相容性議題您可能無法安裝 CAs。

安裝 ca.der:

 

接著安裝 client.p12。請注意私鑰 private key 的密碼為預設的 "whatever" (如您沒有變更設定檔 /etc/freeradius/certs/*.cnf)。

 

步驟 8. 使用憑證連線至 SSID 

Windows11 作業系統:

在 WLAN settings --> 尋找您的 SSID --> 點擊 Connect --> Connect using a certificate。接著您將藉由 EAP-TLS 模式連接至無線網路。您可由 RADIUS server 的終端輸出服務確認 logs 內容。

 

Windows10 作業系統:

在 Control Panel (控制台) --> Network and Internet (網路和網際網路) --> Network and Sharing Center (網路和共用中心) -->Set up a new connection or network (設定新的連線或網路)

選擇 Manually connect to a wireless network (手動連線到無線網路),並點擊 Next。

填入您的 網路名稱 (SSID),選擇安全性類型為 WPA2-Enterprise,並點擊 Next。

點擊變更連線設定。

切換至 Security 頁籤 --> 在 Choose a network authentication method (選擇一個網路身份認證模式),選擇 Microsoft: Smart card or other certificate,完成後點擊 settings

取消勾選 "Verify the server’s identity by validating the certificate" (透過憑證來驗證伺服器的身份) ,並將所有彈出視窗點擊 OK。.

在 WLAN 設定,您可以使用 connect the SSID using a certificate (使用憑證連線至 SSID )

 

取得更詳細功能及設定內容,可至 Download Center 下載產品手冊。

Related Documents