不少企業在公司內部網路,使用802.1x Network Authentication,在配上微軟的Windows AD網域來做網路的管理,筆者近來比較頻繁接觸Debian系列的Linux,也遇上了與802.1x Network Authentication進行企業網路認證的問題,因此看了幾個網路上得方法,筆者也選用了其中一種使用,並將筆者的小小經驗寫出來,此篇主要是討論LAN為主。
1. $ sudo dpkg -l wpasupplicant <=查詢系統是否已安裝此套件
2. 如果出現已安裝,則進行步驟三,如果為安裝則請跳至步驟四
3. $ sudo killall wpa_supplicant & sudo dpkg --purge wpasupplicant
4. $ sudo apt-get update & sudo apt-get install wpasupplicant
5. $ sudo vim /etc/wpa_supplicant/wpa_supplicant.conf <= 編輯設定檔,如無設定檔,可從/usr/share/doc/wpasupplicant/examples裡取得ieee8021x.conf範例檔
6. wpa_supplicant.conf修改內容如下
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=0
eapol_version=2
ap_scan=0 <= 在一般LAN,非無線網路因此可以將AP掃描停用
network={
key_mgmt=IEEE8021X
eap=PEAP (PEAP為預設,另有TTLS/MD5等)
phase1="auth=MSCHAPV2" <= phase1依需求設定,有些不需此設定
phase2="auth=MSCHAPV2" <= phase2依需求設定,有些不需此設定
identity="網域\帳號" <= 網域\使用者帳號
password="認證密碼" <= 使用者帳號的密碼
eapol_flags=3
ca_cert="/etc/cert/ca.pem" <=無ca.pem則可將ca_cert給註解掉,在前面加#
}
7. $ sudo vim /etc/network/interfaces <=修改interfaces設定,設定需使用wpa_supplicant的介面卡
8. 在這邊是以eth0為範例
iface eth0 inet dhcp(static) <= 在此下面加入下列兩行
wpa-driver wired
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
9. $ sudo /etc/init.d/networking stop & sudo /etc/init.d/networking start <= 停止並再次啟動網路
10. 如wpa_supplicant.conf與interfaces內的設定無誤(網域/帳號/密碼),仍無法連上有802.1x Network Authentication的網路,可參考步驟10之後的內容
11. $ cd /home/xxxx <= xxxx是你在系統上的家目錄
12. $ sudo vim xxx.sh <= xxx可自己設定,以下為文件內容
#!/bin/bash
PATH = /bin:/sbin:/usr/bin:/usr/sbin:~/bin export PATH
sudo -l
rm -r -f /home/xxxx/tcpdump.txt
sudo /etc/init.d/./networking restart
sudo sleep 1
sudo tcpdump -i eth0 -c 5 -a > tcpdump.txt <= eth0的部份,則看是哪個介面連上公司區網就設定那個, eth1,eth2...等
sudo dhclient eth0 <= eth0的部份,則看是哪個介面連上公司區網就設定那個, eth1,eth2...等
exit 0
13. 存檔離開 & $ sudo chmod +x xxx.sh
14. $ sudo /home/xxxx/./xxx.sh
15. 等待約1mins, 應該就可以連上有802.1x Network Authentication的公司網路