Как подключиться к Wi-Fi через консоль в Ubuntu: полное руководство

Подключение к беспроводной сети через терминал в 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), некоторые параметры могут отличаться — об этом мы предупредим отдельно.

📊 Какой способ подключения к Wi-Fi вы используете чаще?
Через графический интерфейс
Через терминал (nmcli)
Через wpa_supplicant
Не знаю, что это

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).
  • 🔹 Для безопасности отключите автоподключение к недоверенным сетям.