Подключение к беспроводной сети через терминал в Ubuntu может показаться сложной задачей, особенно если вы привыкли к графическому интерфейсу. Однако знание командной строки открывает новые возможности: вы сможете настраивать сеть на серверах без GUI, восстанавливать соединение при сбоях или автоматизировать подключение через скрипты. В этой статье мы разберём все актуальные способы — от простого nmcli до ручной настройки через wpa_supplicant.
Почему это важно? Во-первых, консольные инструменты часто работают стабильнее графических аналогов, особенно на слабом оборудовании или в минималистичных дистрибутивах типа Ubuntu Server. Во-вторых, умение управлять сетью через терминал пригодится при удалённой настройке устройств по SSH или в случае, если графическая оболочка GNOME/KDE отказала. Мы рассмотрим не только базовые команды, но и нюансы работы с скрытыми сетями, Enterprise-сетями (WPA2-Enterprise) и диагностикой проблем.
Примечание: все команды в статье тестировались на Ubuntu 22.04 LTS и 24.04 LTS, но подойдут и для других дистрибутивов на базе Debian (например, Linux Mint или Pop!_OS). Если вы используете старую версию (до 20.04), некоторые параметры могут отличаться — об этом мы предупредим отдельно.
1. Подготовка: проверка сетевых интерфейсов и драйверов
Прежде чем подключаться к Wi-Fi, убедитесь, что ваш беспроводной адаптер распознан системой и готов к работе. Для этого выполните две ключевые команды:
ip a
iwconfig
В выводе ip a ищите интерфейс с названием типа wlan0, wlp3s0 или подобным (зависит от модели адаптера). Если такого интерфейса нет, проблема может быть в драйверах. В Ubuntu большинство адаптеров поддерживаются "из коробки", но для некоторых моделей (например, Broadcom или новые Realtek) потребуется установка проприетарных драйверов:
sudo apt update
sudo ubuntu-drivers autoinstall
После установки драйверов перезагрузите систему. Если адаптер по-прежнему не определяется, проверьте его физическое подключение (для USB-адаптеров) или обратитесь к документации производителя.
⚠️ Внимание: На ноутбуках с двойной загрузкой (Windows + Ubuntu) Wi-Fi адаптер может быть отключён в BIOS или через функциональные клавиши (например, Fn + F2). Перед настройкой убедитесь, что адаптер включён на аппаратном уровне.
2. Способ 1: подключение через nmcli (рекомендуемый)
nmcli (NetworkManager Command Line Interface) — самый простой и универсальный способ управления сетями в Ubuntu. Этот инструмент входит в стандартную поставку и поддерживает все современные протоколы безопасности, включая WPA3.
Чтобы увидеть список доступных сетей, выполните:
nmcli dev wifi list
Для подключения к открытой сети (без пароля):
nmcli dev wifi connect "ИМЯ_СЕТИ"
Для защищённой сети (WPA/WPA2):
nmcli dev wifi connect "ИМЯ_СЕТИ" password "ВАШ_ПАРОЛЬ"
Если имя сети содержит пробелы или специальные символы, заключите его в кавычки. После успешного подключения проверьте статус:
nmcli connection show
Сканер доступных сетей запущен (nmcli dev wifi list)
Имя сети указано верно (с учётом регистра!)
Пароль введён без опечаток
Подключение подтверждено (nmcli connection show)
-->
Для скрытых сетей добавьте параметр hidden yes:
nmcli dev wifi connect "ИМЯ_СЕТИ" password "ПАРОЛЬ" hidden yes
⚠️ Внимание: Если после подключения интернет не работает, проверьте настройкиDNS. Иногда NetworkManager не получает их автоматически. Вручную задать DNS можно командой:nmcli connection modify "ИМЯ_СЕТИ" ipv4.dns "8.8.8.8, 8.8.4.4"
3. Способ 2: ручная настройка через wpa_supplicant
wpa_supplicant — это низкоуровневый инструмент для управления Wi-Fi подключениями, который часто используется на серверах или в системах без NetworkManager. Его настройка требует ручного редактирования конфигурационного файла, но даёт больше контроля над параметрами безопасности.
Сначала создайте резервную копию стандартного конфига:
sudo cp /etc/wpa_supplicant/wpa_supplicant.conf /etc/wpa_supplicant/wpa_supplicant.conf.bak
Теперь отредактируйте файл (например, через nano):
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Добавьте в конец файла блок с настройками вашей сети (пример для WPA2-PSK):
network={
ssid="ИМЯ_СЕТИ"
psk="ВАШ_ПАРОЛЬ"
key_mgmt=WPA-PSK
}
Для WPA3 замените key_mgmt на SAE. Сохраните файл (Ctrl+O, затем Ctrl+X) и подключитесь:
sudo wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf
sudo dhclient wlan0
Первая команда запускает wpa_supplicant в фоновом режиме (-B), вторая — получает IP-адрес по DHCP. Если нужно указать статический IP, используйте ip addr add вместо dhclient.
Пример конфига для Enterprise-сети (WPA2-Enterprise)
network={
ssid="CorpWiFi"
key_mgmt=WPA-EAP
eap=PEAP
identity="ваш_логин@домен"
password="ваш_пароль"
phase2="auth=MSCHAPV2"
}
4. Подключение к скрытым сетям и сети без DHCP
Скрытые сети (hidden SSID) не транслируют своё имя, поэтому для подключения требуется явное указание SSID. В nmcli это делается параметром hidden yes, как показано выше. Для wpa_supplicant добавьте строку scan_ssid=1 в блок сети:
network={
ssid="СКРЫТОЕ_ИМЯ"
scan_ssid=1
psk="пароль"
}
Если сеть не раздаёт IP-адреса по DHCP (например, в корпоративных сетях), настройте статический адрес вручную. Для NetworkManager:
nmcli connection modify "ИМЯ_СЕТИ" ipv4.method manual ipv4.addresses 192.168.1.100/24 ipv4.gateway 192.168.1.1 ipv4.dns "8.8.8.8"
Для wpa_supplicant после подключения выполните:
sudo ip addr add 192.168.1.100/24 dev wlan0
sudo ip route add default via 192.168.1.1
| Параметр | Описание | Пример значения |
|---|---|---|
scan_ssid |
Включает сканирование скрытых сетей | 1 |
key_mgmt |
Протокол аутентификации | WPA-PSK, SAE, WPA-EAP |
ipv4.method |
Способ получения IP | auto (DHCP) или manual |
phase2 |
Дополнительные параметры для Enterprise-сетей | auth=MSCHAPV2 |
5. Диагностика проблем с подключением
Если подключение не удаётся, начните с проверки статуса интерфейса:
ip link show wlan0
iwconfig wlan0
Убедитесь, что интерфейс включён (UP) и не заблокирован (rfkill). Проверьте блокировку:
rfkill list
Если сеть видна, но подключение срывается, проверьте лог wpa_supplicant:
journalctl -u wpa_supplicant -f
Типичные ошибки и их решения:
- 🔴 Ошибка аутентификации: неверный пароль или тип безопасности. Уточните параметры сети в настройках роутера.
- 🔴 "No network with SSID found": проверьте регистр в имени сети и наличие параметра
scan_ssid=1для скрытых сетей. - 🔴 Нет IP-адреса: проблема с
DHCP. Попробуйте задать статический IP или перезапуститеdhclient. - 🔴 Интерфейс неактивен: проверьте драйверы (
dmesg | grep wifi) или физическое подключение адаптера.
6. Автоматизация подключения при запуске системы
Чтобы сеть подключалась автоматически при загрузке, добавьте её в автозапуск NetworkManager:
nmcli connection modify "ИМЯ_СЕТИ" connection.autoconnect yes
Для wpa_supplicant отредактируйте файл /etc/network/interfaces:
auto wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
Если используете статический IP, замените dhcp на:
iface wlan0 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
После изменений перезагрузите систему или перезапустите сетевые службы:
sudo systemctl restart networking
⚠️ Внимание: На некоторых версиях Ubuntu (начиная с 22.04) службаnetworkingможет быть заменена наsystemd-networkd. В этом случае используйте:sudo systemctl restart systemd-networkd
7. Альтернативные инструменты: nmtui и iw
Если nmcli кажется слишком сложным, попробуйте текстовый интерфейс nmtui:
sudo nmtui
Это полуграфический инструмент, который позволяет управлять сетями через меню с помощью клавиш со стрелочками. Поддерживает все те же функции, что и nmcli, но визуально проще для новичков.
Для продвинутых пользователей полезен инструмент iw — современная замена iwconfig. Например, чтобы просканировать сети:
sudo iw dev wlan0 scan | grep SSID
Или подключиться к сети без NetworkManager:
sudo iw dev wlan0 connect "ИМЯ_СЕТИ" key d:0:ВАШ_ПАРОЛЬ
Обратите внимание, что iw не управляет IP-адресами — для этого по-прежнему нужен dhclient или ручная настройка.
FAQ: ответы на частые вопросы
Можно ли подключиться к Wi-Fi без пароля через терминал?
Да, для открытых сетей используйте команду:
nmcli dev wifi connect "ИМЯ_СЕТИ"
или для wpa_supplicant:
network={
ssid="ИМЯ_СЕТИ"
key_mgmt=NONE
}
Но помните, что открытые сети небезопасны — трафик в них может перехватываться.
Как сохранить пароль Wi-Fi, чтобы не вводить его каждый раз?
При подключении через nmcli пароль сохраняется автоматически в /etc/NetworkManager/system-connections/. Для wpa_supplicant пароль хранится в /etc/wpa_supplicant/wpa_supplicant.conf — просто не удаляйте этот файл.
Чтобы увидеть сохранённые сети в NetworkManager:
nmcli connection show
Почему после перезагрузки Wi-Fi не подключается автоматически?
Возможные причины:
- 🔹 В настройках сети отключён автоподключение (
nmcli connection modify "ИМЯ" connection.autoconnect yes). - 🔹 Служба
NetworkManagerне запущена (sudo systemctl enable --now NetworkManager). - 🔹 Конфликт с другими сетевыми менеджерами (например,
systemd-networkd).
Проверьте логи:
journalctl -u NetworkManager --no-pager | grep -i error
Как подключиться к Wi-Fi 6 (802.11ax) в Ubuntu?
Ubuntu 22.04 и новее поддерживают Wi-Fi 6 "из коробки", если ваш адаптер совместим. Для проверки:
iw list | grep -A 10 "Supported interface modes"
Ищите строки с HE (High Efficiency) — это и есть поддержка 802.11ax. Если адаптер поддерживает, но сеть не подключается, обновите ядро:
sudo apt install linux-generic-hwe-22.04
Можно ли управлять Wi-Fi через SSH на удалённом сервере?
Да, но для этого на сервере должен быть установлен NetworkManager или wpa_supplicant. Подключитесь по SSH и используйте те же команды, что и локально. Учтите:
- 🔹 При смене сети соединение
SSHразорвётся — подключайтесь через другую сеть (например, Ethernet). - 🔹 Для безопасности отключите автоподключение к недоверенным сетям.