Как настроить Ubuntu в качестве беспроводной точки доступа?

25

Как настроить WiFi для использования в качестве беспроводной точки доступа на Ubuntu Server?

У меня есть локальный сервер Ubuntu, в нем есть беспроводная карта (802.11a / b / g / n), и я действительно хочу установить его в качестве точки доступа 802.11n, поскольку моя обычная точка доступа не поддерживает N.

Он также должен работать как коммутатор, чтобы я мог подключиться и получить DHPC.

Редактировать: я не вижу Network Manager как хорошее решение, так как это зависит от многих пакетов X11, и я не хочу этого на сервере.

LassePoulsen
источник

Ответы:

7

Я нашел хорошую ветку . Должно работать в Ubuntu 10.04 без проблем. Кроме того, это CLI, так что ему вообще не нужны X-библиотеки. :)

Майкл Харкер
источник
1
Связанная тема на самом деле состоит из 41 сообщения, и не совсем понятно, каким является решение вопроса. Ответ должен быть кратко изложен здесь.
Фрэнк
5

Нажмите на значок NetworkManager на панели и выберите «Создать беспроводную сеть ...». Вы должны иметь возможность настроить это как «Системное» (а не «Пользовательское») соединение.

Вы говорите, что это на сервере, поэтому, возможно, вы получаете доступ к серверу только через SSH. В этом случае вы можете попробовать какое-нибудь удаленное X-соединение; или попробуйте настроить NetworkManager через командную строку, что должно быть возможно, если нетривиально.

loevborg
источник
Возможно, но я не хочу NetworkManager
LassePoulsen
О боже, это работает! Были проблемы с WPA1 & 2 & WEP, но без шифрования работает нормально.
WitchCraft
-1

Это довольно хорошая (если немного устарела [если 2006 год устарела]) статья, в которой рассказывается, как это сделать из командной строки.

http://www.linux.com/archive/feed/55617

Предполагая, что ваше беспроводное устройство работает нормально, вы, вероятно, можете погрузиться прямо в секцию моста примерно на полпути вниз.


Защищенный доступ Wi-Fi версии 2 ( WPA2 ) становится стандартом де-факто для защиты беспроводных сетей и обязательной функцией для всех новых продуктов Wi-Fi, сертифицированных Альянсом Wi-Fi . Все мы знаем слабые места безопасности его предшественника, WEP; на этот раз они поняли это правильно. Ниже описано, как реализовать протокол WPA2 на хосте Linux и создать безопасную точку беспроводного доступа (WAP) для вашей сети.

Большинство коммерческих WAP потребительского уровня работают одинаково просто: они создают мост между проводным (Ethernet) сетевым интерфейсом и беспроводным. Это именно то, что мы тоже будем делать. Часть WAP будет обрабатываться hostapddaemon, поэтому вы должны выбрать беспроводной интерфейс, который он поддерживает. В число поддерживаемых сетевых адаптеров входят чипсеты Prism 2 / 2.5 / 3, Atheros ar521x и Prism GT / Duette / Indigo; список доступен на домашней странице hostapd вместе со ссылками на драйверы Linux для каждого чипсета. На моем WAP установлена ​​PCI-карта на базе Atheros AR5212, которая поддерживается hostapd. Хотя любая система Pentium (или более новая) будет работать, для работы некоторых беспроводных карт PCI требуется PCI 2.2, поэтому перед покупкой обязательно проверьте характеристики материнской платы вашей системы. Вам также понадобится интерфейс Ethernet, который поддерживается Linux для подключения вашего WAP к локальной сети; большинство бортовых интерфейсов будет работать просто отлично.

Моя установка основана на Debian Testing (Etch), но подойдет любой дистрибутив GNU / Linux с последним ядром 2.6. Ядро должно поддерживать 802.1d Ethernet Bridging (CONFIG_BRIDGE) и беспроводную локальную сеть (CONFIG_NET_RADIO). В большинстве стандартных ядер по умолчанию эти функции включены, но если вы предпочитаете собирать свое собственное ядро, обязательно включите эти опции. Кроме hostapd вам необходимо установить только другие пакеты - bridge-utils и wireless-tools . Основные дистрибутивы GNU / Linux предлагают бинарные пакеты для всех этих программ, но если вы предпочитаете собирать их из исходного кода, вы можете найти больше информации на их домашних страницах.

Перед соединением двух интерфейсов мы должны перевести беспроводной интерфейс (в моем случае ath0; настроить его в соответствии с вашими настройками) в режим hostap или Master. Обычно это так же просто, как запуск мастера iwconfig ath0 в режиме Master, но поскольку поддержка wlan в Linux еще не стандартизирована, некоторым драйверам может потребоваться дополнительная настройка. Если у вас есть интерфейс на основе Atheros, вам также нужно выполнить следующее: wlanconfig ath0 destroy; wlanconfig ath0 create wlandev wifi0 wlanmode apперед iwconfigкомандой. После этого бег iwconfig ath0вернется mode:Master, среди прочего.

Теперь давайте создадим мост. Предположим, что интерфейс Ethernet имеет вид eth0:

ifconfig eth0 0.0.0.0 up
ifconfig ath0 0.0.0.0 up
brctl addbr br0
brctl addif br0 eth0
brctl addif br0 ath0

А для остановки моста нужно запустить:

