В данном руководстве описывается процесс подключения к Wi-Fi сети через командную строку на серверах и настольных компьютерах с операционной системой Debian 11/10, используя wpa_supplicant. Это программное обеспечение представляет собой реализацию компонента supplicant для протокола WPA. В контексте беспроводной локальной сети supplicant выполняет функцию клиентского ПО, установленного на устройствах пользователей, и требует аутентификации для доступа к сети.
Учтите, что перед тем как подключиться к Wi-Fi, потребуется установить программное обеспечение wpa_supplicant. Для этого вам нужно будет сначала использовать проводное соединение Ethernet, что нужно сделать всего один раз. Если этот способ вам не подходит, прошу прощения. Возможно, в будущем Debian будет уже включать wpa_supplicant в свою поставку.
Содержание статьи
Определите название вашего беспроводного интерфейса и сети Wi-Fi.
Используйте команду iwconfig для определения названия вашего беспроводного интерфейса.
iwconfig
wlan0 — это общее обозначение для беспроводного сетевого интерфейса в операционных системах Linux. В дистрибутивах, использующих systemd, вы можете встретить беспроводной интерфейс с именем wlp4s0.

В данный момент беспроводной интерфейс не подключен к ни одной точке доступа. Для активации беспроводного интерфейса выполните следующую команду.
sudo ip link set dev wlp4s0 up
Если вам встретится следующая ошибка,
RTNETLINK answers: Operation not possible due to RF-kill
Чтобы активировать Wi-Fi, выполните следующую команду.
sudo rfkill unblock wifi
Затем выполните поиск имени вашей беспроводной сети, просканировав доступные сети с помощью следующей команды. Не забудьте заменить wlp4s0 на название вашего беспроводного интерфейса. ESSID обозначает идентификатор имени сети.
sudo iwlist wlp4s0 scan | grep ESSID

Установление соединения с Wi-Fi через WPA_Supplicant
Теперь необходимо установить wpa_supplicant на Debian 11/10 из официального программного репозитория.
sudo apt install wpasupplicant
Необходимо создать файл под названием wpa_supplicant.conf с помощью утилиты wpa_passphrase. Этот файл конфигурации содержит информацию обо всех сетях, к которым пользователь намеревается подключить устройство. Для его создания выполните следующую команду, предварительно заменив ESSID (название сети) и Wi-Fi пароль на свои данные.
wpa_passphrase your-ESSID your-wifi-passphrase | sudo tee - a /etc/wpa_supplicant/wpa_supplicant.conf

Если ваш ESSID включает пробелы, например (linuxbabe WiFi), то вам следует заключить его в двойные кавычки ( «linuxbabe WiFi» ) в указанной ранее команде.
Результат команды wpa_passphrase будет перенаправлен в tee и сохранен в файл /etc/wpa_supplicant/wpa_supplicant.conf.Теперь выполните следующую команду, чтобы соединить вашу беспроводную карту с точкой доступа.
sudo wpa_supplicant - c /etc/wpa_supplicant/wpa_supplicant.conf - i wlp4s0
Следующий результат подтверждает, что ваша беспроводная карта успешно соединилась с точкой доступа.
Успешно инициализирован wpa_supplicant wlp4s0: SME: Пытаюсь аутентифицироваться с c5:4a:21:53:ac:eb (SSID='CMCC-11802' freq=2437 MHz) wlp4s0: Пытаюсь ассоциироваться с c5:4a:21:53:ac:eb (SSID='CMCC-11802' freq=2437 MHz) wlp4s0: Ассоциирован с c5:4a:21:53:ac:eb wlp4s0: CTRL-EVENT-SUBNET-STATUS-UPDATE status=0 wlp4s0: WPA: Переговоры ключа завершены с c5:4a:21:53:ac:eb [PTK=CCMP GTK=CCMP] wlp4s0: CTRL-EVENT-CONNECTED - Подключение к c5:4a:21:53:ac:eb завершено [id=0 id_str=]
Учтите, что при использовании настольной версии Debian необходимо остановить Network Manager с помощью следующей команды, иначе это может вызвать проблемы с подключением при работе с wpa_supplicant.
sudo systemctl stop NetworkManager
Отключите автоматический запуск NetworkManager во время загрузки, введя следующую команду.
sudo systemctl disable NetworkManager-wait-online NetworkManager-dispatcher NetworkManager
По умолчанию wpa_supplicant функционирует в фоновом режиме. После завершения подключения откройте новое окно терминала и выполните
iwconfig
Теперь можно заметить, что беспроводной интерфейс стал связан с точкой доступа.

