Линукс вай фай точка доступа

Настройка 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.

Читайте также:  Установка brother на линукс

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

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

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

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

Чтобы создать точку доступа на интерфейсе 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

Читайте также:  Kali linux kali bugs

Далее в параметре 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:

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

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

# systemctl start dnsmasq.service
# systemctl start hosapd

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

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

Источник

🐧 Как создать точку доступа Wi-Fi в Ubuntu / Debian / Fedora / CentOS / Arch

В этом руководстве я расскажу о простых шагах по созданию точки доступа Wi-Fi на компьютере с Ubuntu / Debian / Fedora / CentOS / Arch Linux с помощью инструмента управления сетью командной строки nmcli.

Я предпочитаю этот метод, так как существует много сред рабочего стола, как и многие дистрибутивы Linux.

Утилита командной строки nmcli (интерфейс командной строки NetworkManager) используется для управления NetworkManager и создания отчетов о состоянии сети.

Вы можете использовать nmcli для создания, отображения, редактирования, удаления, активации и деактивации сетевых подключений, а также для контроля и отображения состояния сетевых устройств.

Создайте точку доступа Wi-Fi в Ubuntu / Debian / Fedora / CentOS / Arch

Давайте теперь посмотрим, как создать точку доступа Wi-Fi на компьютере с Linux за 1 минуту.

Читайте также:  Вай фай адаптер драйвер линукс

Шаг 1: Определите сетевое устройство WiFi

Получите имя сетевого интерфейса Wi-Fi.

$ ip link show 1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: enp0s31f6: mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether e8:6a:64:86:44:cc brd ff:ff:ff:ff:ff:ff 3: wlp6s0: mtu 1500 qdisc noqueue state UP mode DORMANT group default qlen 1000 link/ether 20:79:18:5e:4b:60 brd ff:ff:ff:ff:ff:ff 4: virbr0: mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default qlen 1000 link/ether 52:54:00:8e:f6:e5 brd ff:ff:ff:ff:ff:ff 5: virbr0-nic: mtu 1500 qdisc fq_codel master virbr0 state DOWN mode DEFAULT group default qlen 1000 link/ether 52:54:00:8e:f6:e5 brd ff:ff:ff:ff:ff:ff 6: br1: mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default qlen 1000 link/ether 52:54:00:bd:90:53 brd ff:ff:ff:ff:ff:ff 7: br1-nic: mtu 1500 qdisc fq_codel master br1 state DOWN mode DEFAULT group default qlen 1000 link/ether 52:54:00:bd:90:53 brd ff:ff:ff:ff:ff:ff

Мой интерфейс называется wlp6s0, это, безусловно, будет отличаться от машины к машине. Если это работает, следующая команда должна пердоставить вам вывод.

Шаг 2. Создайте новую точку доступа

Создайте сетевой профиль для вашего Hotspot.

$ IFNAME="wlp6s0" $ CON_NAME="myhotspot" $ nmcli con add type wifi ifname $IFNAME con-name $CON_NAME autoconnect yes ssid $CON_NAME

Шаг 3: Установите метод подключения

Установите метод подключения как общий.

nmcli con modify $CON_NAME 802-11-wireless.mode ap 802-11-wireless.band bg ipv4.method shared

Шаг 4: Установите пароль Hotspot

Мы не хотим, чтобы наша точка доступа была открыта для всех, поэтому давайте установим для нее кодовую фразу.

nmcli con modify $CON_NAME wifi-sec.key-mgmt wpa-psk nmcli con modify $CON_NAME wifi-sec.psk "MyStrongHotspotPass"

Поднимите соединение, когда закончите.

$ nmcli con up $CON_NAME Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/7)

Проверьте подробную информацию о подключении.

$ nmcli connection show $CON_NAME

Шаг 5: Подтвердите информацию об IP.

Проверьте интерфейс и информацию о IP.

$ nmcli connection show NAME UUID TYPE DEVICE Hostspot ad31dc08-9175-4fe2-85e3-9f33324e1447 wifi wlp6s0 $ ip ad show wlp6s0 3: wlp6s0: mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether 20:79:18:5e:4b:60 brd ff:ff:ff:ff:ff:ff inet 10.42.0.1/24 brd 10.42.0.255 scope global noprefixroute wlp6s0 valid_lft forever preferred_lft forever inet6 fe80::a119:b393:761c:d740/64 scope link noprefixroute valid_lft forever preferred_lft forever

Источник

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