最近在玩樹莓派,我打算搞個無線路由器,這裡的前提是樹莓派要求有無線網卡(一個小小的usb)。這裡就不介紹如何安裝樹莓派系統。好,讓我們直接進入主題!
1.修改wlan0的ip
sudo vim /etc/network/interfaces
把其中有關wlan0的部分註釋或者刪掉。注意別把搞混eth0的部分,那個是有線網卡
iface wlan0 inet static
address 192.168.10.1
netmask 255.255.255.0
2.安裝hostapd
sudo apt-get install hostapd
sudo nano /etc/default/hostapd
找到#DAEMON_CONF= "",修改為:
DAEMON_CONF="/etc/hostapd/hostapd.conf"
sudo nano /etc/hostapd/hostapd.conf
裡面的內容修改大致如下,按照需要來改自己的參數,主要那幾個修改下便可以,其中wpa之前是等於3.這裡要修改為2.我們平時接的wifi還是WPA2這種模式居多。其中driver=nl80211 是大部分人選用的驅動,因為我的驅動安裝有問題,因此我安裝了第三方的驅動,最後出現如下的driver。下面會有安裝第三方驅動方法。
interface=wlan0
ssid=Raspberry
channel=11
#bridge=br0
# WPA and WPA2 configuration
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=2
wpa_passphrase=raspberry
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
# Hardware configuration
driver=rtl871xdrv
ieee80211n=1
hw_mode=g
device_name=RTL8192CU
manufacturer=Realtek
hostapd主要便是這個hostapd.conf的文件設置。現在便可以重啟你的hostapd服務
sudo service hostapd restart
如果沒有出現錯誤,那可以下一步,我的就沒那麼幸運,出現下面錯誤,需要安裝第三方驅動
Configuration file: /etc/hostapd/hostapd.conf
nl80211: 'nl80211' generic netlink not found
Failed to initialize driver 'nl80211'
卸載前面安裝的hostapd驅動
sudo apt-get autoremove hostapd
下載第三方驅動
wget https://github.com/jenssegers/RTL8188-hostapd/archive/v1.1.tar.gz
tar -zxvf v1.1.tar.gz
cd RTL8188-hostapd-1.1/hostapd
sudo make
sudo make install
Now!你可以重啟hostapd服務,這下沒問題了,嘻嘻。
3.安裝dhcp服務
sudo apt-get install isc-dhcp-server
sudo nano /etc/dhcp/dhcpd.conf
內容如下:
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
subnet 192.168.10.0 netmask 255.255.255.0 {
range 192.168.10.10 192.168.10.100;
option routers 192.168.10.1;
option broadcast-address 192.168.10.127;
option domain-name-servers 8.8.8.8,8.8.4.4;
default-lease-time 600;
max-lease-time 7200;
}
保存後重啟服務
sudo service isc-dhcp-server restart
4.配置路由轉發
sudo iptables -F
sudo iptables -X
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo bash
iptables-save > /etc/iptables.up.rules
exit
sudo nano /etc/network/if-pre-up.d/iptables
添加下面兩行代碼:
#!/bin/bash
/sbin/iptables-restore < /etc/iptables.up.rules
保存退出,然後修改iptables權限:
sudo chmod 755 /etc/network/if-pre-up.d/iptables
開戶內核轉發:
sudo nano /etc/sysctl.conf
找到下面兩行:
# Uncomment the next line to enable packet forwarding for IPv4
#net.ipv4.ip_forward=1
把net.ipv4.ip_forward 前面的#去掉,保存退出。 然後
sudo sysctl -p
5.服務自啟動
熱點wifi當然是開機要自啟動,不然還要bash命令的話,出去外面開個wifi都做不到。繼續如下:
$ sudo chkconfig --add hostapd
$ sudo chkconfig --add isc-dhcp-server
上述內容不知道大家學習到了嗎?網絡世界的安全漏洞每天都會出現,安全知識和安全意識每個公民都應該瞭解和學習,有想學習網絡安全技能的小夥伴可以隨時私信我哦!
閱讀更多 安界 的文章