Подключение к Wi-Fi на Linux: 5 работающих способов для новичков и профи

Подключение к Wi-Fi на Linux часто кажется новичкам сложнее, чем на Windows или macOS. Причина не в самой системе, а в разнообразии дистрибутивов и инструментов: NetworkManager, wpa_supplicant, nmcli или графические утилиты вроде KDE Plasma и GNOME Settings. Даже опытные пользователи иногда сталкиваются с проблемами, когда драйверы не распознают адаптер или сеть требует нестандартных параметров безопасности.

В этой статье мы разберём все актуальные способы подключения — от простого клика в GUI до ручной настройки через консоль. Вы узнаете, как проверить совместимость оборудования, установить пропущенные драйверы и устранить типичные ошибки вроде Authentication failed или отсутствия сетей в списке. А если вы используете редкий дистрибутив или старую версию ядра, найдёте решения для вашего случая.

Материал подходит для Ubuntu/Debian, Arch Linux, Fedora и производных. Все команды протестированы на ядрах 5.15–6.8, но большинство методов работают и на более старых версиях. Начнём с самого простого — подключения через графический интерфейс.

1. Подключение через графический интерфейс (GUI)

Если вы используете GNOME, KDE, XFCE или другой популярный DE (Desktop Environment), то 90% задач по настройке Wi-Fi решаются в несколько кликов. Рассмотрим процесс на примере Ubuntu 24.04 с оболочкой GNOME 46, но логика будет аналогичной для других окружений.

Откройте меню сети в правом верхнем углу экрана (значок Wi-Fi или треугольника). Если иконки нет — проверьте, запущен ли NetworkManager (об этом позже). В списке доступных сетей выберите нужную, введите пароль и подтвердите подключение. Если сеть скрытая, нажмите Подключиться к скрытой сети и введите SSID вручную.

  • 🔄 Обновление списка сетей: Если ваша сеть не отображается, кликните по значку Wi-Fi и выберите Обновить список или перезагрузите NetworkManager командой
    sudo systemctl restart NetworkManager
  • 🔒 Проблемы с паролем: Убедитесь, что вы вводите пароль от Wi-Fi, а не от роутера (они могут отличаться). Если пароль содержит спецсимволы, попробуйте ввести его в текстовом редакторе, а затем скопировать.
  • 📡 Слабый сигнал: В GUI некоторых DE (например, KDE Plasma) можно увидеть уровень сигнала. Если он низкий, попробуйте подойти ближе к роутеру или изменить канал в настройках маршрутизатора.

Если подключение не удалось, проверьте, не блокирует ли сеть MAC-фильтрация на роутере. В этом случае добавьте MAC-адрес вашего Linux-ПК в список разрешённых устройств. Узнать MAC-адрес Wi-Fi-адаптера можно командой:

ip link show | grep ether
📊 Какой дистрибутив Linux вы используете?
Ubuntu/Debian
Arch Linux/Manjaro
Fedora/RHEL
OpenSUSE
Другой

2. Подключение через терминал с помощью nmcli

nmcli — это консольный инструмент для управления NetworkManager, который установлен по умолчанию в большинстве дистрибутивов. Он позволяет подключаться к сетям, настраивать профили и диагностировать проблемы без GUI. Ниже — пошаговая инструкция.

Сначала проверьте, запущен ли NetworkManager:

systemctl status NetworkManager

Если сервис не активен, запустите его:

sudo systemctl start NetworkManager

Теперь отобразите список доступных сетей:

nmcli device wifi list

Найдите в списке вашу сеть и запомните её SSID. Для подключения используйте команду:

nmcli device wifi connect "ИМЯ_СЕТИ" password "ПАРОЛЬ"

Если сеть скрытая, добавьте флаг --hidden yes:

nmcli device wifi connect "ИМЯ_СЕТИ" password "ПАРОЛЬ" --hidden yes

Проверьте статус NetworkManager|Убедитесь, что Wi-Fi-адаптер включен (rfkill unblock wifi)|Запомните SSID и пароль сети|Проверьте, нет ли в пароле спецсимволов, которые нужно экранировать

-->

⚠️ Внимание: Если в пароле есть символы $, " или \, их нужно экранировать обратным слэшем: nmcli device wifi connect "MyWiFi" password "pa\$\$w0rd". Иначе терминал интерпретирует их как часть команды.

После подключения проверьте статус:

nmcli connection show

Если в столбце DEVICE отображается имя вашего Wi-Fi-адаптера (например, wlan0), подключение успешно. Чтобы отключиться:

nmcli connection down "ИМЯ_СЕТИ"

3. Ручное подключение через wpa_supplicant

