Network manager linux wifi

Настройка Wi-Fi точки доступа на Linux

date

17.08.2022

user

itpro

directory

Linux, Ubuntu

comments

комментариев 8

В этой статье мы рассмотрим, как создать точку доступа Wi-FI (Software AP) на любом компьютере или ноутбуке c Linux и беспроводным адаптером. Такую точку доступа можно использовать для организации беспроводной локальной сети в небольшом офисе или дома, или использовать для предоставления доступа в Интернет другим устройствам. В данном примере мы используем ноутбук с последней версией Ubuntu.

В первую очередь проверьте, что ваш Wi-Fi модуль поддерживает режим access point (AP). Для этого установите пакет iw:

Утилита iw используется настройки беспроводных интерфейсов (драйвер nl80211) из командной строки. Она поддерживает все новые драйверы, недавно добавленные в ядро. Старый инструмент iwconfig, использующий интерфейс Wireless Extensions, устарел, и настоятельно рекомендуется переключиться на iw и nl80211.

iw list вывести параметры безпроводного интерфейса в linux

В открывшемся списке под пунктом Supported interface modes, находим:

Это означает, что ваша Wi-Fi адаптер поддерживает работу в режиме точки доступа.

Запуск Wi-Fi Hotspot из графического интерфейса Ubuntu

В Ubuntu 20.04 LTS и более новых версиях с GNOME (3.28+) вы можете запустить точку доступа Wi-Fi прямо из графического интерфейса. Это самый простой способ для рядового пользователя.

Щелкните по значку сетевых подключений и в панели с настройками Wi-Fi выберите в выпадающем меню опцию Turn On Wi-Fi Hotspot.

параметры wifi в ubuntu

включить wi-fi hotspot в linux

В появившемся диалоговом окне укажите имя точки доступа и пароль для подключения.

ssid сети и ключ для wifi точки доступа на linux

Должна появится надпись, что ваша точка доступа активна. В этом же окне содержится QR код для подключения к вашей точке доступа Wi-Fi.

qr код для подключения к точке доступа

Используем Network Manager (nmcli) для организации точки доступа на Linux

В большинстве современных дистрибутивов Linux (Ubuntu, Debian, Mint, Fedora, CentOS и т.д.) для управления сетевыми соединениями можно использовать Network Manager. В этом примере мы покажем, как создать программную точку доступа на Linux с помощью Network Manager и утилитой командной строки nmcli.

Сначала нужно получить имя вашего wifi адаптера в системе. Выполните команду:

nmcli вывести список сетевых адаптеров в linux

В нашем примере имя устройства wifi адаптера – wlp4s0b1.

Если на вашем компьютере установлен dnsmasq (легковесный DHCP/DNS сервер), необходимо отключить его. Он будет вызывать конфликт с плагином dnsmasq в NetworkManager.

Читайте также:  Linux operatsion sistemasining emblemasi nima

Чтобы создать точку доступа на интерфейсе wlp4s0b1 с именем сети MyHomeWiFI и ключом сети (паролем) SuperPass21, выполните команды:

# nmcli con add type wifi ifname wlp4s0b1 mode ap con-name MyHomeWiFI ssid MyHomeWiFI
# nmcli con modify MyHomeWiFI 802-11-wireless.band bg
# nmcli con modify MyHomeWiFI 802-11-wireless.channel 1

# nmcli con modify MyHomeWiFI 802-11-wireless-security.key-mgmt wpa-psk
# nmcli con modify MyHomeWiFI 802-11-wireless-security.proto rsn
# nmcli con modify MyHomeWiFI 802-11-wireless-security.group ccmp
# nmcli con modify MyHomeWiFI 802-11-wireless-security.pairwise ccmp
# nmcli con modify MyHomeWiFI 802-11-wireless-security.psk SuperPass21
# nmcli con modify MyHomeWiFI ipv4.method shared
Запустите вашу точку доступа
# nmcli con up MyHomeWiFI

nmcli - создать точку доступа wi-fi с помощью network manager в linux

Если вы хотите запустить точку доступа на частоте 5 Ггц и использовать более высокий канал, измените соответствующие команды на:

# nmcli con modify MyHomeWiFI 802-11-wireless.band a
# nmcli con modify MyHomeWiFI 802-11-wireless.channel 35

По умолчанию DHCP сервер в NetworkManager выдает клиентам адреса из диапазона 10.42.0.x/24 (при этом 10.42.0.1 это адрес вашей точки доступа). Вы можете изменить этот диапазон:

# nmcli con modify MyHomeWiFI ipv4.addr 192.168.31.1/24

Чтобы отключить точку доступа, выполните команду:

# nmcli con down MyHomeWiFI

Чтобы полностью удалить ее:

# nmcli con delete MyHomeWiFI

Создаем точку доступа Wi-Fi в Linux с помощью hostapd

Популярным средством для организации точки доступа Wi-Fi на Linux системах является пакет hostapd. Установите его:

Создайте копию оригинального конфигурационного файла (/etc/hostapd/hostapd.conf). Добавьте следующую конфигурацию в hostapd.conf:

$ sudo nano /etc/hostapd/hostapd.conf

interface= wlp4s0b1 # Драйвер nl80211 подходит для большинства адаптеров WiFi driver=nl80211 # Имя вашей точки доступа ssid=MyHomeAP # номер беспроводного канала (от 1 до 13). channel=11 #Выберите режим вашей точки доступа (a = IEEE 802.11a, b = IEEE 802.11b, g = IEEE 802.11g) hw_mode=g # 1=wpa, 2=wep, 3=both auth_algs=1 # разрешить подключение со всех MAC адресов, кроме занесенных в черный список. macaddr_acl=0 wpa=2 wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP CCMP #Устанавливаем пароль к точке доступа wpa_passphrase=MyPass92
ieee80211n=1 ht_capab=[HT40-][SHORT-GI-40]

Размаскируйте сервис hostpad:

$ sudo systemctl unmask hostapd

Далее в параметре DAEMON_CONF файла /etc/default/hostapd укажите путь к конфигурационному файлу:

$ sudo nano /etc/default/hostapd

DAEMON_CONF="/etc/hostapd/hostapd.conf"

настройка hostapd

Теперь нужно настроить параметры беспроводного сетевого интерфейса. Необходимо задать статический IP, DNS, режим и прочие настройки. Заходим в директорию /etc/network/interfaces и добавляем следующее:

auto wlp3s0 iface wlp3s0 inet static address 10.10.0.1 netmask 255.255.255.0

Это нужно в том числе, чтобы NetworkManager не трогал сетевой интерфейс Wi-Fi. После сохранения настроек перезапустите компьютер.

Осталось настроить DHCP сервер, который будет назначать IP адреса устройствам, которые подключаются к вашей точке доступа Linux. В нашем примере мы будем использовать легкий dnsmasq:

Отредактируйте конфигурационный файл dnsmasq.conf. Укажем, что dnsmasq будет работать на интерфейсе wlp4s0b1, и выдавать IP адреса из диапазона 10.10.0.x. В самом простом случае конфигурация может быть такой:

$ sudo nano /etc/dnsmasq/dnsmasq.conf

interface=wlp4s0b1 dhcp-range=10.10.0.2,10.10.0.100,12h #Задать сервер DNS server=/www.google.com/8.8.8.8

Чтобы ваш хост Linux маршрутизировал пакеты между Wi-Fi клиентами и внешним интернет подключением, нужно включить роутинг и добавить правило в iptables:

Читайте также:  Linux mint 9 isadora

sysctl net.ipv4.ip_forward=1
iptables -t nat -A POSTROUTING -o enp3s0 -j MASQUERADE

Также можно использовать интерфейс bridge для организации доступа клиентов из локальной сети в Интернет (этот пункт мы опустим, чтобы не загромождать статью).

# systemctl start dnsmasq.service
# systemctl start hosapd

Теперь вы можете подключиться к вашей точке доступа с любого клиента, проверить что он получил IP адрес из заданного диапазона и может выходить в интернет.

Предыдущая статьяПредыдущая статья Следующая статья Следующая статья

Источник

Настройка Network Manager в консоли

NetworkManager — популярный инструмент управления сетевыми подключениями в Linux, имеет удобный графический интерфейс как для Gnome, так и для KDE, но бывают ситуации когда окружение рабочего стола не запускается, и нужно поднимать сеть из консоли, или нужно настроить сеть на сервере где не установлено рабочее окружение.

В этой инструкции будет рассмотрена настройка Network Manager в консоли с помощью утилиты nmcli. С настройкой в графическом интерфейсе вы разберетесь без каких-либо инструкций, поэтому была выбрана именно эта тема. Также поговорим о том, как посмотреть информацию о сетевых интерфейсах в системе.

Собираем информацию о системе

Чтобы получить информацию обо всех установленных в системе сетевых интерфейсах используйте команду:

Для просмотра статистики переданных и полученных пакетов для интерфейса, например, enp24s0, наберите:

А чтобы посмотреть таблицу маршрутизации:

Синтаксис и опции nmcli

Утилита nmcli — многофункциональный и гибкий инструмент командной строки для настройки сети с помощью Network Mananger из консоли. Сначала рассмотрим ее синтаксис:

$ nncli опции объект команда

Чаще всего в nmcli мы будем использовать такие объекты:

  • device — управление сетевыми интерфейсами;
  • connection — управление соединениями;
  • networking — управление сетью в целом;
  • general — показывает состояние всех сетевых протоколов и NetworkManager в целом;
  • radio — управление сетевыми протоколами, wifi, ethernent и т д.

Команды для каждого объекта разные, а опции нам не будут интересны. Дальше рассмотрим примеры nmcli network manager.

Настройка сети с помощью nmcli

1. Запустить NetworkManager

Первым делом нужно запустить NetworkManager из консоли:

sudo systemctl start NetworkManager

Теперь смотрим состояние интерфейсов с помощью nmcli:

Еще мы можем посмотреть имя хоста:

Получаем состояние интерфейсов

2. Список подключений

Теперь самое интересное, управление сетью nmcli. Смотрим список доступных подключений:

Здесь вы можете видеть одно проводное подключение для интерфейса enp24s0. С помощью следующей команды можно посмотреть информацию о нём:

nmcli connection show «Проводное соединение 2»

3. Управление подключениями

Чтобы подключится к сети с помощью нужного подключения используйте команду up:

Читайте также:  Echo line to file linux

nmcli connection up «Проводное соединение 2»

Команды можно сокращать, например:

nmcli conn up «Проводное соединение 2»

А для деактивации подключения используйте команду down:

nmcli conn down «Проводное соединение 2»

4. Создание DHCP соединения

Чтобы создать новое подключение используйте команду add. Например создадим новое подключение с именем dhcp:

nmcli connection add con-name «dhcp» type ethernet ifname enp24s0

Команде надо передать параметр type — тип устройства, в нашем случае ethernet (Проводное соединение), а также ifname — название сетевого интерфейса, в этом примере enp24s0. По умолчанию используется тип подключения DHCP, поэтому больше ничего настраивать не надо и вы можете уже активировать это подключение как описано выше.

5. Создание соединения с статическим адресом

Для статического подключения настроек больше, вам надо передать команде add ip адрес, который будет использоваться в качестве основного в параметре ip4, а также шлюз с помощью параметра gw4:

nmcli connection add con-name «static» ifname enp2s0 autoconnect no type ethernet ip4 192.168.0.210 gw4 192.168.0.1

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

Продолжим настройку нашего статического соединения. Обычно оно уже может работать, но вы можете захотеть добавить DNS сервер. Для этого используется команда modify:

nmcli conn modify «static» ipv4.dns 8.8.8.8

И ещё один DNS сервер с помощью оператора +:

nmcli conn modify «static» +ipv4.dns 8.8.4.4

Для добавления дополнительной информации в поле используйте символ +. Например, вот так можно добавить еще один ip адрес:

nmcli conn modify «static» +ipv4.addresses 192.168.0.240/24

Обратите внимание, что IP адрес должен быть из той же подсети, что и ваш шлюз иначе может ничего не работать. Теперь можете активировать подключение:

nmcli connection up static

7. Настройка Wifi

В графическом интерфейсе это делается одной галочкой, здесь одной командой. Смотрим состояние wifi:

Такой командой можно посмотреть список доступных сетей wifi:

Команда для подключения к новой сети wifi выглядит не намного сложнее. Например, давайте подключимся к сети TP-Link с паролем 12345678:

nmcli device wifi connect «TP-Link» password 12345678 name «TP-Link Wifi»

Если всё прошло хорошо, то вы получите уже привычное сообщение про создание подключения с именем TP-Link Wifi и это имя в дальнейшем можно использовать для редактирования этого подключения и управления им, как описано выше.

Выводы

Как видите, все очень просто и быстро. Настройка network manager в консоли выполняется в пару команд, достаточно только их запомнить или где-нибудь написать, чтобы вы могли выполнить управление сетью nmcli когда это понадобится.

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Источник

Оцените статью
Adblock
detector