Настройка Wi-Fi в Linux Debian

1. Установка драйвера Wi-Fi карты в Linux

Для работы wi-fi карты необходим драйвер. Нужного драйвера может не быть в системе. Что бы узнать какое устройство (сетевая карта) используется, можно посмотреть ID производителя и ID устройства с помощью команды «lspci -nn» или, если USB карта, «lsusb» эти команды выводят список устройств в системе, а также показывают их идентификатор. Пример строки из вывода команды lsusb:

Bus 001 Device 002: ID 0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN

Видно, что wi-fi карточка Realtek, модель: RTL8188CUS, ID у неё: 0bda:8176 (первые четыре шестнадцатеричные цифры — это ID производителя, вторые — ID устройства). В данном случае модель уже известна и искать её по номеру ID нет смысла. Многие драйвера для проводных и беспроводных карт Realtek собраны в пакете firmware-realtek, однако после его установки и подключения usb wi-fi карты, беспроводной интерфейс у меня не появился. Тогда я скачал с сайта производителя драйвера нужной мне модели под Linux(Unix). В архиве находились исходные тексты драйвера, скрипт установки «install.sh» и документация. После запуска скрипта install.sh, произошла компиляция модуля драйвера (8192cu) и его установка в систему. После чего появился беспроводной интерфейс wlan0.

Узнать, что он появился можно командой «ifconfig -a«

2. Установка необходимых пакетов для работы с Wi-Fi

Настройку Wi-Fi сети можно произвести в графическом режиме с помощью NetworkManager или Wicd либо в консольном. Я рассмотрю вариант настройки в консольном.

Для работы с беспроводными интерфейсами есть пакет: wireless-tools (содержит утилиты: iwconfig, iwlist и пр.)

Для поддержки WPA и WPA2 нужен пакет: wpasupplicant

Следует установить эти два пакета.

3. Настройка Wi-Fi

Первым делом нужно включить беспроводной интерфейс командой: «ifconfig wlan0 up«

Далее можно просканировать доступные беспроводные сети командой: «iwlist wlan0 scan» (команда «iwlist» доступна после установки пакета wireless-tools)

vmwpc1:~# iwlist wlan0 scan
wlan0 Scan completed :
Cell 01 - Address: B8:A3:86:12:75:BA
ESSID:"Wi-Fi Net"
Protocol:IEEE 802.11bg
Mode:Master
Frequency:2.427 GHz (Channel 4)
Encryption key:on
Bit Rates:54 Mb/s
Extra:rsn_ie=30140100000fac020100000fac020100000fac020000
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : TKIP
Pairwise Ciphers (1) : TKIP
Authentication Suites (1) : PSK
Quality=93/100 Signal level=70/100
Cell 02 - Address: 1C:AF:F7:26:BD:C8
ESSID:"k-60-net"
Protocol:IEEE 802.11bgn
Mode:Master
Frequency:2.427 GHz (Channel 4)
Encryption key:on
Bit Rates:150 Mb/s
Extra:wpa_ie=dd160050f20101000050f20401000050f20401000050f20 2
IE: WPA Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
Extra:rsn_ie=30140100000fac040100000fac040100000fac020000
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
Quality=100/100 Signal level=91/100

Видно, что найдены две беспроводных сети. Из вывода команды можно увидеть используемые идентификаторы сети (ESSID), частоты (каналы), протоколы, методы шифрование, уровень сигнала и прочее.

Настройка Wi-Fi сети производится в файле: «/etc/network/interfaces», так как там будет храниться ключ для доступа к беспроводной сети, то нужно ограничить доступ к файлу командой «chmod 0600 /etc/network/interfaces» (команда выставляет права чтения и записи в файл только для владельца файла, владельцем является root).

Пример файла «/etc/network/interfaces»:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback

auto wlan0
iface wlan0 inet dhcp
wpa-ssid "k-60-net"
wpa-psk "dsqTtfsvsNyfiCsNMaga"

wpa-ssid — задает идентификатор беспроводной сети

wpa-psk — задаёт парольную фразу на доступ к сети. (Может быть задана в виде ASCII, как в примере, либо в виде 64 битного шестнадцатиричного числа сгенерированного утилитой wpa_passphrase на основании ASCII парольной фразы)

Настройку Wi-Fi сети можно задать и в отдельном файле-конфиге для wpa_supplicant и указав его в «/etc/network/interfaces».

Пример такого файла «/etc/network/interfaces»:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback

auto wlan0
iface wlan0 inet dhcp
wpa-conf /etc/network/wpa_supp.conf

Пример файла «/etc/network/wpa_supp.conf«:

network={
ssid="k-60-net"
proto=WPA2
key_mgmt=WPA-PSK
pairwise=CCMP
group=CCMP
psk="dsqTtfsvsNyfiCsNMaga"
}

CCMP — соответствует шифрованию AES

После настройки конфигурационных файлов можно включить интерфейс командой: «ifup wlan0«

Посмотреть состояние беспроводного интерфейса можно командой «iwconfig«, однако эта команда не распознаёт использование WPA/WPA2 и показывает Security mode: Open.

Для достоверного отображение информации лучше использовать команду «wpa_cli status«

Пример вывода команды:

Selected interface 'wlan0'
bssid=1c:af:f7:26:bd:c8
ssid=k-60-net
id=0
pairwisecipher=CCMP
group
cipher=CCMP
key_mmgmt=WPA2-PSK
wpa
ate=COMPLETED
ip_address=192.168.0.10