一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Linux|Centos|Ubuntu|系統進程|Fedora|注冊表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服務器之家 - 服務器系統 - Ubuntu - 使用hostapd和dhcpd來在Ubuntu上開啟無線熱點

使用hostapd和dhcpd來在Ubuntu上開啟無線熱點

2019-07-04 16:16OSChinaeechen Ubuntu

這篇文章主要介紹了使用hostapd和dhcpd來在Ubuntu上開啟無線熱點,注意一下硬件上需要無線網卡的支持,需要的朋友可以參考下

Hostapd簡介:

簡單說,hostapd能夠使得無線網卡切換為master模式,模擬AP(通常可以認為是路由器)功能,也就是我們說的軟AP(Soft AP)。

Hostapd的功能就是作為AP的認證服務器,負責控制管理stations(通常可以認為帶無線網卡的PC)的接入和認證。

通過Hostapd可以將無線網卡切換為AP/Master模式,通過修改配置文件,可以建立一個開放式的(不加密)的,WEP,WPA或WPA2的無線網絡。并且通過修改配置文件可以設置無線網卡的各種參數,包括頻率,信號,beacon包時間間隔,是否發送beacon包,如果響應探針請求等等。還可以設置mac地址過濾條件等。具體可以參考它的配置文件說明。

下面就從官網上摘下的部分原因及翻譯。翻譯的不好請見諒。

 

hostapd is an IEEE 802.11 AP and IEEE 802.1X/WPA/WPA2/EAP/RADIUS Authenticator.

Hostapd是IEEE 802.11 AP and IEEE 802.1X/WPA/WPA2/EAP/RADIUS的認證器

hostapd is a user space daemon for access point and authentication servers. It implements IEEE 802.11 access point management, IEEE 802.1X/WPA/WPA2/EAP Authenticators, RADIUS client, EAP server, and RADIUS authentication server. The current version supports Linux (Host AP, madwifi, mac80211-based drivers) and FreeBSD (net80211).

Hostapd是一個訪問點以及認證服務器的運行于用戶空間的守護程序。它實現了IEEE 802.11接入帶你(Access Point)的管理功能,是IEEE 802.1X/WPA/WPA2/EAP的認證器,是 RADIUS client, EAP server, and RADIUS認證服務器。當前版本的hostapd支持linux上Host AP,madwifi和基于mac80211協議棧的驅動程序,以及FreeBSD上net80211協議棧的驅動程序。

 

hostapd is designed to be a “daemon” program that runs in the background and acts as the backend component controlling authentication. hostapd supports separate frontend programs and an example text-based frontend, hostapd_cli, is included with hostapd.

Hostapd是一個后臺守護進程,作為后臺組件來控制和管理認證功能。Hostapd支持多個前臺程序。hostapd_cli,就是一個跟hostapd一起的命令行前臺程序。

下面我們來看一下利用hostapd和dhcpd在Ubuntu系統上建立無線熱點的方法:
執行 iwlist 如果 Supported interface modes 的下有 AP 的話表示該網卡支持AP模式,可以創建無線熱點。 
比如我的無線網卡是Qualcomm Atheros AR9485 Wireless Network Adapter,Linux內核自帶了驅動ath9k,支持創建AP無線熱點。 
1. 安裝hostapd和dhcpd
 

復制代碼

代碼如下:


sudo apt-get install hostapd isc-dhcp-server


開機不需要啟動這兩個服務,建議把它們關掉:

復制代碼

代碼如下:

sudo update-rc.d -f hostapd remove


注釋掉下面兩個文件start on那一行:

復制代碼

代碼如下:

sudo nano /etc/init/isc-dhcp-server.conf
sudo nano /etc/init/isc-dhcp-server6.conf

 

2. 配置hostapd和dhcpd
 

復制代碼

代碼如下:


sudo nano /etc/hostapd/hostapd.conf

  注意自己設置其中的無線熱點名稱ssid和認證密碼wpa_passphrase.

復制代碼

代碼如下:


interface=wlan0
driver=nl80211
ssid=YOUR_AP_NAME
hw_mode=g
channel=10
macaddr_acl=0
auth_algs=3
wpa=2
wpa_passphrase=YOUR_AP_PASSWORD
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP CCMP
rsn_pairwise=TKIP CCMP

 

復制代碼

代碼如下:

sudo nano /etc/dhcp/dhcpd.conf

在末尾加入以下內容:

復制代碼

代碼如下:


subnet 192.168.0.0 netmask 255.255.255.0
{
range 192.168.0.2 192.168.0.10;
option routers 192.168.0.1;
option domain-name-servers 192.168.0.1,180.76.76.76,8.8.8.8;
}


其中180.76.76.76是百度公共DNS服務器,8.8.8.8則是Google的DNS服務器.

 

在自己的家目錄下創建一個hostapd目錄,里面新建啟動和關閉腳本,比如我這樣寫(注意把里面eechen換成你的用戶名):

復制代碼

代碼如下:


