Автор Тема: Настройка программной точки доступа с нуля.  (Прочитано 6744 раз)

Оффлайн CyberDaemon

  • Завсегдатай
  • *
  • Сообщений: 74
  • ALT Linux KDesktop 6
Здравствуйте уважаемые форумчане.
Пока болею, появилось свободное время, решил заняться общественно полезным делом и поделиться настройкой программной точки доступа. Имейте ввиду, не каждый WiFi адаптер поддерживает режим SoftAP (программная точка доступа). Процесс настройки показан на основе официального дистрибутива ALT Linux KDesktop 6.0.2 и ноутбука Acer Aspire 7540G-304G32Mi.
При настройке использовался софт: Krusader (режим root, для поиска и правки конфигов в графическом режиме), Kwrite и Konsole.

Внимание!
В дистрибутивах ALT Linux версии 7.x способ будет работать только если вы измените названия интерфейсов в указанных ниже командах и скриптах, т.к. у 6 и 7 версий они отличаются.


Устанавливаем dnsmasq и hostapd из репозитория.
После установки правим конфиги:
/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). Уменя iptables в /sbin/
/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

Набираем дальше
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. Нажать "Применить"
Закрываем Центр управления системой.

Пишем скрипт следующего содержания
wifi
#!/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
Помещаем его в /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
У меня почему то это правило после перезагрузки не сохранялось, если у вас так же, то напишите скрипт следующего содержания
pravilo
#!/bin/sh
/sbin/iptables -t mangle -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
exit
Помещаем его в /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
Значки можно выбрать любые

Всё.  ;)

Способ настройки  не претендует на единственно верный, я настраивал именно так, интернет раздаётся с ноутбука подключенного кабелем по 3-х комнатной квартире дома серии П-44Т, инет есть во всех точках квартиры (полное покрытие включая ванну и туалет  :D).
« Последнее редактирование: 24.09.2013 17:03:24 от CyberDaemon »
Переход на Линукс, совсем не означает смену друзей.

Онлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 239
  • Учиться .... Телепатами не рождаются, ими ....
    • Email

Оффлайн CyberDaemon

  • Завсегдатай
  • *
  • Сообщений: 74
  • ALT Linux KDesktop 6
Чем это отличается от :
http://www.altlinux.org/Hostapd
http://www.altlinux.org/Точка_доступа_для_Андроида
Это отличается от тем, что когда я настраивал (~ года 1,5 назад) "Это", "От" еще не существовало. Существовал способ с madwifi, который у меня не завелся. Информация собиралась в сети, потом методом проб все это допиливалось, когда допилил небыло времени выложить. Сейчас время появилось, выложил.
Когда есть множество способов решить задачу, разве плохо? Каждый выберет какой ему ближе.
« Последнее редактирование: 24.09.2013 19:47:51 от sb »
Переход на Линукс, совсем не означает смену друзей.

Оффлайн sb

  • Модератор глобальный
  • *****
  • Сообщений: 8 991
Уверен, что кому-нибудь да пригодится.
PS Спасибо за труд :)

Онлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 239
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Сейчас время появилось, выложил.
Лучше такое на Wiki выкладывать, а не сюда.

Оффлайн CyberDaemon

  • Завсегдатай
  • *
  • Сообщений: 74
  • ALT Linux KDesktop 6
Лучше такое на Wiki выкладывать, а не сюда.
Так если бы знал  :D
Обычно если темы с настройками "приклеивают" на форумах, я wiki не пользовался никогда, но если надо могу попробовать туда запостить  :)
Переход на Линукс, совсем не означает смену друзей.

Оффлайн olegserov

  • Начинающий
  • *
  • Сообщений: 4
    • Email
Большое спасибо. Пригодилось. Все именно так делал и заработало.

Оффлайн sasa

  • Завсегдатай
  • *
  • Сообщений: 1 152
http://www.altlinux.org/Точка_доступа_для_Андроида
Вроде просто, но первая половина рассуждений там непонятна. (так как соответствующих пунктов в указанных конфигурялках нет - дальше я поплыл... Конкретно, не соотносится с реальностью третий пункт: "Для настройки NAT заходим в Центр Управления Системы -> Внещние интерфейсы, указываем внешний интефейс и указываем, что компьютер выступает в роли шлюза", нету там пункта "внешние интерфейсы").
Если можно, уточните, пожалуйста.
« Последнее редактирование: 07.06.2015 01:29:29 от sasa »
Компьютер - это лопата, к нему мозги нужны (с)

Онлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 239
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
1. Вообще-то и без него всё работает, если используется NetworkManager. Это скорее актуально для http://www.altlinux.org/Hostapd
2. Скорей всего не установлен соответствующий модуль Центра управления. С ходу я не могу сказать, какой модуль alterator`a за это отвечает.

Онлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 239
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
Всё нашёл - установите alterator-net-iptables

Оффлайн sasa

  • Завсегдатай
  • *
  • Сообщений: 1 152
Спасибо! По информации на вики создал на нетбуке точку доступа... Интернет раздает.
А не подскажете, как можно расшарить файлы с нетбука, для просмотра на андроидофоне?

И еще вопрос: если я буду раздавать интернет без пароля - чем это грозит моей системе? И как можно защититься от этих угроз (кроме аутентификации).
Спасибо!
P.s. прошу прощения у автора темы за офтоп!
Насколько я понимаю, его способ работает на бОльшем количестве чипов, за счет смены драйвера? Но способ от ruslandh для меня существенно проще :)
« Последнее редактирование: 15.06.2015 00:47:17 от sasa »
Компьютер - это лопата, к нему мозги нужны (с)

Онлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 239
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
А не подскажете, как можно расшарить файлы с нетбука, для просмотра на андроидофоне?
Так установите любой FM, который умеет работать с Ftp или Samba.

https://play.google.com/store/search?q=Samba&c=apps

Например: Ghost Commander  c плагинами для соответствующей службы.

Онлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 239
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
И еще вопрос: если я буду раздавать интернет без пароля - чем это грозит моей системе?
Это уже "большой оффтоп"  - если очень надо - заведите отдельную тему.

Оффлайн sasa

  • Завсегдатай
  • *
  • Сообщений: 1 152

Так установите любой FM, который умеет работать с Ftp или Samba.

https://play.google.com/store/search?q=Samba&c=apps

Например: Ghost Commander  c плагинами для соответствующей службы.
на клиентском устройстве вроде понятно, а что на компе нужно сделать? какой-то ftp-сервер запустить?
наверное глупый вопрос...
жаль, что об этом не упомянуто вкратце на вики в теме про точку доступа. Это пользовалось бы большой популярностью у нубов вроде меня. :)
« Последнее редактирование: 15.06.2015 07:15:53 от sasa »
Компьютер - это лопата, к нему мозги нужны (с)

Онлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 239
  • Учиться .... Телепатами не рождаются, ими ....
    • Email
ну, да ftp поднять, или самбу настроить.