wpa_supplicant — это утилита для настройки Wi-Fi на низком уровне, которая работает даже без NetworkManager. Её часто используют на серверах или минималистичных системах без GUI. Метод требует прав суперпользователя и базовых знаний работы с конфигурационными файлами.

Сначала проверьте, установлен ли пакет:

which wpa_supplicant

Если команда возвращает путь (например, /usr/sbin/wpa_supplicant), пакет установлен. Если нет — установите его:

  • 📦 На Debian/Ubuntu:
    sudo apt install wpasupplicant
  • 📦 На Arch Linux:
    sudo pacman -S wpa_supplicant
  • 📦 На Fedora:
    sudo dnf install wpa_supplicant

Теперь создайте конфигурационный файл для вашей сети:

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Добавьте в файл следующий блок (замените ИМЯ_СЕТИ и ПАРОЛЬ):

network={

ssid="ИМЯ_СЕТИ"

psk="ПАРОЛЬ"

}

Сохраните файл (Ctrl+O, затем Enter) и закройте редактор (Ctrl+X).

Подключитесь к сети:

sudo wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf

Затем запросите IP-адрес у роутера:

sudo dhclient wlan0
⚠️ Внимание: Если после выполнения wpa_supplicant сеть не подключается, проверьте, не блокирует ли rfkill Wi-Fi-адаптер. Разблокируйте его командой sudo rfkill unblock wifi.

4. Диагностика проблем с Wi-Fi на Linux

Если Wi-Fi не работает вообще (нет сетей в списке, адаптер не определяется или подключение постоянно разрывается), причины могут быть разными: от отсутствия драйверов до аппаратных неисправностей. Разберём типичные сценарии и их решения.

4.1. Wi-Fi-адаптер не определяется

Проверьте, видит ли система ваш адаптер:

lspci | grep -i network

или для USB-адаптеров:

lsusb

Если в выводе нет вашего устройства, проблема может быть в:

  • 🔌 Физическом подключении: Переподключите адаптер (особенно актуально для USB).
  • 🔄 Блокировке rfkill: Проверьте статус командой rfkill list. Если Wi-Fi заблокирован, разблокируйте: sudo rfkill unblock wifi.
  • 🖥️ Отсутствии драйверов: Установите проприетарные драйверы (например, для Broadcom или Realtek).

4.2. Ошибка аутентификации (Authentication failed)

Эта ошибка возникает, если:

  • ❌ Неверный пароль (проверьте регистр и спецсимволы).
  • 🔒 Неправильный тип безопасности (например, роутер использует WPA3, а клиент пытается подключиться как к WPA2).
  • 🕒 Истёк DHCP-лиз (перезагрузите роутер).

Попробуйте подключиться с явным указанием типа безопасности:

nmcli device wifi connect "ИМЯ_СЕТИ" password "ПАРОЛЬ" wifi-sec.key-mgmt wpa-psk

4.3. Постоянные обрывы соединения

Если сеть подключается, но соединение неустойчивое:

  • 📶 Проверьте уровень сигнала: iwconfig wlan0 | grep Signal. Если значение ниже -70 dBm, попробуйте переместить роутер или использовать repeater.
  • 🔄 Измените канал Wi-Fi на роутере (в настройках веб-интерфейса). Каналы 1, 6 и 11 обычно менее загружены.
  • 🔋 Отключите энергосбережение для Wi-Fi-адаптера: sudo iwconfig wlan0 power off.
Симптом Возможная причина Решение
Нет сетей в списке Адаптер отключён или нет драйверов rfkill unblock wifi или установка драйверов
Ошибка Activation of network connection failed Неверные настройки IP (DHCP не выдаёт адрес) Проверьте sudo dhclient wlan0 или настройте статический IP
Подключение есть, но нет интернета Неверный DNS или маршрут sudo resolvectl dns wlan0 8.8.8.8 или проверьте ip route
Низкая скорость соединения Перегрузка канала или устаревший стандарт (802.11n вместо ac/ax) Измените канал на роутере или обновите драйверы адаптера
Как проверить поддерживаемые стандарты Wi-Fi вашим адаптером?

Откройте терминал и выполните команду:

iw list | grep -A 10 "Supported interface modes"

В выводе найдите строки Freq и VHT:

- 2.4 GHz — поддерживаются стандарты до 802.11n (до 150–300 Мбит/с).

- 5 GHz + VHT — поддерживается 802.11ac (до 1–3 Гбит/с).

- 6 GHz + HE — поддерживается 802.11ax (Wi-Fi 6/6E).

5. Настройка скрытых сетей и enterprise-сетей (WPA2-Enterprise)

Скрытые сети и сети сEnterprise-аутентификацией (например, в университетах или офисах) требуют дополнительных параметров. Рассмотрим оба случая.