nano /home/eechen/hostapd/ap-start.sh</p> <p>#!/bin/bash
# 開啟內核IP轉發
bash -c "echo 1 > /proc/sys/net/ipv4/ip_forward"
# 開啟防火墻NAT轉發(如果本機使用eth0上網,則把ppp0改為eth0)
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
# 關閉NetworkManager對無線網卡的控制
nmcli nm wifi off
# 設置并啟動無線網卡
ifconfig wlan0 192.168.0.1 netmask 255.255.255.0
# 解鎖無線設備,可以用rfkill list查看解鎖結果.
rfkill unblock wlan
# 睡眠6秒,待rfkill解鎖生效
sleep 6s
# 啟動dhcpd和hostapd,如果hostapd無法啟動請查看日志hostapd.log,查看這兩個進程ps -ef|egrep "dhcpd|hostapd"
nohup hostapd /etc/hostapd/hostapd.conf >/home/eechen/hostapd/hostapd.log 2>&1 &
dhcpd wlan0 -pf /var/run/dhcpd.pid
ps -ef|head -n1 && ps -ef|egrep "dhcpd|hostapd"
nano /home/eechen/hostapd/ap-stop.sh</p> <p>#!/bin/bash
killall hostapd dhcpd
bash -c "echo 0 > /proc/sys/net/ipv4/ip_forward"
ifconfig wlan0 down


3. 啟動hostapd和dhcpd

 

在桌面新建兩個啟動器(快捷方式),里面分別填入: 
 

復制代碼

代碼如下:

gksu /home/eechen/hostapd/ap-start.sh 
gksu /home/eechen/hostapd/ap-stop.sh 


因為腳本需要root用戶身份執行,所以需要用gksu運行。

 

注意:如果你開啟了ufw防火墻,ufw默認是禁止轉發的,這會導致防火墻NAT轉發失效,這時應該設置允許轉發: 
 

復制代碼

代碼如下:

sudo nano /etc/default/ufw 將 DEFAULT_FORWARD_POLICY 設為 ACCEPT 


然后重啟ufw即可: 

復制代碼

代碼如下:

sudo service ufw restart


之后運行啟動器即可啟動和關閉AP無線熱點。

 

4. 用wireshark監控經過wlan0的通信

安裝wireshark(其中 eechen改為你的用戶名): 
 

復制代碼

代碼如下:


sudo apt-get install wireshark
sudo chgrp eechen /usr/bin/dumpcap
sudo chmod 750 /usr/bin/dumpcap
sudo setcap cap_net_raw,cap_net_admin+eip /usr/bin/dumpcap


Alt+F2運行wireshark,選擇網絡接口wlan0,Filter里輸入http.cookie contains mail.qq.com
然后手機端登錄網頁QQ郵箱,在WireShark即可查看和獲取QQ郵箱登錄的Cookie,如圖所示:
使用hostapd和dhcpd來在Ubuntu上開啟無線熱點
右鍵點擊Cookie項把Value復制出來,然后用Firefox訪問站點https://w.mail.qq.com/,Alt+C激活 Original Cookie Injector( GreaseMonkey),彈出輸入框Wireshark Cookie Dump,把Cookie項的Value粘貼到里面,然后點OK確定并刷新頁面即可登錄QQ郵箱。或者你使用Tamper Data這個Firefox擴展在提交時修改Cookie值也是可以的。

 

附:

查看連接wlan0網絡的客戶端: 
 

復制代碼

代碼如下:

sudo arp

返回IP地址和MAC硬件地址和無線接口名. 

復制代碼

代碼如下:

iw dev wlan0 station dump

能顯示收發包和字節數等.

 

查看網絡接口速度: 
 

復制代碼

代碼如下:

sar -n DEV 1

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 娇妻终于接受了3p的调教 | 99色亚洲 | heyzo在线播放 | 男人与禽交的方法 | 天天久久综合网站 | 青青草伊人久久 | 免费亚洲视频在线观看 | 色一情一区二区三区四区 | 91在线精品老司机免费播放 | 国产精品一区二区国产 | 睡男神的这件小事小说在线阅读 | 午夜在线观看免费观看 视频 | 男人天堂网页 | 香蕉91xj.cc | 扒开胸流出吃奶 | 图片专区小说专区卡通动漫 | 性xxxx18学生第一次出血 | 欧美专区亚洲 | 亚洲网站大全 | 嫩草影院久久99 | 成人性生交小说免费看 | 国产精品在线 | 2015小明台湾永久区域免费 | 好大好硬视频 | 精品国产区 | 无套日出白浆在线播放 | 色哟哟在线观看 | 水多多www视频在线观看高清 | 欧美日韩一区二区三区韩大 | 性柔术xxxhd| 国产精品日韩欧美在线 | 嫩草视频在线观看免费 | 国产伦久视频免费观看视频 | 桥本有菜作品在线 | 精品成人一区二区三区免费视频 | 美女一线天 | 成人网欧美亚洲影视图片 | 男人狂躁女人下面的视频免费 | 亚洲琪琪 | 热伊人99re久久精品最新地 | 美女模特被c免费视频 |