配置wifi爲AP模式 -- 接入點hostapd基本配置



hostapd是一個帶加密功能的無線接入點程序,是Linux操作系統上構件無線接入點的一個比較方便的工具,支持IEEE 802.11協議和IEEE 802.1X/WPA/WPA2/EAP/RADIUS加密。


對於 hostapd,最關鍵的一步就是配置hostapd的配置文件了。源程序裏面包含了一個hostapd.conf文件(選項解釋),這個文件很大,裏面的配置項相當的多,從簡單到高級。但一般地我們能夠使用到的功能只是其中很少的一部分,下面介紹一下我認爲最常用的一些配置選項。首先介紹一些基本的配置項:


-------------------------------------- 基本配置 如下: -----------------------------------------

ssid=mytest
hw_mode=g
channel=10
interface=wlan0
bridge=br0
driver=nl80211
ignore_broadcast_ssid=0
macaddr_acl=0
accept_mac_file=/etc/hostapd.accept
deny_mac_file=/etc/hostapd.deny

-------------------------------------------------------------------------------


上面列出的配置基本上是必須的,其中:

  • ssid:別人所看到的我們這個無線接入點的名稱;
  • hw_mode:指定802.11協議,包括 a = IEEE 802.11a, b = IEEE 802.11b, g = IEEE 802.11g;
  • channel:設定無線頻道;
  • interface:接入點設備名稱,注意不要包含ap後綴,即如果該設備稱爲wlan0ap,填寫wlan0即可;
  • bridge:指定所處網橋,對於一個同時接入公網、提供內部網和無線接入的路由器來說,設定網橋很有必要;
  • driver:設定無線驅動,我這裏是nl80211;
  • macaddr_acl:可選,指定MAC地址過濾規則,0表示除非在禁止列表否則允許,1表示除非在允許列表否則禁止,2表示使用外部RADIUS服務器;
  • accept_mac_file:指定允許MAC列表文件所在;
  • deny_mac_file:指定禁止MAC列表文件所在;

下面介紹關於認證方式的配置:

auth_algs=1

其中auth_algs指定採用哪種認證算法,採用位域(bit fields)方式來制定,其中bit 0表示開放系統認證(Open System Authentication, OSA),bit 1 表示共享密鑰認證(Shared Key Authentication, SKA)。我這裏設置alth_algs的值爲1,表示只採用OSA;如果爲3則兩種認證方式都支持。不過很奇怪的是,在我工作中如果配置了3,不管採用WEP/WPA/WP2加密的方式都從沒連接成功過,配置爲2也是如此。所以在我的配置當中,如果採用認證,則設置auth_algs爲1;否則把這行代碼註釋掉(在前面加#)。


由於RADIUS認證需要提供外部RADIUS服務器,我們沒有這個功能,因此我只研究了WEP、WPA和WPA2這三種加密方式。


#wep_default_key=0
#wep_key0=1234567890
#wep_key1="vwxyz"
#wep_key2=0102030405060708090a0b0c0d
#wep_key3=".2.4.6.8.0.23"
#wep_key_len_broadcast=13
#wep_key_len_unicast=13
#wep_rekey_period=300


如果要啓用WEP加密,只需配置wep_default_key和其中一個wep_keyx,其中x的值只能在0~3之間,wep_default_key的值必須啓用了。注意wep_keyx的值不是任意的,只能是5、13或16個字符(用雙引號括住),或者是10、26或32個16進制數字。由於WEP加密算法已經被破解了,所以通常不啓用它,全部註釋掉。

wpa=2
wpa_passphrase=12345678
wpa_key_mgmt=WPA-PSK
#wpa_pairwise=TKIP CCMP
rsn_pairwise=CCMP

現在推薦的加密方式是WPA/WPA2,配置是很簡單的:

  • wpa:指定WPA類型,這是一個位域值(bit fields),bit 0表示啓用WPA,bit 1表示啓用WPA2。在我的配置中,置成2 可以正常連接;
  • wpa_passphrase:WPA/WPA2加密需要指定密鑰,這個選項就是配置WPA/WPA2的密鑰。注意wpa_passphrase要求8~63個字符。另外還可以通過配置wpa_psk來制定密鑰,不過要設置一個256位的16進制密鑰,不適合我們的需求;
  • wpa_pairwise/rsn_pairwise:如果啓用了WPA,需要指定wpa_pairwise;如果啓用了WPA2,需要指定rsn_pairwise,或者採用wpa_pairwise的設定。都可以設定成TKIP、CCMP或者兩者都有,具體含義我也沒仔細弄清楚。


上述配置完成以後,在終端執行hostapd /etc/hostapd/hostapd.conf -B(-B是需要在後臺運行的時候添加),到這裏,怎表明了第一個過程結束了,
也就是,我們在手機終端上可以搜索到 mytest這個接入點但是無法連接到這個接入,應該此時出現的情況是:正在獲取IP地址,接下來給終端分配IP

















發佈了369 篇原創文章 · 獲贊 587 · 訪問量 533萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章