ifconfig br0 down
ifconfig eth0 0.0.0.0 down
ifconfig ath0 0.0.0.0 down
brctl delif br0 eth0
brctl delif br0 ath0
brctl delbr br0

При желании вы можете назначить IP-адрес интерфейсу br0, если хотите получить доступ к WAP-хосту из сети, используя, например, SSH. Каждый дистрибутив предлагает свой собственный способ настройки сети; если вы используете Debian (или любой другой дистрибутив на основе Debian, например Ubuntu), вы можете свернуть все предыдущие команды, просто добавив в свой /etc/network/interfacesфайл следующее:

auto ath0 br0

iface ath0 inet manual
        pre-up wlanconfig ath0 destroy
        pre-up wlanconfig ath0 create wlandev wifi0 wlanmode ap
        post-down wlanconfig ath0 destroy
        wireless-mode master

iface br0 inet manual
        bridge_ports eth0 ath0

Обратите внимание, что ifupdownобрабатывает eth0 автоматически, поэтому вам не нужна отдельная строфа для него /etc/network/interfaces. Чтобы убедиться, что мост настроен правильно, запустите brctl show. Вы должны получить что-то вроде этого в ответ:

bridge name     bridge id               STP enabled     interfaces
br0             8000.00032f2481f0       no              ath0
                                                        eth0

Перед тем, как связываться с hostapd, нам понадобится фраза для WPA2. Как и для всех паролей, он должен быть случайным и, следовательно, трудно угадать. Хороший способ получить случайную парольную фразу - посетить Генератор паролей сверхвысокой безопасности от Gibson Research Corp. и использовать третий созданный пароль - тот, который называется 63 случайными буквенно-цифровыми символами (az, AZ, 0-9). Наличие парольной фразы, содержащей не алфавитно-цифровые символы ASCII (например,!, @ И т. Д.), Может быть заманчивым, но некоторым клиентам, а именно Windows XP, они не нравятся.

Теперь создайте новый текстовый файл с именем /etc/hostapd/wpa_pskи вставьте вашу парольную фразу как:

00:00:00:00:00:00 PASSPHRASE

Первая часть с нулями означает «соответствовать всем 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 и вставьте в него следующие строки:

interface=ath0
bridge=br0
driver=madwifi
logger_syslog=-1
logger_syslog_level=2
logger_stdout=-1
logger_stdout_level=2
debug=0
dump_file=/tmp/hostapd.dump
ctrl_interface=/var/run/hostapd
ctrl_interface_group=0
ssid=My_Secure_WLAN
#macaddr_acl=1
#accept_mac_file=/etc/hostapd/accept
auth_algs=3
eapol_key_index_workaround=0
eap_server=0
wpa=3
wpa_psk_file=/etc/hostapd/wpa_psk
wpa_key_mgmt=WPA-PSK
wpa_pairwise=CCMP
stakey=0

Замените части, выделенные курсивом, информацией, соответствующей вашим настройкам. Если вы хотите разрешить подключение только определенным клиентам, удалите символ # из двух строк выше и скопируйте 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. Чтобы подключиться к WAP из клиента Linux, вам необходимо установить wpa_supplicant и создать файл конфигурации wpa_supplicant.conf (в Debian, установленный в /etc/wpa_supplicant/), как показано ниже:

update_config=1
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=0
eapol_version=1
ap_scan=1
fast_reauth=1

network={
        ssid="My_Secure_WLAN"
        proto=RSN
        key_mgmt=WPA-PSK
        pairwise=CCMP
        group=CCMP
        psk="PASSPHRASE"
        priority=5
}

Снова замените части, выделенные курсивом, в соответствии с вашими настройками и запуском wpa_supplicant -i eth1 -D wext -c /etc/wpa_supplicant/wpa_supplicant.conf(замена eth1на имя вашего интерфейса WLAN и wext с соответствующим драйвером для вашей карты; запустите wpa_supplicant без каких-либо параметров для получения дополнительной информации). Эта команда запускает wpa_supplicant на переднем плане и пытается подключиться к WAP. Если вывод выглядит следующим образом, все готово:

Trying to associate with 00:11:22:33:44:55 (SSID='My_Secure_WLAN' freq=0 MHz)
Associated with 00:11:22:33:44:55
WPA: Key negotiation completed with 00:11:22:33:44:55 [PTK=CCMP GTK=CCMP]
CTRL-EVENT-CONNECTED - Connection to 00:11:22:33:44:55 completed (auth) [id=0 id_str=]

Дайте статический IP-адрес вашему беспроводному интерфейсу (или запустите клиент DHCP) и попробуйте проверить связь с хостом в вашей локальной сети, чтобы убедиться, что соединение работает.

Поздравляем, вы только что создали себе настраиваемую беспроводную точку доступа. Хотя эта настройка идеально подходит для использования дома или в небольшом офисе, вам нужно что-то более надежное на предприятии с аутентификацией на сервере RADIUS или, что еще лучше, VPN.

попей
источник
1
Это сильно устарело ... Стек беспроводного драйвера ядра изменился с тех пор!
LassePoulsen
Это правда, но полезны бридж и wpa_supplicant, которые являются необработанным материалом для его установки.
Попи
1
Страница 404. -1 от меня. Если бы вы суммировали информацию, содержащуюся в линке, ваш ответ был бы в силе.
Марко
Мертвая ссылка ......
obayhan