Нажмите CTRL+C, чтобы прервать текущий процесс wpa_supplicant и запустить его в фоновом режиме с помощью ключа — B.
sudo wpa_supplicant -B-c /etc/wpa_supplicant.conf - iwlp4s0
Несмотря на то что мы прошли аутентификацию и подключены к Wi-Fi, у нас по-прежнему отсутствует IP-адрес. Для получения частного IP-адреса от DHCP-сервера выполните следующую команду:
sudo dhclient wlp4s0
Теперь ваш беспроводной интерфейс обладает приватным IP-адресом, который можно отобразить с помощью:
ip addr show wlp4s0

Теперь у вас есть возможность подключиться к Интернету. Чтобы освободить личный IP-адрес, выполните следующие шаги.
sudo dhclient wlp4s0 - r
Подключение к невидимой Wi-Fi сети.
Если ваш беспроводной роутер не передает ESSID, вам потребуется внести следующую строку в файл /etc/wpa_supplicant/wpa_supplicant.conf.
scan_ssid=1
network=< ssid="linux16.ru Network" #psk="12345qwert" psk=68add4c5fee7dc3d0dac810f89b805d6d147c01e281f07f475a3e0195 scan_ssid=1 >
Автоматическое соединение при запуске операционной системы.
Для автоматического подключения к Wi-Fi при загрузке системы требуется изменить файл wpa_supplicant.service. Рекомендуется скопировать этот файл из директории /lib/systemd/system/ в /etc/systemd/system/, а затем внести изменения в его содержимое, чтобы избежать перезаписи наших настроек новой версией wpa_supplicant.
sudo cp /lib/systemd/system/wpa_supplicant.service /etc/systemd/system/wpa_supplicant.service
Используйте текстовый редактор командной строки, такой как Nano, для редактирования файла.
sudo nano /etc/systemd/system/wpa_supplicant.service
Определите следующую последовательность.
ExecStart=/sbin/wpa_supplicant - u - s - O /run/wpa_supplicant
Замените её на следующую. В данном случае мы включили файл конфигурации и имя беспроводного интерфейса в команду ExecStart.
ExecStart=/sbin/wpa_supplicant - u - s - c /etc/wpa_supplicant/wpa_supplicant.conf - i wlp4s0
Всегда стоит пытаться перезапустить wpa_supplicant при возникновении ошибки. Вставьте следующий код непосредственно под строкой ExecStart.
Restart=always
Сохраните изменения в файле и закройте его. (В текстовом редакторе Nano для сохранения файла нажмите Ctrl+O, а затем Enter для подтверждения. Для выхода используйте комбинацию Ctrl+X.) После этого перезагрузите systemd.
sudo systemctl daemon-reload
Активируйте службу wpa_supplicant для автоматического запуска.
sudo systemctl enable wpa_supplicant.service
Для получения приватного IP-адреса от DHCP-сервера необходимо запустить dhclient при загрузке системы. Это можно реализовать, создав службу systemd для dhclient.
sudo n
Теперь можно перезапустить systemd-networkd, чтобы проверить, функционирует ли ваша конфигурация.
sudo systemctl restart systemd-networkd
Альтернативный метод получения статического IP-адреса заключается в доступе к интерфейсу управления роутером, где можно привязать статический IP к MAC-адресу вашей беспроводной сетевой карты, при условии, что роутер поддерживает эту опцию.
Советуем ознакомиться с литературой:
- Использование Systemd в Linux: управление сервисами, уровни и журналы выполнения.
Некоторые сети Wi-Fi.
Файл конфигурации /etc/wpa_supplicant.conf способен хранить информацию о нескольких Wi-Fi сетях. wpa_supplicant самостоятельно определяет оптимальную сеть, опираясь на последовательность блоков сетей в файле, уровень безопасности каждой сети и интенсивность сигнала.
Для создания второй Wi-Fi сети введите следующую команду:
wpa_passphrase your-ESSID your-wifi-passphrase | sudo tee - a /etc/wpa_supplicant/wpa_supplicant.conf
Имейте в виду, что необходимо применять параметр - a к команде tee, чтобы добавить новую Wi-Fi сеть в файл, сохраняя при этом существующее содержимое.
Защита беспроводных сетей Wi-Fi
Избегайте применения WPA2 TKIP или WPA2 TKIP+AES для шифрования на вашем Wi-Fi роутере, так как TKIP утратил свою безопасность. Рекомендуется использовать WPA2-AES для защиты данных.
Заключение
Надеюсь, этот урок оказался полезным для подключения Debian 11/10 к Wi-Fi сети через терминал с использованием WPA Supplicant. Если вам понравилась эта информация, не забудьте подписаться на нашу бесплатную рассылку для получения дополнительных советов и рекомендаций.