5.1. Подключение к скрытой сети

Если ваша сеть не транслирует SSID, подключиться к ней можно:

  • 🖱️ Через GUI: Выберите опцию Подключиться к скрытой сети и введите SSID вручную.
  • 💻 Через nmcli:
    nmcli device wifi connect "ИМЯ_СЕТИ" password "ПАРОЛЬ" --hidden yes
  • 📝 Через wpa_supplicant: Добавьте строку scan_ssid=1 в конфигурационный файл:
    network={
    

    ssid="ИМЯ_СЕТИ"

    psk="ПАРОЛЬ"

    scan_ssid=1

    }

5.2. Подключение к WPA2-Enterprise (802.1X)

Для сетей с Enterprise-аутентификацией (например, eduroam) потребуется:

  1. Установите пакет wpasupplicant (если ещё не установлен).
  2. Создайте конфиг:
    sudo nano /etc/wpa_supplicant/enterprise.conf

    Добавьте блок (замените данные):

    network={
    

    ssid="eduroam"

    key_mgmt=WPA-EAP

    eap=PEAP

    identity="ваш_логин@домен"

    password="ваш_пароль"

    phase2="auth=MSCHAPV2"

    }

  3. Подключитесь:
    sudo wpa_supplicant -B -i wlan0 -c /etc/wpa_supplicant/enterprise.conf
⚠️ Внимание: Для некоторых Enterprise-сетей требуется установка корневого сертификата. Скачайте его (обычно предоставляется администратором сети) и укажите путь в конфиге:
ca_cert="/путь/к/сертификату.pem"

6. Установка драйверов для Wi-Fi-адаптеров

Если ваш Wi-Fi-адаптер не определяется или работает нестабильно, причина часто кроется в отсутствии или некорректной работе драйверов. Разберёмся, как их установить для популярных чипсетов.

6.1. Проверка модели адаптера

Узнайте модель вашего адаптера:

lspci -knn | grep -iA3 network

или для USB:

lsusb

В выводе найдите строку с Network controller или Wireless. Например:

03:00.0 Network controller [0280]: Intel Corporation Wi-Fi 6 AX200 [8086:2723] (rev 1a)

Здесь 8086:2723 — это Vendor:Device ID, по которому можно найти драйвер.

6.2. Установка драйверов для популярных чипсетов

Производитель Модели чипсетов Драйвер Команда установки
Intel AX200, AX201, AX210, 9260 iwlwifi (входит в ядро) Установите прошивку: sudo apt install firmware-iwlwifi
Broadcom BCM43xx b43 или wl sudo apt install firmware-b43-installer или sudo apt install broadcom-sta-dkms
Realtek RTL8188, RTL8192, RTL8821 rtl8xxxu или rtlwifi Установите из репозиториев или скомпилируйте с GitHub
Qualcomm Atheros AR9285, AR9462 ath9k (входит в ядро) Установите прошивку: sudo apt install firmware-atheros

Для Realtek и некоторых Broadcom может потребоваться ручная компиляция драйверов. Например, для RTL8821CE:

git clone https://github.com/tomaspinho/rtl8821ce

cd rtl8821ce

make

sudo make install

sudo modprobe 8821ce

⚠️ Внимание: После обновления ядра Linux самосборные драйверы могут перестать работать. Чтобы избежать проблем, используйте DKMS (Dynamic Kernel Module Support):
sudo apt install dkms

sudo dkms add -m rtl8821ce -v 1.0

sudo dkms build -m rtl8821ce -v 1.0

sudo dkms install -m rtl8821ce -v 1.0

7. Автоматическое подключение при запуске системы

Чтобы Linux подключался к Wi-Fi автоматически при загрузке, настройте NetworkManager или systemd. Рассмотрим оба варианта.

7.1. Настройка автоподключения в NetworkManager

Если вы используете nmcli, сделайте сеть приоритетной:

nmcli connection modify "ИМЯ_СЕТИ" connection.autoconnect yes

Проверьте приоритет:

nmcli connection show

Сеть с наименьшим значением AUTOCONNECT PRIORITY будет подключаться первой.

7.2. Автоподключение через wpa_supplicant + systemd

Создайте сервис для автоматического запуска wpa_supplicant:

sudo nano /etc/systemd/system/wpa_supplicant@.service

Добавьте:

[Unit]

Description=WPA supplicant daemon

After=sys-subsystem-net-devices-%i.device

[Service]

Type=simple

ExecStart=/sbin/wpa_supplicant -u -i %I -c /etc/wpa_supplicant/wpa_supplicant.conf

Restart=always

RestartSec=5

[Install]

WantedBy=multi-user.target

Активируйте сервис:

sudo systemctl enable wpa_supplicant@wlan0

sudo systemctl start wpa_supplicant@wlan0

Для автоматического получения IP добавьте аналогичный сервис для dhclient:

sudo nano /etc/systemd/system/dhclient@.service
[Unit]

Description=DHCP Client

After=wpa_supplicant@%i.service

[Service]

Type=forking

ExecStart=/sbin/dhclient %I

Restart=always

[Install]

WantedBy=multi-user.target

Активируйте:

sudo systemctl enable dhclient@wlan0

8. Альтернативные способы подключения

Если стандартные методы не сработали, попробуйте альтернативные инструменты или обходные пути.

8.1. Использование nmtui (TUI для NetworkManager)

nmtui — это текстовый интерфейс для NetworkManager, удобный для серверов без GUI. Запустите его:

sudo nmtui

Выберите Activate a connection, найдите свою сеть в списке и подключитесь.

8.2. Подключение через iwconfig и dhclient (устаревший метод)

Этот способ работает на старых системах, но не рекомендуется для современных дистрибутивов:

sudo ifconfig wlan0 up

sudo iwconfig wlan0 essid "ИМЯ_СЕТИ" key "ПАРОЛЬ"

sudo dhclient wlan0

8.3. Раздача Wi-Fi с телефона (как запасной вариант)

Если настройка Wi-Fi на Linux не удаётся, временно используйте телефон как точку доступа:

  1. Включите Режим модема в настройках телефона.
  2. Подключитесь к создаваемой сети как к обычной Wi-Fi-сети (см. раздел 1 или 2).
  3. Для стабильности отключите энергосбережение на телефоне.
alias wifi-home='nmcli device wifi connect "MyHomeWiFi" password "mypassword"'

После этого подключаться можно короткой командой wifi-home.-->

FAQ: Частые вопросы по подключению Wi-Fi на Linux

Мой Wi-Fi-адаптер не определяется. Что делать?

Сначала проверьте, видит ли систему адаптер командой lspci или lsusb. Если устройство есть в списке, но не работает:

  1. Проверьте, не заблокирован ли адаптер: rfkill list.
  2. Установите драйверы (см. раздел 6).
  3. Проверьте логи ядра: dmesg | grep -i wifi.

Если адаптера нет в списке, проверьте физическое подключение (особенно для USB-устройств) или попробуйте другой порт.

Как подключиться к Wi-Fi без пароля (открытая сеть)?

Для открытых сетей используйте:

  • В GUI: Выберите сеть и подключитесь без ввода пароля.
  • В nmcli:
    nmcli device wifi connect "ИМЯ_СЕТИ"
  • В wpa_supplicant: Добавьте в конфиг:
    network={
    

    ssid="ИМЯ_СЕТИ"

    key_mgmt=NONE

    }

⚠️ Будьте осторожны: открытые сети небезопасны. Не передавайте конфиденциальные данные без VPN.

Почему скорость Wi-Fi на Linux ниже, чем на Windows?

Возможные причины и решения:

  • Драйверы: Установите проприетарные драйверы (например, wl для Broadcom).
  • Режим энергосбережения: Отключите его: sudo iwconfig wlan0 power off.
  • Стандарт Wi-Fi: Проверьте, что роутер и адаптер работают в одном стандарте (например, 802.11ac).
  • Перегрузка канала: Измените канал на роутере на менее загруженный (используйте iwlist wlan0 scan | grep Frequency для анализа).
Как сохранить пароль Wi-Fi, чтобы не вводить его каждый раз?

NetworkManager автоматически сохраняет пароли в зашифрованном виде. Чтобы проверить сохранённые сети:

nmcli connection show

Если сеть не сохраняется:

  1. Убедитесь, что у вас есть права на запись в /etc/NetworkManager/system-connections/.
  2. Проверьте, не установлен ли флаг no-auto-default в /etc/NetworkManager/NetworkManager.conf.

Пароли хранятся в файлах конфигурации сетей. Посмотреть пароль можно так:

sudo grep psk /etc/NetworkManager/system-connections/*
Можно ли подключиться к Wi-Fi 6 (802.11ax) на Linux?

Да, но требуется:

  • Адаптер с поддержкой Wi-Fi 6 (например, Intel AX200/AX210 или Qualcomm FastConnect 6800).
  • Ядро Linux версии 5.4+ (для полной поддержки 802.11ax).
  • Драйвер с поддержкой HE (High Efficiency). Для Intel это iwlwifi из ядра 5.10+.

Проверьте поддержку:

iw list | grep -i "HE"

Если в выводе есть HE Iftypes, ваш адаптер поддерживает Wi-Fi 6.