Настройка программной точки доступа
Настройка программной точки доступа
Вступление
Имейте ввиду, не каждый WiFi адаптер поддерживает режим SoftAP (программная точка доступа). Процесс настройки показан на основе официального дистрибутива ALT Linux KDesktop 6.0.2 и ноутбука Acer Aspire 7540G-304G32Mi. При настройке использовался софт: Krusader (режим root, для поиска и правки конфигов в графическом режиме), Kwrite (в качестве редактора) и Konsole (в качестве эмулятора терминала).
Внимание! В дистрибутивах ALT Linux версии 7.x возможно способ будет работать только если вы измените названия интерфейсов в указанных ниже командах и скриптах, т.к. у 6 и 7 версий они отличаются. На дистрибутивах 7 серии данный способ настройки на работоспособность не проверялся.
Создание точки доступа
Устанавливаем dnsmasq и hostapd из репозитория. После установки запускаем Krusader (режим root) и правим конфиг: /etc/hostapd/hostapd.conf Удаляем из него всё и пишем следующее:
interface=wlan0 driver=nl80211 ssid=Linux Soft-AP ---------------- заменить на своё название сети country_code=RU hw_mode=g channel=1 ieee80211n=0 macaddr_acl=0 wpa=3 wpa_key_mgmt=WPA-PSK wpa_passphrase=12345678910 -------- заменить на свой пароль wpa_pairwise=TKIP
Сохраняем изменения.
Правим конфиг, удаляем всё из /etc/dnsmasq.conf и пишем туда следующее:
domain-needed bogus-priv dhcp-range=192.168.0.50,192.168.0.150,255.255.255.0,12h interface=wlan0 listen-address=192.168.0.1
Сохраняем изменения.
В конфиг /etc/sysctl.conf просто добавить строку.
net.ipv4.ip_forward = 1
Сохраняем изменения.
Открываем терминал и переходим в режим root
$ su - Password: --- ваш пароль
Даём следующие команды (все от root)
/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE /sbin/iptables -A FORWARD -i eth0 -o wlan0 -m state \ --state RELATED,ESTABLISHED -j ACCEPT /sbin/iptables -A FORWARD -i eth0 -o wlan0 -j ACCEPT service iptables save
Далее набираем (все от root)
ifconfig wlan0 down ifconfig wlan0 192.168.0.1 netmask 255.255.255.0 up ifconfig wlan0 up
Закрываем терминал.
Идем в Центр управления системой - Системные службы - ищем в списке dnsmasq если запущена выбрать из списка "Остановить" и нажать "Применить", галку с автозапуска тоже снять (если стоит) и нажать "Применить".
Там же ищем следующую службу hostapd - если запущена выбрать из списка "Остановить" и нажать "Применить", галку с автозапуска тоже снять (если стоит) и нажать "Применить".
Выходим на главную страницу Центра управления системой и переходим в пункт - Брандмауэр - внешние сети
- 1. Слева снять галки с интерфейсов mon.wlan0 и wlan0
- 2. Справа поставить галки на DHCP и DNS
- 3. Нажать "Применить"
Закрываем Центр управления системой.
Пишем в Kwrite скрипт следующего содержания
#!/bin/sh service dnsmasq stop service hostapd stop ifconfig wlan0 down ifconfig wlan0 192.168.0.1 netmask 255.255.255.0 up ifconfig wlan0 up service dnsmasq start service hostapd start exit
Сохраняем с именем например WiFi
Помещаем его в /etc/pm/power.d (будет запускаться при загрузке) и /etc/pm/sleep.d (будет запускаться при выходе из спящего и ждущего режимов) не забудьте скрипту дать права на выполнение (правый клик мышкой на файле - "Свойства" - вкладка "Права" поставить галку на "Является выполняемым").
Всё перезагружаем компьютер, если всё правильно сделали, то после загрузки должна быть видна ваша точка доступа.
Важно! Если подключение происходит, но не пускает на некоторые страницы в сети, то откройте терминал и дате команду от root
/sbin/iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu service iptables save
Это правило после перезагрузки может не сохраниться, если у вас так же, то напишите скрипт следующего содержания
#!/bin/sh /sbin/iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu exit
Сохраняем с именем например pravilo и помещаем его в /etc/pm/power.d (будет запускаться при загрузке) и /etc/pm/sleep.d (будет запускаться при выходе из спящего и ждущего режимов) не забудьте скрипту дать права на выполнение (правый клик мышкой на файле - "Свойства" - вкладка "Права" поставить галку на "Является выполняемым").
Создаём в меню пункты для управления точкой доступа
Для начала создаём например в /opt/ папку soft-ap и помещаем туда скрипты следующего содержания
- start
#!/bin/bash ifconfig wlan0 down ifconfig wlan0 192.168.0.1 netmask 255.255.255.0 up ifconfig wlan0 up service dnsmasq start service hostapd start exit
- restart
#!/bin/bash service dnsmasq stop service hostapd stop ifconfig wlan0 down ifconfig wlan0 192.168.0.1 netmask 255.255.255.0 up ifconfig wlan0 up service dnsmasq start service hostapd start exit
- stop
#!/bin/bash service dnsmasq stop service hostapd stop ifconfig wlan0 down ifconfig wlan0 up exit
Не забудьте скриптам дать права на выполнение (правый клик мышкой на файле - "Свойства" - вкладка "Права" поставить галку на "Является выполняемым").
С помощью kmenuedit создаём пункты в Kmenu Сеть - Точка доступа
- Старт - команда /opt/soft-ap/start
- Перезапуск - команда /opt/soft-ap/restart
- Стоп - команда /opt/soft-ap/stop
Значки можно выбрать любые
--CyberDaemon 19:52, 5 марта 2014 (MSK)
Смотри ещё: