星期六, 2月 02, 2008

madwifi 行 WPA

Madwifi 內建 WEP 加密,所以自己部 Home Server 一直是用 WEP,不過 WEP 不及 WPA 安全,作天決定升級用 WPA,在網上看了天,最後成功用安娤 Hostapd 提供 WPA 加密。

Hostapd 沒有 rpm 安娤,需要從網上下載 source 來 自己 configure 及 compile。
因只要用 WPA-PSK,所以可在 .config 中 刪去大部份不用的 drivers,這樣可同時減少 compile 時出問題的機會,我的 .config 檔只剩下 statements:

# Driver interface for madwifi driver
CONFIG_DRIVER_MADWIFI=y
CFLAGS += -I/usr/src/madwifi-ng # change to reflect local setup; directory for madwifi src
# IEEE 802.11F/IAPP
CONFIG_IAPP=y
# WPA2/IEEE 802.11i RSN pre-authentication
CONFIG_RSN_PREAUTH=y

建立 .config 檔後隨即執行以下指令 compile:

make clean
make
make install


然後再修改 hostapd package 內的 madwifi.conf 來建立 /etc/hostapd.conf,要修改的 statement 有以下幾條:

ssid=wpa-test (設定 ssid)
#bridge=br0 (remark 因沒有行 bridge)
#eap_server=0 (remark 因沒有 compile EAP server)
wpa=1 (設定行 WPA2)
wpa_passphrase=secret passphrase (設定密碼)
wpa_key_mgmt=WPA-PSK (設定行 WPA-PSK)
wpa_pairwise=TKIP CCMP (設定可用 TKIP 及 CCMP)


Madwifi driver 不用再設定,直接執行以下指今啟動 hostapd 就可以提供 WPA 加密:

/usr/local/bin/hostapd -B /etc/hostapd.conf

我在 rc.local 檔加上以上指今,以後開機就會自動啟動 hostapd。

注意:
1. 在 Windows 建立的 config 檔可能會在 compile 或啟動 hostapd 時產生 errors.
2. 不要用 madiwifi.org 提供的 hostapd.conf scripts,因 hostapd 新 version 有些參數已改了。
3. 新的 Scientific Linux 已不預設提供 madiwifi,所以更新 kernel 後 hostapd 可能執行會有問題,要反安娤 madwifi 後再重娤才可正常運作。

參考
WPA on madwifi: AP & Station
hostapd

沒有留言: