如何设置我的 WiFi 以用作 Ubuntu Server 上的无线接入点?
我有一个本地 Ubuntu 服务器,它有一个无线网卡 (802.11a/b/g/n),我真的想将它设置为 802.11n 接入点,因为我的普通接入点不支持 N。
它也需要作为交换机工作,以便我可以连接并通过 DHPC。
编辑:我不认为网络管理器是一个好的解决方案,因为它依赖于很多 X11 包,我不希望在服务器上使用它。
如何设置我的 WiFi 以用作 Ubuntu Server 上的无线接入点?
我有一个本地 Ubuntu 服务器,它有一个无线网卡 (802.11a/b/g/n),我真的想将它设置为 802.11n 接入点,因为我的普通接入点不支持 N。
它也需要作为交换机工作,以便我可以连接并通过 DHPC。
编辑:我不认为网络管理器是一个好的解决方案,因为它依赖于很多 X11 包,我不希望在服务器上使用它。
我找到了一个很好的线程。它应该在 Ubuntu 10.04 中运行没问题。它也是 CLI,所以它根本不需要任何 X 库。:)
单击面板中的 NetworkManager 图标,然后选择“创建无线网络...”您应该能够将其设置为“系统”(而不是“用户”)连接。
您说这是在服务器上,因此您可能仅通过 SSH 访问服务器。在这种情况下,您可以尝试一些远程 X 连接;或尝试通过命令行配置 NetworkManager,如果不简单的话,这应该是可能的。
为什么不尝试安装
hostapd
安装 hostapd 包。在 ubuntu 上:
资料来源:如何将 Linux 机器变成 wifi 接入点
这是一篇非常好的文章(如果有点过时 [如果 2006 已经过时]),它概述了如何从命令行执行此操作。
http://www.linux.com/archive/feed/55617
假设您的无线设备工作正常,您可能可以直接在桥接部分潜入大约一半。
Wi-Fi Protected Access 第 2 版 ( WPA2 ) 正在成为保护无线网络的事实标准,并成为所有通过Wi-Fi 联盟认证的新 Wi-Fi 产品的强制性功能。我们都知道其前身 WEP 的安全弱点;这次他们做对了。以下是如何在 Linux 主机上实现 WPA2 协议并为您的网络创建安全无线接入点 (WAP)。
大多数消费级商业 WAP 都以同样简单的方式运行:它们在有线(以太网)网络接口和无线网络接口之间建立了一座桥梁。这正是我们要做的。WAP 部分将由hostapd处理守护进程,因此您必须选择它支持的无线接口。支持的 NIC 包括 Prism 2/2.5/3、Atheros ar521x 和 Prism GT/Duette/Indigo 芯片组;hostapd 主页上提供了一个列表,以及每个芯片组的 Linux 驱动程序链接。我的 WAP 上安装了一个基于 Atheros AR5212 的 PCI 卡,它受 hostapd 支持。尽管任何 Pentium(或更新的)系统都可以工作,但某些 PCI 无线网卡需要 PCI 2.2 才能运行,因此请务必在购买前检查系统的主板规格。您还需要一个 Linux 支持的以太网接口,用于将您的 WAP 连接到 LAN;大多数板载接口都可以正常工作。
我的设置基于 Debian Testing (Etch),但任何具有最新 2.6 内核的 GNU/Linux 发行版都可以使用。内核必须支持 802.1d 以太网桥接 (CONFIG_BRIDGE) 和无线 LAN (CONFIG_NET_RADIO)。大多数默认的股票内核都启用了这些功能,但如果您更喜欢构建自己的内核,请确保包含这些选项。除了 hostapd 之外,您需要安装的唯一其他软件包是bridge-utils和wireless-tools。主要的 GNU/Linux 发行版为所有这些程序提供二进制包,但如果您更喜欢从源代码构建它们,您可以在它们的主页上找到更多信息。
在将两个接口桥接在一起之前,我们必须将无线接口(在我的情况下为 ath0;调整它以匹配您的设置)置于 hostap 或 Master 模式。通常这就像运行 iwconfig ath0 mode Master 一样简单,但由于 Linux 中的 wlan 支持尚未标准化,因此某些驱动程序可能需要额外配置。如果您有一个基于 Atheros 的界面,您还需要运行以下命令:
wlanconfig ath0 destroy; wlanconfig ath0 create wlandev wifi0 wlanmode ap
在iwconfig
命令之前。之后, runningiwconfig ath0
将返回mode:Master
,等等。现在让我们创建桥。我们假设以太网接口是 eth0:
为了停止桥梁,您应该运行:
如果您想从网络访问 WAP 主机,您可以选择为 br0 接口提供一个 IP 地址,例如使用 SSH。每个发行版都提供了自己的网络配置方式;如果您使用 Debian(或任何基于 Debian 的发行版,例如 Ubuntu),您可以通过简单地将以下内容添加到您的
/etc/network/interfaces
文件中来包装所有先前的命令:请注意,它会
ifupdown
自动处理 eth0,因此您不需要在/etc/network/interfaces
. 要验证网桥是否配置正确,请运行brctl show
. 你应该得到这样的回报:在开始使用 hostapd 之前,我们需要一个 WPA2 的密码。与所有密码一样,它应该是随机的,因此难以猜测。获取随机密码短语的一个好方法是访问Gibson Research Corp. 的超高安全性密码生成器,并使用它创建的第三个密码——标题为 63 个随机字母数字字符(az、AZ、0-9)的密码。使用包含非字母数字 ASCII 字符(例如 !、@ 等)的密码短语可能很诱人,但某些客户端(即 Windows XP)似乎不喜欢它们。
现在创建一个名为的新文本文件
/etc/hostapd/wpa_psk
并将您的密码粘贴为:带零的第一部分表示“匹配所有 MAC 地址”,并且确实如此。您还可以通过在文件中附加一个带有每个客户端的 MAC 地址及其密码的新行来为每个客户端使用不同的密码。通过运行确保只有 root 可以访问该文件
chmod 600 /etc/hostapd/wpa_psk
。现在创建 hostapd 主配置文件的备份
/etc/hostapd/hostapd.conf
,并通过运行将其作为参考mv /etc/hostapd/hostapd.conf /etc/hostapd/hostapd.conf.orig
。创建一个新的 hostapd.conf 文件并将以下行粘贴到其中:用与您的设置匹配的信息替换斜体部分。如果您想只允许特定客户端连接,请从上面两行中删除 # 字符并将这些客户端的 MAC 地址复制到
/etc/hostapd/accept
,并使此文件只能由 root 访问(chmod 600)。有关所用选项的更多信息,请阅读您之前创建的备份文件 (hostapd.conf.orig) 中的注释。启动 hostapd 守护进程 (
/etc/init.d/hostapd start
) 并检查/var/log/daemon.log
以验证它是否工作。如果守护程序没有启动,请将调试级别(option debug=
在 hostapd.conf 中)增加到 4 并重试。现在,如果您从客户端扫描可用的无线网络,您应该会看到您的 ESSID。要从 Linux 客户端连接到 WAP,您需要安装wpa_supplicant并创建配置文件 wpa_supplicant.conf(在 Debian 中,安装在 中
/etc/wpa_supplicant/
),如下所示:再次替换斜体部分以匹配您的设置并运行
wpa_supplicant -i eth1 -D wext -c /etc/wpa_supplicant/wpa_supplicant.conf
(替换eth1
为您的 wlan 接口名称和 wext 为您的卡的适当驱动程序;运行 wpa_supplicant 而不使用任何选项以获取更多信息)。此命令在前台启动 wpa_supplicant 并尝试连接到 WAP。如果输出如下所示,则一切就绪:为您的无线接口提供一个静态 IP 地址(或运行 DHCP 客户端)并尝试 ping 局域网内的主机以验证连接是否有效。
恭喜,您刚刚为自己构建了一个高度可定制的无线接入点。尽管此设置非常适合家庭或小型办公室使用,但您需要在企业中使用更强大的东西,通过 RADIUS 服务器进行身份验证,甚至更好的是 VPN。