Если вы пользуетесь какой-либо операционной системой на базе ядра linux, то скорее всего уже видели графические приложения для подключения к беспроводными сетям. Но если графического приложения еще нет, и для установки его требуется наличие сети, а для получения доступа к Интернету необходимо подключиться к беспроводной точке, то выход тогда только один - настройка WiFi из командной строки. Или еще пример - настроить сервер по ssh, чтобы он мог работать с беспроводным контроллером.
Установка необходимых пакетов
В первую очередь необходимо проверить, установлены ли пакет wpasupplicant и wireless-tools. Эти пакеты позволят вам подключаться к беспроводным сетям с WPA и WPA2 аутентификацией. В Debian и Ubuntu это делается командами
dpkg -l | grep wpasupplicant
dpkg -l | grep wireless-tools
Если пакеты не установлены, то, возможно, поднять беспроводную сеть не получится, если у вас нет другого носителя. Пакеты устанавливаются следующей командой:
apt-get install wpasupplicant wireless-tools
Кроме того, может понадобиться поставить микрокод (firmware) для устройства, установив соответствующий производителю пакет. Микрокод также называют прошивкой, но это не совсем правильно. Микрокод загружается в устройство перед началом работы с ним, а прошивка в устройстве находится постоянно. Для Intel это может быть, например, пакет firmware-iwlwifi из репозитория non-free. Микрокод часто лежит именно в этой ветке репозиториев. Либо это может быть пакет firmware-realtek, либо firmware-linux-free.
Проверка беспроводного контроллера
Перед тем, как пытаться подключаться, нужно убедиться, что система видит WiFi-контроллер и правильно его распознает, для просмотра списка устройств можно использовать команду lspci, в ее выводе должна быть строчка наподобие этой:
03:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8188CE 802.11b/g/n WiFi Adapter (rev 01)
А в списке интерфейсов должен присутствовать соответствующий сетевой интерфейс, обычно это wlan0. Просмотреть список можно командой
ifconfig -a
Настройка WiFi из командной строки
Если устройство в системе найдено, можно переходить к настройке сети. Для начала просмотрим список доступных локальных сетей:
iwlist scanning
На экран будет выведен список доступных сетей в виде записей такого вида:
Cell 04 - Address: 64:70:02:A4:D5:4E
Channel:2
Frequency:2.417 GHz (Channel 2)
Quality=55/70 Signal level=-55 dBm
Encryption key:on
ESSID:"wireless-net"
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 6 Mb/s
9 Mb/s; 12 Mb/s; 18 Mb/s
Bit Rates:24 Mb/s; 36 Mb/s; 48 Mb/s; 54 Mb/s
Mode:Master
Extra:tsf=000000efaa1c94dc
Extra: Last beacon: 260ms ago
IE: Unknown: 0005616E67656C
IE: Unknown: 010882848B960C121824
IE: Unknown: 030102
IE: Unknown: 2A0100
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
IE: Unknown: 32043048606C
IE: Unknown: 2D1AEF1103FFFF0000000000000000000000000000000406E6E70D00
IE: Unknown: 331AEF1103FFFF0000000000000000000000000000000406E6E70D00
IE: Unknown: 3D1602051100000000000000000000000000000000000000
IE: Unknown: 341602051100000000000000000000000000000000000000
IE: Unknown: DD180050F2020101830003A4000027A4000042435E0062322F00
IE: Unknown: DD0900037F01010000FF7F
IE: Unknown: DD990050F204104A0001101044000102103B00010310470010000102030405060708090A0B0C0D0E0F1021000754502D4C494E4B10230009544C2D57523834314E10240003382E3010420003312E301054000800060050F204000110110019576972656C65737320526F7574657220544C2D57523834314E100800020086103C000101104900140024E26002000101600000020001600100020001
Из этой информации нам понадобится поле “ESSID”, представляющее название точки доступа, в данном случае “wireless-net”, а также строчки “IEEE 802.11i/WPA2 Version 1” и “Authentication Suites (1) : PSK”. Эти два значения дают нам понимание того, что используется WPA2-PSK аутентификация.
Создаем файл /etc/wpa_supplicant/wpa_supplicant.conf:
wpa_passphrase wireless-net <пароль-к-сети> > /etc/wpa_supplicant/wpa_supplicant.conf
И затем даем команду
wpa_supplicant -B -iwlan0 -Dwext -c/etc/wpa_supplicant/wpa_supplicant.conf
После этого, если адрес не получен автоматически, вызываем DHCP-клиент:
dhclient wlan0
После получения адреса Интернет может быть недоступен. Необходимо командой route проверить таблицы роутинга. Если шлюз по умолчанию отсутствует, то надо добавить его командой
route add default gateway <IP-адрес-шлюза>
Если адрес указан верно, то вы сможете получить доступ к Интернету. Но обычно DHCP-клиент получает шлюз по умолчанию автоматически
Изменение конфигурационных файлов
Теперь нам необходимо задать в конфигурационных файлах параметры беспроводной сети - название и ключ.
Записываем в файл /etc/network/interfaces следующее:
auto wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
После этого поднимаем сетевой интерфейс:
# ifconfig wlan0 up
или
# ifup wlan0
Вот и всё.