如何配置无头服务器自动连接到无线网络?


18

我正在设置无头服务器,但我想放置它的位置没有以太网访问权限,因此我需要它在启动时自动连接到我的WiFi网络(它具有无线网卡)。我可以连接到以太网连接进行设置,但是从那时起我需要它自动连接到我的接入点。

我该如何配置?

Answers:


19

经过大量研究后,我开始尝试了。由于我拥有Intel无线卡,因此无需安装任何其他驱动程序,但是您可能必须安装,具体取决于您所拥有的卡。

首先,您需要弄清楚您的无线卡正在使用什么接口。我们使用以下iwconfig命令:

iwconfig  

就我而言,我的无线网卡是wlan0接口,因此我将使用它。现在我们需要扫描无线网络:

iwlist wlan0 s  

这应该提供大量输出,显示您所在区域的各种无线网络的详细信息。通常,按ESSID过滤比较容易。grep在这里帮助我们:

iwlist wlan0 s | grep ESSID  

这将列出您所在地区所有无线网络的名称。现在是时候连接到您的网络了。

不安全和WEP网络

如果您的网络不安全或受较旧的WEP(需要升级安全性或路由器!)保护,则连接相对简单。如果您的网络不安全,您应该可以使用以下方法进行连接:

iwconfig wlan0 essid NAME_OF_NETWORK  

如果您的网络受WEP保护,则只需在key参数后面加上密码即可,如下所示:

iwconfig wlan0 essid NAME_OF_NETWORK key PASSWORD  

您可能需要跑步

dhclient  

使路由器为您分配IP地址。

WPA / WPA2

WPA / WPA2有点复杂。您将需要使用wpa_supplicant。首先在中创建配置文件/etc

sudo wpa_passphrase NETWORK_NAME NETWORK_PASSWORD > /etc/wpa_supplicant.conf  

现在我们需要连接:

sudo wpa_supplicant -B -iINTERFACE_NAME -cPATH_TO_CONFIG -DDRIVER  

例如:

sudo wpa_supplicant -B -iwlan0 -c/etc/wpa_supplicant.conf -Dwext  

-Bwpa_supplicant在后台运行。wext在大多数情况下,驱动程序应该工作。要查看其他驱动程序运行:

wpa_supplicant  

有关连接的更多信息,请参见如何在终端中手动连接和断开网络?

启动时连接

现在我们需要编辑/etc/network/interfaces。在你喜欢的编辑器(打开它vimnano等); 您需要使用sudo

删除所有内容,除了:

auto lo
iface lo inet loopback

(环回设备)。现在添加:

auto wlan0  
iface wlan0 inet dhcp  

pre-up <COMMAND> 

wlan0无线接口在哪里,<COMMAND>是用于连接到网络的命令(请参见上文)。例如,如果您的网络不安全,则可以添加:

pre-up iwconfig wlan0 essid some_network_name  

如果您的网络受到WPA / 2的保护,则可以添加以下内容:

pre-up sudo wpa_supplicant -B -iwlan0 -c/etc/wpa_supplicant.conf -Dwext  

如果您正在使用,wpa_supplicant还应该添加:

post-down sudo killall -q wpa_supplicant  

保存文件,重新启动,拔出以太网并尝试运行:

sudo apt-get update

如果命令成功完成,恭喜!您在线!如果命令未成功完成,请在下面添加注释。

范例与说明

如果您的网络不安全或没有使用WEP进行安全保护,则您/etc/network/interfaces现在应该类似于以下内容:

auto lo
iface lo inet loopback  

auto wlan0  
iface wlan0 inet dhcp  

pre-up iwconfig wlan0 essid some_network_name 
# note: if WEP secured you would also have a 'key' argument with your password

如果您的网络是WPA / 2保护的,则您/etc/network/interfaces应类似于以下内容:

auto lo
iface lo inet loopback  

auto wlan0  
iface wlan0 inet dhcp  

pre-up sudo wpa_supplicant -B -iwlan0 -c/etc/network/wpa_supplicant.conf -Dwext  

post-down sudo killall -q wpa_supplicant  

现在一个解释。

  • auto wlan0wlan0自动启动界面。

  • iface wlan0 inet dhcp:通过DHCP获取我们的IP地址

  • pre-up:指定进行连接的命令。

  • post-down:指定自己后用于清除的命令(如有必要)。

资料来源:


9

我建议使用一个静态IP地址,以便您可以轻松地通过ssh和ftp进入服务器。此外,您可以大大简化文件:

auto lo
iface lo inet loopback  

auto wlan0  
iface wlan0 inet static
address 192.168.1.125  
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8 192.168.1.1
wpa-ssid <your_network>
wpa-psk <your_key>

确保地址不在路由器用于DHCP的范围内,当然,请在此处替换您的详细信息。


1
如果您可以为一个新朋友添加更多的解释,那就太好了,这样他们在理解您的答案之前就不必阅读我的回答。
塞斯(Seth)2014年

您的答案仅适用于给定的interfaces文件更改吗?我的意思是说,不需要wpa_supplicant在后台等环境中运行,以及Seth接受的答案中所建议的所有其他内容吗?
OverTheEdge

@OverTheEdge它确实。请尝试一下,如果没有,请提出一个新问题,我们将为您提供帮助。
chili555
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.