標籤:des style blog http io ar color os 使用
NIXCRAFT發表於2012年8月25日,在2014年7月9日更新,適用DEBIAN / UBUNTU, 網路, UBUNTU LINUX, 無線網路。
我們有個閑置的USB無線適配器(WIFI適配器),而我們的ISP路由器卻是有線。怎樣把我們的家庭NAS伺服器變成無線訪問點(WAP),在不用買額外的WPA盒子的情況下,在Debian或Ubuntu系統下使用無線裝置訪問到它?
你需要使用hostapd作為訪問點和證明伺服器。它實現了IEEE 802.11訪問點管理,IEEE802.1X/WPA/WPA2/EAP授權,RADIUS用戶端,EAP伺服器和RADIUS授權伺服器。最新版本支援Linux:
1、Host AP
2、madwifi
3、mac80211-based
你可以使用USB或PCI/Mini-PCI介面的網卡。請注意不是所有的網卡活驅動支援AP模式。
案例安裝
1、wlan0 - 串連到Linux的無線PCI或USB裝置,在AP模式裡能夠使用a/b/g和WPA2。
2、eth0 - 有線網卡,連接埠串連於尚有路由器或交換器,具有internet訪問。
案例網路
Internet \ |\ +------------+ RJ-11/ADSL-線路 \-----+ ISP 路由器 | +--------+ +------------+ RJ-45 (eth0) -------+ 交換器| 192.168.1.2 +--------+ 有 DNS/DHCPD | 服務 + +----> 筆記本無線 防火牆 | +----> 家庭 nas 伺服器 無線網卡 wlan0 和 eth0 有線網卡 | 配置 192.168.1.11 靜態 IP +----> 台式機有線 | +----> HP 印表機有線 | +----> Andriod 平板無線 | +----> Andriod 手機無線等
步驟1: 安裝hostapd
輸入命令:# apt-get install hostapd
輸出樣本:
Reading package lists... DoneBuilding dependency treeReading state information... DoneThe following NEW packages will be installed: hostapd0 upgraded, 1 newly installed, 0 to remove and 15 not upgraded.Need to get 346 kB of archives.After this operation, 877 kB of additional disk space will be used.Get:1 http://debian.osuosl.org/debian/ squeeze/main hostapd amd64 1:0.6.10-2 [346 kB]Fetched 346 kB in 2s (151 kB/s)Selecting previously deselected package hostapd.(Reading database ... 267669 files and directories currently installed.)Unpacking hostapd (from .../hostapd_1%3a0.6.10-2_amd64.deb) ...Processing triggers for man-db ...Setting up hostapd (1:0.6.10-2) ...
步驟2: 配置hostadp
編輯 /etc/default/hostapd,鍵入:
# vi /etc/default/hostapd
去掉DAEMON_CONF 前的注釋,並設定它的值為hostapd設定檔的絕對路徑,這樣hostapd會隨系統一起啟動:
DAEMON_CONF="/etc/default/hostapd.conf"
儲存,關閉檔案。接著建立一個文字檔: /etc/hostapd/hostapd.conf,鍵入:
設介面名稱:
### Wireless network name ###interface=wlan0 ### Set your bridge name ###bridge=br0
設驅動名稱
driver=nl80211
設國家名稱代碼,格式遵循ISO/IEC 3166-1格式。這樣做用來設定管理域。根據需要設定,以說明裝置在哪個國家操作。這會限定可用的頻道和發射功率。
### (IN == INDIA, UK == United Kingdom, US == United Stats and so on ) ###country_code=IN
設定你的SSID:
ssid=nixcraft
設定操作模式(a=IEEE 802.11a, b = IEEE 802.11b, g = IEEE 802.11g):
hw_mode=g
設定頻道(有的驅動僅使用值0):
channel=6
設定wpa模式為2:
wpa=2
設定你的密碼短語(Wifi串連密碼):
wpa_passphrase=MyWiFiPassword
為WPA2設定密鑰和認證管理選項
## 密鑰管理演算法 ##wpa_key_mgmt=WPA-PSK ## Set cipher suites (encryption algorithms) #### TKIP = Temporal Key Integrity Protocol## CCMP = AES in Counter mode with CBC-MACwpa_pairwise=TKIPrsn_pairwise=CCMP ## 共用密鑰認證 ##auth_algs=1 ## 接受所有mac訪問 ###macaddr_acl=0
儲存並關閉這檔案。
我怎樣啟動/停止/重啟AP?
使用下列命令:
# /etc/init.d/hostapd start
# /etc/init.d/hostapd stop
# /etc/init.d/hostapd restart
步驟3: 配置 /etc/network/interfaces
你可以使wlan0工作於獨立模式,也可以把它橋接於eth0。橋接模式允許你的無線用戶端訪問其他的LAN,而且你能夠串連到internet。大多數使用者把無線介面橋接到AP有Internnet串連的介面上。
設定br0(wlan0+eth0)為橋接模式
需要安裝bridge-utils包來配置Linux網卡橋接:
# apt-get install bridge-utils
輸出:
Reading package lists... DoneBuilding dependency treeReading state information... DoneThe following NEW packages will be installed: bridge-utils0 upgraded, 1 newly installed, 0 to remove and 15 not upgraded.Need to get 32.7 kB of archives.After this operation, 176 kB of additional disk space will be used.Get:1 http://debian.osuosl.org/debian/ squeeze/main bridge-utils amd64 1.4-5 [32.7 kB]Fetched 32.7 kB in 1s (25.5 kB/s)Selecting previously deselected package bridge-utils.(Reading database ... 267692 files and directories currently installed.)Unpacking bridge-utils (from .../bridge-utils_1.4-5_amd64.deb) ...Processing triggers for man-db ...Setting up bridge-utils (1.4-5) ...
編輯 /etc/network/interfaces, 輸入:
# vi /etc/network/interfaces
修改,或設定其配置如下:
auto lo br0iface lo inet loopback # wireless wlan0allow-hotplug wlan0iface wlan0 inet manual # eth0 connected to the ISP routerallow-hotplug eth0iface eth1 inet manual # Setup bridgeiface br0 inet static bridge_ports wlan0 eth0 address 192.168.1.11 netmask 255.255.255.0 network 192.168.1.0 ## isp router ip, 192.168.1.2 also runs DHCPD ## gateway 192.168.1.2 dns-nameservers 192.168.1.2
儲存並並關閉檔案。到此,我建議你重啟電腦,或者像下面那樣重啟所有的服務(使用遠端ssh會話可能不工作):
# /etc/init.d/networking restart
# /etc/init.d/hostapd restart
或者:
# reboot
關於DHCPD 的注意
既然你讓WAP跑在橋接(br0)模式,在WAP上DHCPD不是必需的。它可以使用LAN內任意地方的DHCPD伺服器。在本例子中 192.168.1.2是一個ISP路由器,它提供了DHCPD服務。如果你沒有使用DHCPD伺服器,參照以下安裝:
- Ubuntu / Debian Linux: Setup An ISC DHCP Server For Your Network
關於防火牆的注意
你可以安裝防火牆來抵禦進攻。參閱這裡:install shorewall on Debian or Ubuntu Linux.
如何處理WAP問題?
WPA的日誌資訊在 /var/log/syslog檔案中:
# tail -f /var/log/syslog
檢查DHCPD中繼是否工作:
# tcddump -n port 67 或 ort 68
確定防火牆沒有阻止需要的連接埠:
# /sbin/iptables -L -n -v | less
確定br0的mac地址正確,並且它已經在運行:
# ifconfig br0
# ifconfig | grep HW
# brctl show
# brctl showmacs bro
使用這些命令來查看無線網路速度、訊號強度和其他資訊。
最後,確認你使用了以下軟體的最新版本:
- Linux kernel
- Wireless card drivers and firmware
- hostapd
參考:
- hostapd documentation from the Linux kernel wireless wiki.
- Download latest version of hostapd from the official web-site or read documentation here or run the commandvi /usr/share/doc/hostapd/examples/hostapd.conf.gz
- man pages - hostapd, brctl command, and interfaces
原文
Debian/Ubuntu Linux:使用Hostapd搭建無線訪問點(WAP)