Новости программы Easyhotspot, июнь…ноябрь 2018

Новости — июнь…ноябрь 2018

С момента прошлой публикации в программе произошли следующие изменения:

  • Изменения в веб-интерфейсе Easyhotspot («черной админке»);
  • Обновления и исправления модулей
  • Обновления и изменения скрипта-инсталятора
  • Изменения в документации

Изменения в веб-интерфейсе Easyhotspot («черной админке»)

  • Версия фреймворка Codeigniter (на котором написана «черная админка») обновлена до 3.1.9. Что при этом изменилось в самом Codeigniter можно прочесть в «Change Log» на их сайте. В свою очередь, для Easyhotspot это — банальное поддержание актуальности базового фреймворка;
  • Немного изменены настройки редактора TinyMCE: добавлена кнопка прямого редактирования html-кода и добавлен вызов текстовых сообщений на украинском языке, когда он украинский язык выбран в «черной админке»;
  • Исправлена ошибка нового кабинета: в меню вызова страниц платежных систем кнопка для п/с Mixplat открывала ошибочную ссылку (несуществующую страницу);
  • Изменен формат экспорта данных из программы — добавлена библиотека PHPExcel, и все отчеты, которые ранее выводилось в виде CSV-файлов, теперь выводятся в формате MS Office Excel (2007);
  • Параллельно ряд отчетов был сделан «более красивыми». Например, экспорт данных из архива теперь выводится на трех листах одного xlsx-файла. На первом листе выводятся сведения об аккаунтах, на втором — о платежах, и на третьем — о сеансах доступа в интернет;
  • При экспорте в xlsx-файл из архива данных об аккаунте возникала ошибка создания «многостраничного» файла электронной таблицы, ЕСЛИ В БАЗЕ НЕ БЫЛО СВЕДЕНИЙ О «ПОКУПКЕ». Ошибка исправлена;
  • Обновлен отчет о ваучерах при экспорте в xls-файл. Если ранее в нем выводились только логин и пароль, то теперь список параметров расширен, и в него входят такие сведения: Номер, Логин, Пароль, Имя Тарифного пакета, Дата и время создания ваучера, MAC-адрес клиента, Данные из графы «Паспорт», Дата и время активации ваучера, Дата и время окончания срока годности ваучера, Суммарное время доступа в интернет по ваучеру, Суммарный объем трафика, потребленный ваучером, ID хотспота (NASID);
  • Попутно была обнаружена и устранена ошибка, которая ранее во время экспорта (еще в CSV) результатов работы платежных модулей могла приводить к удалению из базы этих данных (уже после их экспорта), даже если администратор не ставил «птичку» о желании такого удаления;
  • Была обнаружена и исправлена ошибка редактирования «клиента с оплатой по счету» (postpaid). Для того, чтобы она проявилась, нужно было, чтобы сначала (когда-то ранее) в программе приключился глюк. Суть ошибки заключалась в следующем: Freeradius при проверке авторизации клиентов в том числе использует данные из таблицы radcheck. Одной из таких записей, размещенных в таблице radcheck, является пароль клиента. При редактировании учетной записи клиента с оплатой по счету код биллинга обновлял запись с паролем в таблице radcheck. Но в момент обновления сам факт наличия в базе radcheck такой записи (с паролем) биллинг не проверял. В нормальной ситуации все происходило успешно, и отредактированный клиент потом успешно авторизовался по новому паролю. Но отношение самого сервера MySQL к обработке запроса на обновление записи звучит так: «да, запрос на обновление был получен и выполнен. но, если самой обновляемой записи при этом не было, мы это ошибкой не считаем» 🙂 … В итоге ошибка проявлялась лишь В ТОМ СЛУЧАЕ, если по каким-то «неизвестным причинам» из таблицы radcheck (когда-то ранее) уже пропала запись о пароле клиента. И вот тогда — обновляй, не обновляй аккаунт клиента в биллинге, а пароля у него в таблице radcheck так и не появлялось! И в итоге такой клиент авторизоваться больше уже не мог и постоянно получал отказ. Ошибка исправлена! И, повторюсь, в нормальной ситуации эта ошибка вообще не проявлялась…
  • При редактировании (ОБНОВЛЕНИИ) настроек фирмы-агрегатора для функции отправки служебных СМС у клиента происходила ошибка — новые данные не записывались в базу программы (у себя эту ошибку так и не смог воспроизвести). Был изменен код функции (сам алгоритм записи настроек в базу), ошибка «ушла»;
  • В код биллинга была добавлена функция переключения ваучеру тарифа с «первого» на «второй» по истечении лимита, отведенного «первым» тарифным пакетом. Что дает этот «финт»? Такой себе «двухскоростной» режим обслуживания! Вы должны будете создать два тарифа: первый — «быстрый и недолгий», и второй — с длительным доступом, но с низкой скоростью. Затем создаете ваучер первого тарифа и даете его клиенту. Клиент по такому ваучеру сначала пользуется быстрым интернетом в течение какого-то времени, и по истечении номинала первого тарифа его отключит от интернета. Описываемая тут функция найдет ваучер «первого» тарифа с израсходованным номиналом, и сменит ему тариф на «второй». Клиент подключится к интернету снова, но уже на низкой скорости. И в таком медленном режиме он сможет пользоваться интернетом до тех пор, пока не израсходует «номинал» второго (более длинного) тарифа;
  • В биллинг добавлена функция, которая выгружает на указанный в (её) настройках SFTP-сервер xlsx-файл со сведениями обо всех сеансах доступа в интернет за предыдущий день, включая и сведения из графы «паспорт» для соответствующего аккаунта (в эту графу автоматизированные модули Easyhotspot-а вносят номер мобильного телефона клиента);
  • В список агрегаторов функции отправки служебных СМС добавлена фирма АЛЬФАSMS (Украина);
  • Немного изменен макет страницы авторизации, в тех случаях, когда она выводит «промежуточные сообщения» (такие как «Подключаемся…» и т.п.). Текст сообщений теперь отцентрирован по вертикали внутри div-а, выводящего эти сообщения;
  • Небольшие обновления во внешнем виде «чёрной админки» Easyhotspot (правка CSS-файлов: внесение изменений, небольшая оптимизация);
  • Исправлена функция показа рекламы после авторизации (а точнее — приведена к тому же принципу, что и выписка гостевых ваучеров — имя «гостевого тарифа» для проверки берется не из файла настроек (conf.txt), а из базы биллинга (выбирается т.н. «гостевой тариф», привязанный к данному NASID);
  • Изменены настройки размещения лог-файлов, генерируемых веб-приложением Easyhotspot. Теперь они располагаются в папке /var/www/easyhotspot/application/logs;
  • В процедуру ротации лог-файлов добавлен файл настроек, обязывающий раз в неделю проводить ротацию логов веб-приложения Easyhotspot (всех логов, найденных в папке /var/www/easyhotspot/application/logs);

Обновления и исправления модулей

  • Переписан модуль СМС-авторизации! Теперь он предлагает два способа авторизации клиентов — либо по паролю, присылаемому в СМС, либо по звонку на номер, указанному хотспотом. Кроме того, функции модуля были разделены между самим биллингом и страницей авторизации. Отдельное веб-приложение теперь не используется, а номер своего телефона клиент теперь вводит непосредственно в меню авторизации хотспота. Подробнее можно прочесть на странице с описанием модуля или в инструкции к нему;
  • В модуль Робокассы внесено изменение — убрана отправка символа валюты (RUB) при проведении платежей в рублях. В соответствии с текущей версией документации п/с Робокасса, платежи итак осуществляются в рублях и отправка информации о валюте — излишняя;
  • Исправлена ошибка в платежном модуле Onpay: при формировании ваучера модуль вписывал пароль с устаревшим аттрибутом User-Password. В современных версиях FreeRDIUS данный аттрибут вызывает ошибку, и клиент не может авторизоваться. Исправлено на рекомендованное Cleartext-Password. Клиенты успешно авторизуются по купленным ваучерам.
  • Пришло уведомление от платежной системы Liqpay о том, что с 01.07.2018 они окончательно отключают автоматическую переадресацию запросов с домена LiqPay.com на LiqPay.ua. Изменение адреса страницы платежной системы было внесено в код модуля;
  • Обновлен (а точнее — переписан заново) модуль обслуживания по СМС, отправляемым на т.н. «короткие номера». Теперь модуль написан на php (был — на perl). Страница Тарифов модуля теперь адаптируется под экраны мобильных устройств. Владельцы мобильных устройств могут, нажав кнопку, автоматически переходить в приложение отправки для СМС, куда уже будут вписаны и требуемый «короткий номер», и текст сообщения! Все подробности можно прочесть на обновленной странице с описанием модуля СМС («короткие номера»), либо в инструкции к нему;

Обновления и изменения скрипта-инсталятора

  • В системе полностью убрано использование perl-модуля Net::Ping::External. Это обусловлено тем, что в новых версиях дистрибутивов данная библиотека будет недоступна. Как показал поиск, причина изъятия указанной библиотеки заключается в том, что у нее были обнаружены уязвимости безопасности, которые разработчик не устраняет (и уже давно, благодаря чему складывается впечатление, что он просто забросил свою программу). Ранее в биллинге Easyhotspot библиотека Net::Ping::External использовалась дважды: во первых, в скрипте страницы авторизации с помощью ping МОГЛА выполняться проверка доступности интернета (по умолчанию была выключена). С другой стороны, скрипт контроля роутеров, обслуживаемых сервером Easyhotspot, выполнял ping роутеров, от которых были получены запросы. Первое «применение» — как мне кажется, фактически не использовал никто. И даже больше — реально это было лишено смысла, т.к., если у хотспота отсутствует доступ к интернету, то переадресация неавторизованнных клиентов на страницу авторизации не работает. В итоге, было принято решение полностью убрать из кода страницы авторизации как использование самой библиотеки Net::Ping::External, так и проверки доступности интернета с помощью ping. Для второй задачи было найдено альтернативное решение. Скрипт контроля роутеров был вписан в сам Easyhotspot (в «черную админку»), функция ping также легла на нее же (с использованием уже языка php), а вместо старого perl-скрипта была написана «заглушка», которая просто переадресовывает запросы на новый адрес проверки;
  • Выход дистрибутива Ubuntu 18.04 LTS послужил поводом для радикального обновления скрипта-инсталятора! С учетом того, что дистрибутив Ubuntu 18.04 LTS выпускается только в 64-битной версии, программу Chillispot устанавливать на него стало бесполезным (Chillispot не работает на 64-битных ОС!). И в итоге получалось так, что Easyhotspot, установленный на Ubuntu 18.04 LTS, мог бы работать только в «варианте 3» (удаленный сервер-RADIUS для управления «внешними» роутерами). Инсталятор был изменен так, что теперь на сервер Easyhotspot, если он используется в качестве шлюза локальной сети хотспота («варианты 1 и 2»), устанавливается не устаревший Chillispot, а его обновленный «форк» — Coova-Chilli! При этом приложение Coova-Chilli компилируется из «исходников» непосредственно на самом сервере, что позволяет устанавливать его как на 32-битных ОС, так и на 64-битных! Благодаря внесенным изменениям (с одной стороны) Easyhotspot на дистрибутив Ubuntu 18.04 LTS теперь можно также устанавливать в любом из вариантов! А с другой стороны — сервер Easyhotspot в «вариантах 1 и 2» теперь может быть установлен на 64-битную версию и иных дистрибутивов;
  • В скрипт-инсталятор добавлена новая функция. В «черной админке» для отображения лога авторизации используются разные команды для разных версий сервера FreeRADIUS, установленного в биллинге. Теперь скрипт-инсталятор прописывает цифру, соответствующую версии FreeRADIUS-а, в файл конфига веб-интерфейса Easyhotspot, и благодаря этому биллинг сам выбирает корректную команду для отображения лога авторизации (раньше команду нужно было выбирать вручную — править вручную файл конфига);

Изменения в документации

Обновлена инструкция «Mikrotik и Easyhotspot». В инструкцию добавлена информация о настройке NASID. Расширена информация по поводу HTTPS-авторизации, добавлены разъяснения.  На основании информации, изложенной в интернете, был написан дополнительный скрипт, который в комплексе с рядом дополнительных мер позволяет заставить продукцию Apple открывать страницу авторизации хотспота не в CNA, а в Safari (т.е., в полноценном браузере).

Обновлена инструкция «Индивидуализация вашего хотспота». В инструкцию добавлены такие разделы:

  • Автоматический показ меню авторизации сразу же
  • Запрет меню авторизации «прятаться»
  • Изменение сложности логина и пароля, генерируемых программой

Просмотреть все эти изменения в действии можно на сайте демо-версии модифицированной программы Easyhotspot (логин/пароль Кассира: vcool/vcool123, логин/пароль Администратора: admin/admin123)

На всякий случай, напоминаю, что все эти изменения относятся именно к модифицированной версии программы Easyhotspot, которую можно приобрести на странице онлайн-продажи.

Список предыдущих анонсов новостей программы Easyhotspot доступен тут.

Новости программы Easyhotspot — февраль 2018

С момента прошлой публикации в программе произошли следующие изменения:

  • Изменения в веб-интерфейсе Easyhotspot («черной админке»);
  • Обновления и исправления у страницы авторизации
  • Новые модули
  • Обновления иных модулей
  • Обновления и изменения скрипта-инсталятора
  • Написан новый кабинет пользователя
  • Изменения в документации

Читать далее «Новости программы Easyhotspot — февраль 2018»

Новости модифицированной версии Easyhotspot, ноябрь 2012

Модифицированная версия программы Easyhotspot является билинговой программой для управления хотспотом или сетью хотспотов. Благодаря дополнительным модулям: приема платежей по СМС и приема платежей с банковских пластиковых карт, программа предоставляет возможность полностью автоматического обслуживания клиентов хотспота.

Подробнее прочесть о модифицированной версии программы Easyhotspot можно вот в этой заметке: «Простой биллинг с веб интерфейсом — Easyhotspot«.

С момента прошлого анонса обновлений были выполнены следующие действия:

В программу были добавлены новые замечательные возможности. «Красной строкой» о них:

  • Клиентам с оплатой по счету теперь можно выставить дату окончания обслуживания!
  • Появилась возможность привязки клиентов и Тарифных пактов к конкретному хотспоту! 
  • Отныне в Easyhotspot есть возможность редактирования Тарифных пакетов!

 

А теперь немного подробнее обо всех этих новинках.

Дата окончания обслуживания

В меню управления клиентами с оплатой по счету добавлена новая возможность. В списке возможных действий с аккаунтом клиента появилась новая кнопка. При ее нажатии открывается дополнительно всплывающее меню. Это меню позволяет вам установить дату, когда обслуживание выбранного клиента будет прекращено. Вид меню (плюс дополнительно открывающегося календаря для ввода произвольной даты) показан на рисунке ниже:

kassir_expiration_2

Меню отображает текущее установленное значение параметра, дает возможность сбросить установленную дату, а также позволяет выполнить установку даты окончания обслуживания клиента тремя способами:

  • Кнопка «Этот месяц» автоматически выставляет датой окончания обслуживания 1-е число следующего месяца.  Например, действие происходит 2 сенября 2012 года. При нажатии Кнопки «Этот месяц» в систему будет вписана дата 1 октября 2012 года, и как следствие, клиент сможет проработать весь «этот» месяц (сентябрь). А 1-го октября 2012 года в 00 часов 00 минут обслуживание клиента будет прекращено, и он не сможет войти в интернет.
  • Кнопка «След. месяц» автоматически выставляет датой окончания обслуживания 1-е число месяца через один от текущего.  Например, действие происходит 30 сенября 2012 года. При нажатии Кнопки «След. месяц» в систему будет вписана дата 1 ноября 2012 года, и как следствие, клиент сможет проработать весь «следующий» месяц (октябрь). А 1-го ноября 2012 года в 00 часов 00 минут обслуживание клиента будет прекращено, и он не сможет войти в интернет.
  • Кнопка «Выбрать дату» вызывает дополнительное меню — календарь. В этом меню вы можете выбрать произвольную дату, когда обслуживание клиента будет прекращено. После того, как вы выберете дату, и она появится в поле справа от надписи «Произв. дата», вам нужно нажать кнопку «Установить». Только  после этого выбранное значение даты будет вписано в базу программы. ВАЖНО: учтите что устанавливаемая вами дата — это дата, когда в 00 часов 00 минут обслуживание клиента прекратится. То есть, если вы устанавливаете 12 сентября 2012 года, то клиент сможет войти в интернет по 11 сентября 2012 года включительно, а вот 12 сентября, начиная с 00 часов 00 минут, — уже не сможет!

Клиент при авторизации, если истек срок его обслуживания, получает вот такое сообщение:
login_page_expiration

«Привязка» к хотспоту:

Теперь программа позволяет «привязать» клиента к конкретному хотспоту.

Для Клиентов с оплатой по счету эта процедура осуществляется с помощью специального меню. Меню выглядит следующим образом:

kassir_nasid_menu

Вызывается меню щелчком по иконке «глобуса» в списке клиентов. Чтобы указать идентификатор хотспота, к которому будет «привязан» клиент, нужно ввести его ID в поле для ввода и нажать кнопку «Установить». Если же, вы хотите, чтобы клиент, ранее «привязанный» к хотспоту, смог снова обслуживаться любым хотспотом, то в таком случае, в меню нужно нажать кнопку «Удалить».

Для «ваучерных» клиентов персональной привязки к хотспоту НЕТ! К хотспоту может быть «привязан» только Тарифный пакет! В итоге все ваучеры, созданные на основании такого Тарифного пакета, будут «привязаны» к конкретному хотспоту. Идентификатор хотспота указывается непосредственно во время создания Администратором нового Тарифного пакета:

admin_new_tarif_nasid_field

При этом, если «ID-хотспота» не указан (поле оставлено пустым), ваучеры, созданные на основе такого Тарифного пакета, будут обслуживаться ЛЮБЫМИ хотспотами. Если же идентификатор указать, то ваучеры будут проходить авторизацию только на тех хотспотах, у которых установлен точно такой же ID.

Редактирование Тарифных пакетов:

Наконец-то в программе появилась возможность редактирования уже существующих Тарифных пакетов! В списке Тарифных пакетов добавлена кнопочка, при щелчке по которой появляется вот такое меню:

admin_edit_tarif_menu

Думаю, дополнительные разъяснения по самой процедуре редактирования излишни. Чтобы измененные параметры были сохранены в базе,  по окончании редактирования достаточно щелкнуть кнопку «Установить».

Изменения внешнего вида меню (стиля CSS + добавление новых столбцов)

Всвязи с добавлением новых параметров в списках, отображающих Клиентов с оплатой по счету (у Кассира) и Тарифные пакеты (у Администратора), были добавлены новые колонки. Это повлекло за собой дополнительное расширение самих таблиц, в результате они  начали «вылазить за границы». По этому, в таблице стилей (CSS) был изменен параметр, определяющий ширину самого меню. Теперь она равна 1100 пикселей. Как следствие, страница теперь вылазит за границы, если вы используете монитор с разрешением по горизонтали 1024 пикселя и ниже, но кто их такие теперь использует?.

Внешний вид измененного меню Тарифных пакетов:

admin_new_tarif_menu

Внешний вид меню Клиентов с оплатой по счету:

kassir_new_clients_menu

Просмотреть все эти изменения в действии можно на сайте демо-версии модифицированной программы Easyhotspot (логин/пароль Кассира: vcool/vcool123, логин/пароль Администратора: admin/admin123)

На всякий случай, напоминаю, что все эти изменения относятся именно к модифицированной версии программы Easyhotspot, которую можно приобрести на странице онлайн-продажи.


Продолжения:

Новости Easyhotspot — май 2013

Обновления Easyhotspot, июль 2012

Модифицированная версия программы Easyhotspot является билинговой программой для управления хотспотом или сетью хотспотов. Благодаря дополнительным модулям: приема платежей по СМС и приема платежей с банковских пластиковых карт, программа предоставляет возможность полностью автоматического обслуживания клиентов хотспота.

Подробнее прочесть о модифицированной версии программы Easyhotspot можно вот в этой заметке: «Простой биллинг с веб интерфейсом — Easyhotspot«.

С момента прошлого анонса обновлений были выполнены следующие действия:

Вебинтерфейс программы:

  • Веб-интерфейс программы теперь может отображаться на одном из двух языков — русском или английском (по вашему выбору). Смена языка интерфейса осуществляется изменением единственного параметра в файле настроек программы. Пример английского интерфейса можно посмотреть по ссылке.
  • В списке ваучеров в меню Кассира добавлена popup-подсказка, в которой выводится дата и время активации ваучера. Чтобы ее увидеть, нужно навести курсор мыши на логин выбранного ваучера. Такая же popup-подсказка добавлена и на страницу результатов поиска. Увы, но эта подсказка не отображается в браузере Opera (в остальных наиболее популярных — IE, Firefox, Chrome подсказка присутствует).
Рис. 1 - Английский интерфейс программы + popup-подсказка с датой и временем активации ваучера
Рис. 1 — Английский интерфейс программы + popup-подсказка с датой и временем активации ваучера

Страница авторизации:

  • Все настройки страницы авторизации перенесены в один файл — conf.txt. В файле в виде коментариев добавлено краткое описание каждого параметра. Пример файла доступен по ссылке.
  • Добавлена возможность отключения popup-окна, открывающегося после авторизации клиента (облегчает авторизацию всевозможных смартфонов и прочих гаджетов активно подавляющих popup-окна).
  • Добавлена функция проверки наличия интернета до авторизации клиента (ping выбранного сайта). Если  ping завершен неудачно, клиенту выводится не форма для ввода логина/пароля (и/или гостевого входа), а информация о том, что в данное время обслуживание не возможно.
  • Добавлен режим обслуживания — «Доступ в интернет после просмотра рекламы». При этом основное поле страницы может быть занято вашим собственным произвольным макетом, а кнопка входа в интернет появляется в виде небольшого html-блока, возникающего поверх страницы с рекламой по прошествии некоторой паузы. Длительность паузы также устанавливается вами в файле настроек.

Инсталятор:

  • Инсталятор теперь позволяет установить Easyhotspot не только на дистрибутив Ubuntu (будь-то 10.04 или 12.04), но и на дистрибутив Debian 6.0.x!
  • Небольшие модернизации в скрипте для установки на Ubuntu 12.04 LTS.
  • В инсталятор добавлен вопрос о том, какой язык установить для веб-интерфейса программы Easyhotspot — английский или русский.
  • В инсталятор добавлена проверка архитектуры использованного дистрибутива. Если установлен дистрибутив с 32-битной версией ОС, установка происходит без проблем. Если же установлена 64-битная версия ОС, и при этом выбран вариант установки такой, при котором контроллер доступа  Chillispot  должен будет работать непосредственно на сервере, установка прекращается. Пользователю выводится сообщение о невозможности установить систему на 64-битную версию ОС Linux. Это связано с тем, что контроллер доступа Chillispot  НЕ РАБОТАЕТ на 64-битных версиях ОС!

Документация:

 


Продолжения:

Новости модифицированной версии Easyhotspot, ноябрь 2012

Новости Easyhotspot — май 2013

Настройка PPPoE в Ubuntu, когда ADSL-модем настроен как bridge

Оставим в стороне вопросы типа «А не проще ли было настроить модем роутером и не мучиться?». Так было нужно. Цель — средствами консоли (ну не нравится мне network-manager!!!) настроить PPPoE соединение, автоматически стартующее при загрузке компьютера.

Настройка производилась по статье с сайта официальной документации Ubuntu. Стаья расположена по адресу:

https://help.ubuntu.com/community/ADSLPPPoE

Вводная — модем, как и сказано в заголовке статьи, настроен в режиме bridge, в него вписаны значения VPI и VCI, выданные провайдером. Модем подключен кабелем в сетевую плату eth0 компьютера, на котором установлен дистрибутив Ubuntu desktop 12.04.

Итак, запускаем терминал, и в нем вводим команду:

sudo pppoeconf

Вариантов дальнейшего развития может быть два. Первый — неудовлетворительный: пакет pppoeconf не установлен. В таком случае его можно например, поискать и скачать с сайта пакетов Ubuntu  и установить «руками». Также, пакет может присутствовать на том диске, с которого вы устанавливали Ubuntu. Добавьте его в число источников ПО и затем выполните установку.

Второй вариант — благоприятный, пакет pppoeconf  установлен. В таком случае запустится программа настройки PPPoE подключения. Самый первый скрин работы программы в данной заметке не приведен — в нем программа проводит сканирование сетевых адаптеров на предмет наличия модемов. ВАЖНО: на момент запуска программы модем должен быть (а) включен, (б) подключен к линии и (в) подключен к компьютеру! Иначе, программа сообщит, что модемов не найдено и завершит свою работу.

После того, как модем найден, программа выдаст предупредительное сообщение:

С учетом того, что мы все-таки пришли сюда, чтобы настроить новое (а может быть и перенастроить старое) подключение, СОГЛАШАЕМСЯ — щелкаем «ДА».

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

В моем случае (равно как и в 99% остальных), эти дополнительные опции будут вовсе не лишними. Желающие подробнее узнать о сути этих параметров могут (как и предлагается системой) почитать man (8) pppd, ну или ознакомиться с его переводом на русский язык в интернете. Соглашаемся, щелкаем «ДА» и перходим к следующему шагу.

Программа предложит вам ввести имя пользователя:

В этом поле вам нужно ввести тот логин (имя пользователя), который вам выдал провайдер. Будьте внимательны, не допускайте ошибок. Также, дополнительно обращаю внимание ваше внимание на регистр букв, «User» и «user» — это РАЗНЫЕ логины!

Следующий пункт — ввод пароля:

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

Следующий вопрос — об автоматическом добавлении адресов  DNS-серверов провайдера в список к «уже имеющимся в системе», после того, как устанавливается подключение:

СОГЛАШАЕМСЯ! Без этого мы рискуем получить неработающую систему. (Или вы наизусть помните все IP-адреса интересующих вас серверов? 🙂 )…

Следующее диалоговое окно программы предложит установить для ADSL-подключения  размер MTU равным 1452 байтам:

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

Отвечаем «ДА», но при этом пусть вам «на ум пойдет», что на самом деле этого БЕЗ ДОПОЛНИТЕЛЬНЫХ «телодвижений», увы происходить не будет! Об этом также сказано и в той статье с сайта Ubuntu, ссылку на которую я приводил выше. Переживать не стоит, ниже мы еще «поколдуем», чтобы впоследствии все было ОК.

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

Выбираем «ДА»,программа выполнит процедуру подключения. Данное меню также предлагает вам запомнить две команды: pon dsl-provider и poff. Первая из них позволит вам вручную в консоли подключаться к провайдеру. Вторая — отключаться.

Должен дополнительно заметить, что если ранее вы ошиблись при вводе логина и/или пароля, то подключение произойдет как и положено (все будет выглядеть отлично!), но при этом доступ в интернет будет отсутствовать. По крайней мере, у меня именно так и было (я не доглядел в пароле, что одна из букв была введена мной не в том регистре, и в итоге лишние полчаса был вынужден угадывать — «как так, подключение ОК, а интернета нету?!»)…

Последний скрин — сообщение об успешном подключении:

На этом работа программы pppoeconf завершена. С данного скрина вам стоит запомнить команду plog, выводящую лог последнего подключения (надеюсь, команда ifconfig вам итак уже была известна)…

Проверить, что мы успешно подключились, в консоли проще всего такой командой:

ping -c5 google.com

Она позволяет нам сразу увидеть, что все прекрасно — служба DNS определит IP-адрес  для указанного сервера, и начнет пинговать его. Если все Ok, то пинг достигнет цели, и ваш компьютер получит ответы в том же самом количестве.

Автозапуск при загрузке

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

Не «рассусоливая» понапрасну много текста, предлагаю просто выполнить следующее. Отредактируйте файл /etc/network/interfaces. Для этого введите команду:

sudo nano /etc/network/interfaces

И приведите файл к следующему содержанию:

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet ppp
pre-up iptables-restore < /etc/network/firewall.rules
pre-up /sbin/ip link set dev eth0 up
post-down /sbin/ip link set dev eth0 down

auto dsl-provider
iface dsl-provider inet ppp
pre-up /sbin/ifconfig eth0 up # line maintained by pppoeconf
provider dsl-provider

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

Обращаю внимание на строку выделенную цветом — это необязательная команда. Она дословно означает следующее: перед тем как запустить интерфейс eth0 программа iptables-restore должна загрузить правила файервола из файла /etc/network/firewall.rules. В вашем случае она может быть и излишней, поэтому можете ее и не вписывать в файл /etc/network/interfaces.

Чтобы выйти из редактора, нажмите Ctrl + X, и в ответ на запрос согласитесь с сохранением изменений.

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

Потом такой:

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

Ну и напоследок…

Chillispot и PPPoE

Собственно, все эти манипуляции я проделывал на компьютере, который выступал в роли хотспота. И доступ в интернет предоставлял «тот самый» Chillispot.

Нюансов в настройке в таком случае совсем не много. Во первых, в правилах файервола в качестве WAN-интерфейса нужно указать ppp0, вот так (выделено красным):

EXTIF="ppp0"
INTIF="eth1"

А во вторых, на всякий случай, стоит указать в настройках Chillispot-а (файл /etc/chilli.conf) адрес второго сервера DNS таким образом:

dns2 8.8.8.8

Суть данной перестраховки в том, что «может так статься», что на момент запуска Chillispot-а ADSL-соединение еще не будет установлено, и у компьютера еще не будет адреса(ов) сервера(ов) DNS. В итоге, в работе Chillispot могут наблюдаться проблемы. А так, мы принудительно подставляем вторым адрес одного из публичных  DNS серверов Google, который подстрахует, если вдруг будет недоступен DNS сервер провайдера…

Обновления модифицированной версии Easyhotspot на 1 июня 2012

Модифицированная версия программы Easyhotspot является билинговой программой для управления хотспотом или сетью хотспотов. Благодаря дополнительным модулям: приема платежей по СМС и приема платежей с банковских пластиковых карт, программа предоставляет возможность полностью автоматического обслуживания клиентов хотспота.

Подробнее прочесть о модифицированной версии программы Easyhotspot можно вот в этой заметке: «Простой биллинг с веб интерфейсом — Easyhotspot«.

С момента прошлого анонса обновлений были выполнены следующие действия:

Вебинтерфейс программы:

  • Немного подкорректированы стили (CSS), и теперь в формах по созданию Тарифных пакетов и Клиентов с оплатой по счету равная ширина полей ввода и списков для выбора (просто выглядит немного поаккуратней).
  • По результатам проведенного «анкетирования» был изменен список скоростей, присутствующий в выпадающем меню выбора как при создании нового Тарифного пакета, так и при создании и редактировании Клиента с оплатой по счету. Теперь в списке присутствуют такие значения: 128, 256, 512 кБит, 1, 2, 4, 6 , 8, 10, 12 Мбит.
  • В меню создания Клиентов с оплатой по счету добавлен выпадающий список для выбора желаемого значения таймаута (ранее это было фиксированное значение, равное 3 минутам).
  • Расширены возможности редактирования Клиентов с оплатой по счету — теперь можно редактировать и значение поля «Имя клиента».
  • В форме создания нового Тарифного пакета добавлено поле для ввода нового параметра — «График обслуживания». Этот параметр позволит создавать Тарифные пакеты, обслуживаемые не в режиме 24/7, а указывать желаемое время и желаемые дни недели, когда пользователи ваучеров, созданных на основе этих Тарифных пакетов смогут получать доступ в интернет. Подробнее — в теме форума, там же выложена и инструкция на примере показывающая как пользоваться этой новой функцией.
  • Добавлена дополнительная функция — при генерации Кассиром новых ваучеров прогамма  формирует файл со списком только что сгенерированных пар «логин-пароль». (Функция м.б. полезной в случае, если ваучеры, допустим,  печатаются где-то в типографии, и туда нужно передавать логины/пароли, которые д.б. на них распечатаны). Чтобы скачать полученный файл логинов-паролей, в меню на странице Администратора добавлен линк.
  • На странице, показывающей пользователей, которые подключены к хотспоту, добавлены новые информационные поля: порядковый номер, информация об IP-адресе, присвоенном клиенту, и IP-адресе контроллера доступа Chillispot, к которому подключен клиент. Также, в колонке  «Пользователь» для Клиентов с оплатой по счету теперь выводится не только логин, но и реальное имя пользователя.

Страница авторизации:

  • В скрипте страницы авторизации реализована защита функции гостевого доступа от подмены mac-адреса.
  • Для функции обслуживания клиентов по «Графику…» переведены сообщения системы о причине отказа в доступе в «неурочное время»…

Базовые настройки и т.п. :

  • В настройках Easyhotspot изменен параметр base_url, в котором прописывается либо IP-адрес, либо доменное имя сервера, на котором размещена программа Easyhotspot. Недостаток использовавшегося ранее решения заключался в том, что там прописывалось какое-то конкретное значение. При жэтом, если, допустим, в параметре был прописан локальный адрес (вида 192.168.х.х), то поработать с этой программой извне (из интернета) уже не получалось: программа все время пыталась переходить на этот самый локальный адрес 192.168.х.х. Сейчас без изменения данного параметра программа работает при обращении к ней с любого адреса.
  • Переработан скрипт проверки зависших сессий. Ранее, после выполнения скрипта, из списка клиентов, которые подключены к хотспоту, пропадали все клиенты (хотя реально их сеансы продолжались). Поэтому, данный скрипт запускался раз в сутки «в самую глухую ночь». Теперь скрипт не затрагивает абсолютно Клиентов, которые находятся в онлайн, а действует только по отношению к тем, сессии которых реально зависли.
  • В инсталятор включен бинарный файл Chillispot более новой версии (Ubuntu из репозиториев устанавливает версиию 1.0). Теперь инсталятор меняет в системе старый файл на более новую версию — Chillispot версии 1.1.0. Благодаря этому корректно работает автоматический переход клиента после авторизации на запрошенный им адрес.

Инсталятор:

  • Инсталятор теперь позволяет установить Easyhotspot не только на дистрибутив Ubuntu 10.04 LTS но и на новую версию — Ubuntu 12.04 LTS (хотя, версия 10.04 на мой взгляд все-таки предпочтительнее, а 12.04 рекомендуется использовать только в случае, если старая не знает вашего «железа»).
  • Инсталятор модифицирован и теперь во время установки задает вопрос о том, каким образом вы  будете использовать сервер — как сервер хотспота, сквозь который проходит трафик клиентов (Chillispot установлен непосредственно на нем самом), либо как сервер биллинга (к нему будут подключаться внешние точки доступа, при этом Chillispot-ы работают на роутерах), либо как и то и другое. В зависимости от вашего ответа на этот вопрос инсталятора на сервере либо устанавливается  Chillispot, либо открываются «наружу» порты RADIUS-а, либо и то и другое…
  • Изменена процедура обновления инсталятором уже установленной версии Easyhotspot — после обновления самой программы (вебинтерфейса) вам предлагается запустить ее и проверить корректность работы. Важно то, что на этот момент в базе программы сохраняются все ваши старые данные. После проверки вам предлагается ответить на вопрос о том, корректно ли работала программа в такой конфигурации (обновленный вебинтерфейс и старая база). Если вы ответите «Да», то в базе останется вся ваша старая  информация, и после обновления вы сможете продолжить, как ни в чем ни бывало. Если же проверка будет неудачна, отвечаете «Нет» и увы, инсталятор вынужден будет удалить вашу старую базу, а на ее место установить новую — «чистую»…

Документация:

  • Обновлена инструкция по работе в самой программе Easyhotspot. Инструкция значительно переработана с целью более доступного объяснения базиса работы в программе, ее основных функций и возможностей. Также, в инструкцию внесено описание всех тех дополнений и модернизаций, которым программа подверглась с момента написания прошлой редакции этой инструкции (более 2-х лет назад). Инструкция доступна к свободному скачиванию по ссылке — «Программа управления Wi-Fi хотспотом — Easyhotspot, Руководство по эксплуатации«.
  • Написана краткая инструкция по использованию «Графика обслуживания». В ней на примере показано, как создать этот самы й график. Инструкция доступна по этой ссылке — «Управление «Графиком обслуживания».
  • Написана инструкция по перепрошивке Ubiquiti Nanostation Loco 2 прошивкой от OpenWRT и установка в нем и настройке программного контроллера доступа Chillispot, что позволит использовать его в составе «распределенной системы» хотспотов, управляемых единым сервером биллинга. Инструкция предлагается на странице онлайн-покупки.

Продолжения:

Обновления Easyhotspot, июль 2012

Новости модифицированной версии Easyhotspot, ноябрь 2012

Новости Easyhotspot — май 2013

Исправления и обновления в модифицированной версии Easyhotspot на 31 января 2012

Модифицированная версия программы Easyhotspot является билинговой программой для управления хотспотом или сетью хотспотов. Благодаря дополнительным модулям: приема платежей по СМС и приема платежей с банковских пластиковых карт, программа предоставляет возможность полностью автоматического обслуживания клиентов хотспота.

Подробнее прочесть о модифицированной версии программы Easyhotspot можно вот в этой заметке: «Простой биллинг с веб интерфейсом — Easyhotspot«.

С момента прошлого анонса обновлений были выполнены следующие действия:

Исправлены следующие две ошибки:

  • Если в меню администратора, в списке выписанных счетов, выполнить поиск, то результат запроса вываливался уже в меню кассира.
  • После редактирования уже существующего клиента с оплатой по счету и сохранения изменений в базу, у клиента полностью пропадала возможность авторизоваться (подключиться к интернету).

Также выполнены следующие обновления:

  • Ранее функция принудительного отключения в программе корректно работала только в том случае, если клиенты подключались к интернету непосредственно через сам сервер хотспота (chillispot был запущен на том же самом компьютере, что и Easyhotspot). Если же система строилась по схеме: «отдельный сервер биллинга» + роутеры с chillispot внутри них» (как описано в заметке «Организация нескольких хотспотов«), то в таком случае функция принудительного отключения не работала. Теперь функция принудительного отключения корректно отключает любых пользователей, подключенных к любым NAS (контроллерам доступа). Успешно отключаются пользователи, подключенные к внешним роутерам с chillispot-ом внутри них, имеющим самые разные IP-адреса. Также, функция корректно работает и в том случае, когда chillispot используется на самом сервере. То есть, теперь допускается смешивание – когда одновременно используется и chillispot на самом сервере, и внешние роутеры с chillispot-ом вшитым в них.
  • Оформление страницы авторизации вынесено в файлы CSS, причем, происходит их смена в зависимости от разрешения экрана клиентского устройства (компьютера, планшета, мобилки и т.д.). Это позволит вам при желании максимально просто сменить внешний вид страницы авторизации.
  • У страницы авторизации реализована возможность максимально простого отключения поля для парольного входа. То есть, на странице в таком случае остается только кнопка «Гостевого входа». Данная возможность полезна, если вы планируете в своем хотспоте  использовать только бесплатный гостевой вход, и поля для ввода логина и пароля вам не нужны.
  • Переведены на русский язык надписи на кнопках «Вход» и «Гостевой вход». Теперь они могут быть на любом языке, кирилическими или латинскими — не важно.
  • Написан дополнительный скрипт, предоставляющий возможность импорта в базу программы Easyhotspot уже готового списка клиентов из XML-файла.
  • В форме создания Тарифных пакетов (в меню Администратора) реализована проверка значений, вводимых в поля. Проверка не дает теперь ввести наименование Тарифного пакета кроме как латиницей, а в поля, в которых должны быть цифры — не дает вводить что-либо иное. При вводе неверного значения программа выводит информационное сообщение, и также у поля с неверным значением фон меняется с белого на красный.
  • Добавлена индикация номера ваучера, что значительно упрощает их учет. Теперь на каждом ваучере печатается его порядковый номер. Как это выглядит, можно увидеть на показаном ниже рисунке (для наглядности нарисунке номер ваучера дополнительно выделен красной рамкой, которой в реалии не будет). Также, отредактирована и сама функция поиска ваучеров в программе Easyhotspot в меню кассира, что позволяет теперь искать ваучеры не только по логину, но и по их порядковому номеру тоже.
Рис. 1 — Ваучер с порядковым номером

 

Просмотреть все изменения и дополнения, выполненные в программе Easyhotspot, вы можете в соответствующей теме на форуме.


Продолжения:

Обновления модифицированной версии Easyhotspot на 1 июня 2012

Обновления Easyhotspot, июль 2012

Новости модифицированной версии Easyhotspot, ноябрь 2012

Новости Easyhotspot — май 2013

Организация нескольких хотспотов

Один из вопросов, который мне часто задают в переписке — как правильно организовать несколько хотспотов (зон). Собственно, авторами этого вопроса чаще всего являются люди, заинтересовавшиеся предлагаемой мною модифицированной версией программы Easyhotspot. Напомню, что в варианте, который устанавливается моим инсталятором, структура взаимодействия модулей выглядит так, как описано в заметке «Хотспот и с чем его едят». При этом, роль контроллера доступа (NAS — Network Access Server) выполняет программа Chillispot. И если она запущена непосредственно на самом сервере, то у сервера должны быть две сетевые платы, к одной из которых подключены клиенты, а к другой — интернет. В этом случае все выглядит так, как показано ниже в варианте №1.

Должен сразу оговориться — тут и далее будут рассматриваться только случаи, когда точек доступа используется несколько (либо несколько зон, либо одна большая зона).

Вариант № 1

Взглянем на рисунок:

Рис. 1 - Сервер хотспота является одновременно и контроллером доступа

На рисунке рассмотрен случай, когда Chillispot запущен непосредственно на сервере, и весь трафик клиентов идет непосредственно через сервер хотспота.

Еще одно небольшое отступление — как показано на рисунке (шриховыми линиями), сам сервер может подключаться к интернету как непосредственно (первый способ), так и через модем либо маршрутизатор и т.п. (второй способ). Данное подключение в свете рассматриваемого вопроса особого значения не имеет, и в этой заметке рассматриваться не будет. 

Нас же по прежнему интересует подключение нескольких точек. Есть правило, которое, увы, нам нельзя нарушить: контроллер доступа Chilllispot ДОЛЖЕН работать с клиентскими компьютерами только НАПРЯМУЮ. То есть, между выходом Chillispot, и компьютерами клиентов хотспота НЕ ДОЛЖНО быть никакого оборудования, использующего функции, либо манипулирующие сетевыми адресами, либо вставляющими куда не попадя свои собственные mac-адреса. То есть,

  • Функция NAT — заказана!
  • Подключения по wi-fi типа repeater (повторитель) или client (клиент) — заказаны!

Их использовать НЕЛЬЗЯ! И если вы хотите чтобы точек доступа было много, то в таком случае к выходу сервера вы должны просто подключить тупой свитч, а к его выходам — тупые точки доступа. И никак иначе! В противном случае могут возникать даже такие «странные» ситуации, когда компьютер клиента хотспота IP-адрес от Chillispot получать БУДЕТ, но авторизоваться клиент все-равно НЕ СМОЖЕТ. Если в таком случае попытаться просмотреть логи системы, то можно увидить, что в процессе авторизации будут участвовать mac-адреса «транзитного» оборудования, а вовсе не клиентского компьютера. И как результат — отсутствие (полное) страницы авторизации. А что же делать, если все-таки необходимо использовать например wi-fi канал для прохождения какого-то участка и т.п. При такой организации сети единственный приемлемый вариант — это использование WDS. То есть, на «транзитном куске» устанавливаются две точки wi-fi, настроенные в режиме WDS, и как следствие, представляющие собой «виртуальный кусок Ethernrt-кабеля в отсутствие самого кабеля». Но что делать, если такой вариант неприемлем?

Или, что делать, если хочется организовать несколько хотспотов?

Описанный в заметке сервер хотспота в своей работе использует взаимодействие различных служб (серверов), образующих некую модульную структуру. И как уже было сказано в другой заметке, эти службы не обязательно должны располагаться на одном компьютере. Более того, некоторых служб может быть, скажем так, «больше чем одна». О чем это я? Еще раз посмотрим на рис. 2 в статье про взаимодействие служб хотспота. Как видно на рисунке – между клиентами и интернетом находится лишь один сервер (служба) – контроллер доступа Chillispot. А теперь давайте все остальные службы, показанные на этом рисунке,  условно объединим «в одно целое» и назовем его «сервером биллинга». Что нам это дает? Лишь одно – ответ на вопрос «А как сделать несколько хотспотов с единым управлением?». То есть, чтобы реализовать такую схему, достаточно поставить лишь один единственный такой «сервер биллинга», а в местах предполагаемых хотспотов установить только лишь контроллеры доступа Chillispot, и настроить их на взаимодействие с RADIUS-ом «сервера биллинга». Причем, территориально «сервер биллинга» и эти т.н. «контроллеры» могут быть разнесены между собой хоть и по всему миру!

Итак, смотрим второй вариант…

Вариант №2

Вашему вниманию предлагается следующий рисунок:

Рис №2 - Chillispot перенесен в маршрутизаторы

Как видно из рисунка, отличия заключаются в том, что

  • клиентов обслуживают уже не точки доступа, а маршрутизаторы;
  • эти маршрутизаторы подключаются не к серверу хотспота (напрямую или через свитч), а к тому модему (или маршрутизатору), который организует доступ в интернет для всей сети организации.

Чтобы сохранить функцию хотспота, в таком случае контроллер доступа Chillispot  переносится непосредственно в сами маршрутизаторы. Для этого маршрутизаторы, организующие зоны хотспота, прошиваются альтернативными прошивками, в которых встроен Chillispot (примером могут служить прошивки от dd-wrt, в которых Chillispot уже встроен, либо прошивки от open-wrt, где по умолчанию Chillispot  отсутствует, но может быть добавлен при помощи механизма т.н. optware-пакетов). Пример перепрошивки маршрутизатора рассмотрен мной в заметке «Прошивка роутера D’link DIR-320 под хотспот» ранее.

Сам сервер хотспота при этом выполняет только лишь функции биллинга и сервера RADIUS. При таком построении, доступ в интернет клиентам предоставляют непосредственно сами (перепрошитые) маршрутизаторы. А чтобы знать кого в интернет пускать, а кого не пускать, chillispot из прошивок маршрутизаторов настраивается таким образом, что он взаимодействует с сервером RADIUS, запущеном на сервере хотспота (биллинга).

Дополнительной особенностью данной схемы является еще и тот факт, что трафик клиентов не проходит сквозь сам сервер хотспота, что снижает требования к его производительности (т.к. Chillispot  — это програмный контроллер доступа, и его пропускная способность зависит от быстродействия компьютера).

Ну и напоследок вариант №3

Вариант №з

При просмотре второго рисунка у вас не возникало вопроса — а что там делает устройство подписанное как «Модем или маршрутизатор»? Ведь обслуживающие клиентов устройства — тоже маршрутизаторы. То есть, они сами в состоянии выполнять авторизацию у провайдеров, и как следствие, сами могут подключаться к интернету. То есть, выкидываем дополнительный «модем или маршрутизатор» и получаем рисунок №3 — своеобразный «частный случай» рисунка №2, при котором маршрутизаторы подключены к интернету напрямую.

Рис. № 3 - Маршрутизаторы связаны с сервером хотспота через интернет

И сам сервер хотспота, на котором работает RADIUS и биллинг — тоже находится «где-то там» (в интернете). При этом chillispot  снова трудится на маршрутизаторах, и снова запрашивает данные по авторизации у RADIUS-а. Результат — тот же самый, что и в варианте №2, но на одну «железяку» стало меньше… Но даже не это главное достоинство! В этом случае «сервер биллинга» и роутеры хотспотов территориально могут быть разнесены между собой хоть и по всему миру! То есть, ставим сервер биллинга на какой-нибудь VDS-сервер, а потом просто расставляем в нужных местах роутеры и получаем хотспоты!!!…

Простой биллинг с веб интерфейсом — Easyhotspot

Вашему вниманию предлагается готовое интегрированное решение для организации своего собственного хотспота. Причем, «своего собственного» в том смысле, что именно вы будете решать «что, где, когда и почем»! У программы нет ограничений на число обслуживаемых клиентов, роутеров, тарифов и пр.! Не нужно «докупать лицензии на увеличившиеся число клиентов» либо платно «продлевать лицензию на пользование программой на (какой-то период)»!

Один из основных  способов обслуживания клиентов — с помощью продаваемых (или раздаваемых бесплатно) ваучеров.

Вторая функция программы — обслуживание «постоянных» клиентов, для которых биллинг подсчитывает время, проведенное ими в интернете, либо потребленный ими трафик, и затем формирует счета на основании этих данных. Об этом — см. ниже.

Третий способ обслуживания клиентов, предоставляемый программой, это режим «Гостевого доступа», при котором клиент хотспота сможет бесплатно выходить в интернет, просто нажав одну лишь кнопку на странице авторизации.  Никаких паролей для такого «гостевого» обслуживания сообщать клиенту не нужно! Всеми параметрами такого гостевого доступа (длительность, объем трафика, скорость, периодичность , и т.д.) — ВСЕМ ЭТИМ управляете непосредственно вы сами!

Ну и напоследок — программа предоставляет дополнительную разновидность гостевого доступа» — полностью автоматический допуск клиентов в интернет  после просмотра рекламы. Причем, клиент должен будет смотреть именно страницу с рекламой, а не переключившись на другое окно или приложение, ждать пока она закончится. В случае, если клиент переключается со страницы с рекламой на что-то другое, счетчик времени просмотра просто останавливается!

Также, программа позволяет предоставлять доступ в интернет после СМС-авторизации, как того требует российское законодательство! Модуль и записывает номера телефонов клиентов, и привязывает эти номера к mac-адресам оборудования клиентов, ив дальнейшем хранит эту информацию в архиве программы.

Дополнительные удобства в обслуживании клиентов предоставляют интегрируемые в Easyhotspot (приобретаются отдельно) автоматизированные платежные модули по приему оплаты с помощью СМС, оплаты с кредитных карт, оплаты через системы «мобильной коммерции», или же такие платежные системы как QIWI, Onpay, Robokassa, Assist, Яндекс-Касса, «Единый кошелек» , Paypal и пр. Все это позволит вам превратить ваш хотспот в истинный «автомат по продаже интернета»! Вам не нужен будет кассир, продающий ваучеры! Клиент сам подключится к хотспоту, сам произведет оплату в выбранной платежной системе, и в ответ получит от программы логин и пароль, чтобы ввести их на странице авторизации и получить доступ в интернет!!!

Система позволит вам абсолютно свободно управлять тарифами, ценами, лимитами и всеми прочими параметрами доступа в интернет ваших клиентов!

Система позволяет управлять как одним хотспотом, так и целой сетью, причем сеть эта может быть разнесена территориально. В качестве «внешних» хотспотов, обслуживаемых сервером, могут выступать роутеры Mikrotik (без каких-либо модернизаций), либо иные SOHO-роутеры, которые необходимо будет перепрошить прошивками либо DD-WRT, либо OPENWRT.

Приведенная в этой заметке информация — попытка кратко донести до вас основы того, как будет работать хотспот с использованием предлагаемого программного обеспечения. Подробнее вы можете прочесть все это постатейно, если перейдете по этой ссылке.

Система включает в себя сервер авторизации и учета RADIUS, страницу авторизации (контроллер доступа Chillispot) и биллинговую программу Easyhotspot. Система устанавливается на компьютер, работающий под управлением Linux, что с одной стороны, избавляет от необходимости покупки самой операционной системы, а с другой стороны повышает надежность и защищенность системы. Построение системы соответствует стандартам, устоявшимся в сфере предоставления услуг доступа в интернет, и было рассмотрено мной в заметке «Хотспот и с чем его едят». Кроме того, данная система может выступать в роли центрального сервера целой сети хотспотов. При этом, в непосредственных точках реализации достаточна установка одних лишь роутеров, настроенных на взаимодействие с центральным сервером. Такое построение позволит вам получить единый биллинг, обслуживающий ваших клиентов в самых различных заведениях (зданиях, зонах и т.п.). Последние нововведения программы позволяют привязывать клиентов к отдельным зонам, ограничивая их обслуживание указанной зоной и отказывая в обслуживании в иных зонах.

Непосредственное управление хотспотом осуществляет именно биллинговая программа. По этому, ниже я постараюсь вкратце изложить возможности и преимущества именно программы Easyhotspot, хотя фактически она – лишь «вершина айсберга» всей системы хотспота. Фактически, Easyhotspot является одним из наиболее простых и интуитивно понятных программных продуктов, предназначенных для управления не только именно беспроводным хотспотом, но и любой системой управления доступом в интернет, рассчитанной на работу с сервером RADIUS. Рассматриваемая тут модифицированная и переведенная на русский язык версия программы Easyhotspot в первую очередь отличается повышенной стабильностью работы, и отсутствием проблем, присущих ее исходному англоязычному оригиналу.

Easyhotspot является веб приложением, написанным на языке PHP. Благодаря этому, управление хотспотом происходит в браузере (любом), запущенном на компьютере под управлением любой ОС. Обеспечив доступ к программе из интернета, вы сможете управлять вашим хотспотом, находясь даже на море! Ввиду своей простоты программа является идеальным решением для организации услуги предоставления доступа в Интернет в публичных местах (Кафе, Гостиницы, Библиотеки, Аэропорты, Вокзалы и т.д.) – т. н. «HotSpot».

Программа Easyhotspot позволяет одновременно обслуживать две категории платных клиентов хотспота. Деление клиентов на категории осуществляется по способу оплаты ими услуги доступа в интернет. К первой группе относятся клиенты, которые сначала пользуются интернетом, а потом оплачивают выставленный вами счет (т.н. postpaid). Вторая группа – это клиенты, которые сначала оплачивают услугу доступа в интернет (покупают талоны-ваучеры), и лишь потом пользуются ей (т.н. prepaid).

Программа Easyhotspot позволяет учитывать как время, проведенное клиентом в интернете (в минутах), так и его трафик (объем данных в мегабайтах). Соответственно, для клиентов, оплачивающих по счету, вы можете назначить, что будет учитываться при оплате – минуты или мегабайты. И результирующий счет, полученный клиентом, будет сформирован простым умножением суммы либо минут, либо мегабайт, умноженных на соответствующий тариф. А для клиентов, покупающих ваучеры, вы можете указать т.н. «номинал» ваучера – число либо минут, либо мегабайт, после израсходования которых, клиент будет автоматически отключен от хотспота.

Программа Easyhotspot предоставляет вам абсолютную свободу в вопросах ценообразования на все предоставляемые вами услуги доступа в интернет – все расценки и тарифы вы назначаете сами! При этом нет никаких ограничений, и вы вольны назначать любые цены в пределах от нуля и до «потери сознания»! Также, в программе тарифы для клиентов с оплатой по счету (postpaid) никоим образом не связаны с ценами на ваучеры (prepaid) – эти два способа обслуживания двух различных категорий клиентов имеют абсолютно независимое ценообразование! Для категории клиентов с оплатой по счету (postpaid) вы назначаете стоимость одной минуты и одного мегабайта, и эти цены действуют только для этой категории клиентов! А для клиентов, покупающих талоны-ваучеры (prepaid), вы назначаете цену ваучера, и эта цена никоим образом не зависит от тарифов за минуту или мегабайт, установленных вами для категории postpaid и рассмотренных в предыдущем предложении!

Теперь рассмотрим, какие лимиты (ограничения) позволяет назначать программа Easyhotspot.

Номинал (ваучера) – это основной лимит ваучера; у клиентов с оплатой по счету такого параметра нет вовсе. Этот параметр определяет тот максимальный объем услуги доступа в интернет, после израсходования которого, клиент будет автоматически отключен от хотспота. Номинал ваучера может быть задан либо в минутах (то есть клиенту гарантируется некая продолжительность времени подключения к интернету), либо в Мегабайтах (клиенту гарантируется некий объем трафика). Этот лимит может быть израсходован клиентом за любое число сеансов – хоть за один, хоть за несколько. Как только выделенный лимит будет клиентом израсходован, хотспот автоматически отключит его от интернета.

Ограничение входящей скорости и Ограничение исходящей скорости – эти два параметра позволяют назначить ту максимальную скорость, с которой клиент хотспота будет соответственно получать данные из интернета и отправлять данные в интернет. Эти ограничения могут быть назначены как для ваучеров, так и для клиентов с оплатой по счету.

Таймаут – это не лимит, но тоже один из параметров, влияющих на подключение клиента к интернету. Этот параметр определяет время (в минутах), по истечении которого хотспот отключит клиента от интернета, если в течение этого времени клиент не проявлял активности (не было передачи/приема данных клиентом в/из интернета). Для ваучера вами может быть назначен произвольный таймаут. Для клиентов с оплатой по счету таймаут жестко прописан в программе и равен 3 минутам.

Срок годности ваучера – этот лимит, как видно из его названия, может быть назначен только для ваучеров. Позволяет «бороться» с «очень экономичными» клиентами – по истечении этого срока хотспот перестает пускать клиента в интернет, даже если тот так и не израсходовал свой лимит, отведенный ему номиналом ваучера. Параметр указывается в минутах/часах/сутках. Важным является то обстоятельство, что отсчет срока годности идет от момента активации ваучера (первого раза, когда клиент ввел в систему выданные ему на ваучере имя и пароль). Для примера, если у ваучера указать срок годности как 1 час, то в итоге мы получаем ваучер, который гарантированно становится недействительным по прошествии 1 часа с момента его активации, вне зависимости от того, сколько времени клиент реально провел в интернете!

ВНИМАНИЕ! При обслуживании клиентов по ваучерам ОЧЕНЬ ВАЖНО четко понимать различие между Номиналом ваучера и Сроком годности ваучера! Номинал (если он ограничивает именно время) ограничивает СУММАРНУЮ длительность ВСЕХ сеансов Клиента. Длительность пауз между сеансами при этом не имеет никакого значения. Например, номинал ваучера равен 60 минутам, а клиент пользуется интернетом ровно 2 минуты в день. В таком случае Номинал ваучера им будет израсходован за 30 дней. С другой стороны, Срок годности ваучера начинает отсчитываться с момента первой активации ваучера Клиентом. И при его подсчете не берется во внимание, пользовался клиент в это время интернетом все время беспрерывно, либо же между его сеансами были паузы. Рассмотрим тот же пример про ваучер, номинал которого равен 60 минутам, и клиента, который ежедневно использует только по 2 минуты. Но при этом мы дополнительно укажем, что Срок годности для этого ваучера равен 3 суткам. Допустим, Клиент активировал ваучер 3 сентября 2012 года в 12:00. В результате лимита, наложенного именно Сроком годности, начиная с 6 сентября 2012 года 12:00 этот Клиент уже больше не сможет авторизоваться и получить доступ в интернет. Если в этот момент Клиент был подключен к интернету, то хотспот отключит его. И, хотя, в данном случае Клиент (с учетом его «экономного» пользования интернетом) израсходовал всего лишь 6 минут из отведенных Номиналом 60-ти, доступ в интернет по данному ваучеру будет более не возможен, так как истек его Срок годности.

Число одновременных логинов – этот лимит указывает, какое количество клиентов может быть подключено к хотспоту с одними и теми же логином и паролем. Для ваучеров это число в программе изначально установлено равным единице (может быть изменено администрацией хотспота). То есть, по одному ваучеру несколько человек одновременно ходить в интернет не смогут никак – только один! Для клиентов с оплатой по счету это число может быть произвольным, и назначается вами. Это сделано на тот случай, если клиенту понадобится подключать в интернет несколько устройств одновременно, например, ноутбук, смартфон и планшет, и т.д.

График обслуживания – этот лимит позволяет вам создавать такие Тарифные пакеты, ваучеры(*) которых будут обслуживаться не «все 24 часа в сутки все семь дней в неделю», а по какому-то особому, составленному вами графику.  В графике указываются: день недели плюс время старта и время окончания периода, когда клиенту позволен доступ в интернет. Вы вольны составить самый «витиеватый» график, комбинируя дни и время старта/стопа, добавляя любое необходимое их количество. В остальное время клиенту будет отказано в авторизации и в доступе в интернет.

Дата окончания обслуживания – этот лимит позволяет вам установить точную дату, когда обслуживание выбранного клиента будет прекращено. Клиент будет отказано в авторизации и в доступе в интернет, если истек срок его обслуживания. При этом клиент получит сообщение о том, что «Обслуживание данного аккаунта прекращено».

ID хотспота – этот лимит позволяет вам «привязать» клиента к определенному хотспоту (точнее, к идентификатору хотспота). Если для клиента не назначен «ID-хотспота» (поле параметра оставлено пустым), то такой клиент будет обслуживаться ЛЮБЫМИ хотспотами, управляемыми посредством данной биллинговой программы. Если же идентификатор указать, то клиент будет проходить авторизацию и получать доступ в интернет только на тех хотспотах, у которых установлен точно такой же ID.

MAC-адрес клиента – этот лимит позволяет вам «привязать» клиента к MAC-алресу его оборудования. Если для клиента не назначен «MAC-адрес» (поле параметра оставлено пустым), то такой клиент сможет авторизоваться с любого устройства с любым MAC-адресом. Если же MAC-адрес указать, то клиент будет проходить авторизацию и получать доступ в интернет только на том устройстве, которое имеет этот MAC-адрес. Привязка к МАС-адресу выполняется «в один клик»! Для ваучеров по умолчанию в программе реализована «авто-привязка» к mac-у устройства в момент активации ваучера (самого первого подключения клиента к интернету). Данная «авто-привязка» может быть отключена администрацией хотспота  при необходимости!

Клиенту с оплатой по счету (postpaid) вы можете ограничить три параметра доступа в интернет:

  • Входящую скорость
  • Исходящую скорость
  • Число одновременных логинов
  • Таймаут
  • Дату окончания обслуживания
  • ID хотспота
  • MAC-адрес

Клиенту, использующему ваучер (prepaid), можно указать следующие параметры:

  • Номинал – фиксированное число минут или мегабайт
  • Входящую скорость
  • Исходящую скорость
  • Срок годности ваучера
  • Таймаут
  • График обслуживания
  • ID хотспота (привязывается не отдельный ваучер, а весь тариф)
  • МАС-адрес («привязывается» уже непосредственно ваучер)

Комбинирование этих параметров и ограничений позволит вам максимально гибко управлять доступом клиентов вашего хотспота в интернет.

С целью минимизации возможностей для злоупотреблений, работа в программе Easyhotspot разделена между несколькими категориями пользователей. Категорий пользователей (или т.н. «ролей») в программе существует три:

  • Суперадминистратор – это пользователь, наделенный максимальными административными правами. Суперадминистратор имеет право назначать тарифы для клиентов с оплатой по счету, создавать и удалять Тарифные пакеты (номиналы ваучеров), проводить инкассацию, удалять завершенные и израсходованные ваучеры, а также создавать и удалять пользователей программы: Кассиров, Администраторов и других Суперадминистраторов.
  • Администратор – это также административный пользователь программы, но в отличие от Суперадминистратора ему не позволено создавать, редактировать и удалять пользователей программы рангом выше Кассира (то есть, Администраторов и Суперадминистраторов он ни создавать, ни удалять, ни редактировать не имеет права, а Кассиров – может). За исключением этого ограничения, Администратор может выполнять все остальные административные действия, перечисленные выше для Суперадминистратора.
  • Кассир – пользователь, непосредственно работающий с клиентом. Он генерирует и продает (или раздает даром) ваучеры на основании уже имеющихся Тарифных пакетов, созданных ранее Администратором (или Суперадминистратором), а также создает аккаунты для клиентов, которые оплачивают доступ в интернет по счету. Также, Кассир закрывает аккаунты и выписывает счета клиентам с оплатой по счету после того, как те закончили пользование услугой. С целью предотвращения возможных злоупотреблений Кассиров, в программе введена специальная настройка про «Доверие Кассиру». Если вы доверяете Кассиру, в его меню присутствуют кнопки для удаления использованных ваучеров и выписанных счетов. Соответственно, Кассир сможет их самостоятельно удалять. Если же параметр «Доверие Кассиру» установлен как «нет», то у кассира нет такой возможности (удаления ваучеров и счетов), что в конечном итоге не позволит ему присвоить себе деньги, полученные от клиента, а проданный клиенту ваучер, или выписанный счет просто удалить из программы.

Но вернемся к способам обслуживания клиентов.

Вариант Postpaid (или «Оплата по счету») предполагает, что клиент является постоянным (на протяжении некоторого периода времени), и за полученные услуги рассчитывается по истечении учетного периода на основании выставленного ему счета. Типичным примером использования данного варианта учета может служить хотспот гостиницы или отеля. В этом случае доступ в интернет предоставляется клиенту в момент его поселения, а расчет за потребленную услугу осуществляется, когда клиент уже выписывается из номера. На протяжении некоторого периода времени система подсчитывает суммарный объем потребленного клиентом времени или трафика. По окончании учетного периода на основании результатов учета и установленных тарифов программа формирует счет для клиента. В данном случае распределение ролей пользователей программы осуществляется следующим образом:

  • Администратор заранее назначает в программе расценки для оплаты по счетам (сколько стоит каждая минута подключения, и сколько стоит каждый Мегабайт переданной информации). Обращаю внимание на то, что эти тарифы не имеют абсолютно никакого отношения к ценообразованию для второго метода (ваучеров).
  • Кассир создает учетную запись пользователя, самостоятельно назначает ему логин, пароль и тип учета. При необходимости устанавливает лимиты скорости и меняет число одновременных логинов. После этого кассир распечатывает клиенту талон, на котором указаны параметры для доступа в интернет (логин и пароль).
  • Дополнительно (при необходимости) Клиенту может быть назначена Дата окончания обслуживания. По наступлении указанной даты доступ в интернет для Клиента прекращается автоматически. Ряд платежных модулей позволяет таким клиентам вносить «помесячную» оплату, в результате чего Дата автоматически смещается еще на месяц вперед.
  • Клиент начинает пользоваться услугой. На протяжении установленного учетного периода программа хотспота подсчитывает объем потребленной клиентом услуги. В зависимости от выбранного типа учета суммируется либо время, проведенное клиентом в интернете, либо объем полученной им информации.
  • По истечении учетного периода кассир формирует счет клиенту. Сумма счета определяется простым умножением цен, указанных Администратором, на объем услуги, потребленный клиентом. Кассир, если параметр про «Доверие кассиру» выключен, во избежание финансовых злоупотреблений, не может просто удалить учетную запись клиента. Также, по тем же причинам Кассир не может удалить и сформированный счет.
  • В момент формирования счета учетная запись клиента (логин и пароль) автоматически удаляется, и клиент более не сможет получить доступ в интернет с этими параметрами.
  • После того, как клиент оплатит счет, Администратор может удалить его из базы данных программы.

Второй способ обслуживания — Prepaid (ваучеры) предназначен для предоставления разовых предоплаченных услуг. Иными словами, клиент сначала приобретает у кассира ваучер (талон) определенного номинала (в котором указаны логин и пароль), и лишь потом получает доступ в интернет. Номинал ваучера (талона) гарантирует клиенту предоставление определенного объема услуги доступа в интернет. Учет потребленной услуги возможен как по времени подключения, так и по объему израсходованного трафика. Иными словами, клиент автоматически будет отключен от хотспота после того, как либо время, которое он был подключен к интернету (в минутах), либо объем переданной и полученной им информации (в Мегабайтах) превысили указанный лимит (номинал ваучера). Ваучер также может иметь ограничения скорости. Кроме того, у ваучера фиксирован лимит одновременных логинов – только один (настраиваемое значение) клиент сможет подключиться в интернет с указанными логином и паролем. Второму клиенту, использовавшему эти же учетные данные, в доступе будет отказано. И напоследок, у ваучера есть срок годности (указывается Администратором). По его истечении клиент не сможет подключиться к хотспоту даже, если он не израсходовал еще все лимиты времени или мегабайт. Отсчет срока годности ведется от момента активации ваучера (первого подключения клиента к интернету через хотспот). Типичным примером использования данного варианта учета может служить хотспот в кафе.

Следует учесть, что ваучеры формируются (создаются) Кассиром на основании уже имеющихся в системе Тарифных пакетов. То есть, все параметры (лимиты) ваучера будут в точности такими, какими они есть у Тарифного пакета, на основании которого этот ваучер и был создан. Тарифные пакеты создает Администратор. И именно Тарифный пакет определяет, что будет подсчитываться – время или трафик, а также назначает тот лимит, по истечении которого клиент будет отключен. Тарифный пакет имеет собственную цену. Цена может быть указана произвольная (хоть и нулевая), и она никак не связана с тарифами, назначенными для оплаты по счетам. Кроме того, для Тарифного пакета при желании могут быть указаны ограничения входящей и исходящей скорости, с которой данные будут передаваться от/к клиенту. И срок годности, упоминавшийся ранее, также является параметром именно Тарифного пакета. При таком методе предоставлении услуги доступа в интернет роли пользователей программы распределены следующим образом:

  • Администратор создает Тарифные пакеты. Их число ничем не ограничено, и определяется лишь вашими потребностями. Например, можно создавать тарифные пакеты на разную длительность работы в интернете. Или, допустим, на одно и то же время доступа, но с различной скоростью. Или «мало и медленно» – задаром, а «много и быстро» – за деньги! В очередной раз напоминаю, что Администратор абсолютно свободен в вопросах ценообразования.
  • На основании имеющихся (созданных Администратором) Тарифных пакетов Кассир генерирует и распечатывает ваучеры, и продает их Клиентам (или же раздает даром, если указана нулевая цена).
  • Клиент начинает пользоваться услугой. В момент первого подключения к хотспоту система начинает отсчет срока годности ваучера. Также, система начинает подсчет объема потребленной клиентом услуги. По истечению лимита, указанного как номинал ваучера, клиент будет отключен от интернета автоматически.
  • Все ваучеры, использование которых клиентами было начато, попадают в отчет для инкассации. То есть, пока ваучеры были просто распечатаны и «тихо и мирно» лежат у кассира, они не попадают в этот отчет. Но как только логин и пароль из ваучера были хоть раз введены в систему для получения доступа в интернет, программа автоматически считает такой ваучер как проданный. Как следствие, такой ваучер попадает в отчет для инкассации. Отчет подсчитывает общее число проданных ваучеров для каждого из Тарифных пакетов и, с учетом их цены, выводит итоговую сумму, подлежащую инкассации (иными словами, выручку Кассира, полученную от продажи ваучеров).
  • После того, как Кассир оплачивает Администратору сумму, подлежащую инкассации за проданные ваучеры, Администратор помечает попавшие в отчет ваучеры, как инкассированные. В дальнейшем, при формировании нового отчета для инкассации, ваучеры, инкассированные ранее, уже не попадут в него.
  • После инкассации Администратор запускает команду, которая удаляет из базы хотспота все инкассированные ваучеры, лимит которых был израсходован, либо истек их срок годности.

Более подробно работа в программе Easyhotspot рассмотрена либо на этой странице, либо в данном полном руководстве.

Обобщенные «сводки» о внесенных в программу изменениях и улучшениях публикуются в этом разделе сайта. Также, полный список всех модернизаций, обновлений и дополнений программы был продублирован мной в форум. По мере дальнейшей модернизации и реализации новых функций информация об этом также добавляется в указанную тему. Желающие также могут просмотреть описание модернизаций на этой странице.

Увидеть получившийся результат (в том смысле, что в онлайн попробовать поработать в «демонстрационной» версии модифицированной программы Easyhotspot) можно, если перейти по этой ссылке. Чтобы войти в программу как Администратор, Вам потребуется ввести логин admin и пароль admin123. Чтобы поработать в роли Кассира, нужно будет ввести логин vcool, и пароль vcool123.

Желающие сравнить, чем же все-таки модернизированный Easyhotspot отличается от «оригинального», могут легко сделать это самостоятельно! Достаточно просто сравнить старую версию программы с ее обновленным собратом. Чтобы войти в любую из версий программы как Администратору, Вам потребуется ввести логин admin и пароль admin123. Чтобы поработать в роли Кассира, нужно вводить логин vcool, и пароль vcool123.

Существует также вариант модернизированной программы Easyhotspot с английским языком интерфейса. Его демо версия доступна по адресу: http://wifi-hotspot.zp.ua/hotspot_demo_eng/ . Данные для входа — те же самые, что и для «русской» версии (приведены в предыдущем абзаце).

Полную подробную инструкцию по работе с модернизированной программой Easyhotspot можно прочесть или скачать по данной ссылке.

Мной составлено подробное руководство по установке и настройке хотспота с использованием программ и служб Easyhotspot, FreeRADIUS, MySQL, Apache, установленных на компьютере, работающем под управлением актуальных версий ОС Linux Ubuntu LTS (12.04, 14.04, 16.04, 18.04), а также актуальных версий ОС Debian (7.Х, 8.Х или 9.Х). Содержание руководства можно просмотреть по данной ссылке. Данное руководство плюс модифицированная и русифицированная версия программы предлагаются к продаже по цене $90.

Программа поставляется в виде скрипта-инсталлятора, который самостоятельно полностью устанавливает и настраивает весь хотспот – контроллер доступа Chillispot, сервер авторизации RADIUS, а также все остальные необходимые для работы программы: сервер баз данных MySQL, веб сервер Apache, ну и собственно саму программу Easyhotspot. В результате вы получаете стабильно работающий (по нескольку месяцев без выключения) хотспот, у которого отсутствуют какие-либо ограничения. В двух словах, создание сервера хотспота состоит из двух этапов — установки самой ОС UBUNTU (или Debian), и последующего выполнения скрипта-инсталятора, который сам установит все компоненты сервера хотспота!!! Подробнее как пользоваться скриптом исталлятором описано в руководстве по быстрой установке, которое можно скачать по этой ссылке. Как видно из данного руководства, никаких «особых» познаний в Linux-е от устанавливающего не требуется! Дополнительно на Youtube выложены 2 видео-ролика. Первый ролик показывает процесс установки самой ОС Ubuntu 12.04 LTS. Второй ролик показывает процесс установки всего комплекса программ хотспота с помощью скрипта инсталятора.

Остальные видеоматериалы, доступные в интернете:

  • Процедура обновления программы Easyhotspot:

  • Авторизация Клиента по логину и паролю:

  • Гостевая авторизация кнопкой «Бесплатно» (Клиент не пользуется логинами и паролями):

  • Задержка на время показа рекламы при включении соответствующего режима:

  • Автоматическая авторизация Клиента после просмотра рекламы:

  • Режим, при котором Клиент смотрит рекламу до авторизации, а потом смотрит еще одну после авторизации (только «гости»):

Дополнительные детали – по почте. Альтернативные контакты – на странице «Обо мне».

Кроме того, за отдельную плату, предоставляется услуга по дистанционной установке и настройке сервера хотспота на ваш подготовленный компьютер. Детали о том, что нужно подготовить – в этом руководстве. Стоимость услуги – $10.

Отзывы о работе системы от тех, кто уже использует в работе описанное выше ПО, можно прочесть на этой странице.

У вас все еще остались вопросы, на которые вы так и не нашли ответа? Загляните на страницу FAQ, просмотрите еще целый ряд «вопросов и ответов«, почитайте форум, посвященный модифицированной версии программы Easyhotspot. И этого недостаточно? Напишите мне письмо с вашими вопросами, или просто задайте ваш вопрос в поле «Оставь комментарий» внизу страницы…

Программу можно приобрести либо связавшись со мной по е-мейл, либо же онлайн, если перейти по ссылке:

https://wifi-hotspot.zp.ua/file_sale/

Дополнительные ссылки:

Пинг точки доступа, подключенной к Chillispot

В данном случае речь не только и не столько о пинге. Мне нужно было попасть в веб-интерфейс точки доступа, подключенной к серверу хотспота, на котором запущен и настроен Chillispot. Решение оказалось сравнительно простым.

Часть первая — настройка локальной адресации

Согласно документации на Chillispot, сетевая плата, используемая для подключения точки доступа, в настройке не нуждается. То есть, нужно лишь чтобы система опознала плату и присвоила ей номер (например, eth1). После чего сам Chillispot выполняет все необходимые настройки самостоятельно.

Чтобы добраться к точке доступа понадобилось сделать совсем немного.

Во первых, нужно выбрать подсеть, не используемую ни одним из интерфейсов компьютера. Например, у компьютера два интерфейса (сетевых платы). Допустим, плата eth0 используется для подключения к интернету и имеет адрес 192.168.1.2. А второй сетевой адаптер (eth1) используется для организации хотспота — им управляет Chillispot. По умолчанию, Chillispot присвоит этому интерфейсу адрес 192.168.182.1 (если вы не указали иное значение параметра net в его настройках). Выберем адрес, не относящийся ни к одной из двух указанных подсетей (но из диапазона, используемого для локальных сетей), например, 192.168.123.1. Этот адрес я и присвоил сетевой плате eth1 (той, к которой подключена точка доступа). Для этого в консоли от имени root-а я ввел команду:

ifconfig eth1 inet 192.168.123.1 netmask 255.255.255.0

Вторым делом в подготовке нуждается сама точка доступа. Нужно зайти в ее сетевые настройки (LAN) и присвоить ей статическй сетевой адрес, попадающий в диапазон подсети одной с тем адресом, который мы только что присвоили плате eth1. С учетом адреса eth1, выбранного мной выше, точке доступа нужно присвоить адрес в диапазоне от 192.168.123.2 до 192.168.123.254, и лично я, например, установил 192.168.123.5.

На этом подготовка завершена.

Теперь на компьютере, к которому подключена точка доступа, открываете браузер и вводите адрес точки доступа — 192.168.123.5. Откроется веб-интерфейс управления точкой доступа. Все.

Часть вторая — а снаружи?

Собственно, компьютер выступающий в роли сервера хотспота постоянно подключен к интернету. И  далеко не всегда человек, управляющий этим сервером, находится непосредственно перед ним. Он может находиться в другом месте за сотни или тысячи километров, лишь-бы был доступ к интернету. И в этом случае, для того, чтобы попасть в настройки точки доступа, человек этот вынужден сначала дистанционно подключиться к консоли сервера (по ssh), потом в консоли запустить браузер, и если в ssh настроен форвардинг «иксов», то браузер этот «всплывет» на его компьютере (иначе и не скажешь с поправкой на скорость), и уж потом он сможет подключаться к точке доступа. Главное неудобство — очень медленная скорость, вызванная тем, что «иксы» шифруются и заворачиваются в ssh-туннель.

Но что нам мешает настроить систему так, чтобы в веб-интерфейс настройки точки доступа попадать непосредственно из браузера удаленного компьютера, минуя ssh-подключение? Да ничего! Единственный нюанс, обратиться извне мы можем только к адресу самого сервера хотспота. А на нем уже работает apache, и как следствие, 80-й порт занят. Но и веб интерфейс настройки точки доступа также по умолчанию настроен на работу на 80-м порту. По этому, первым делом, нужно перенастроить точку доступа так, чтобы ее веб-интерфейс работал на порту с другим номером. Я у себя установил значение 8080, и именно такое значение и рассматривается в приведенных ниже командах. IP-адреса оставлены те же, что и в первой половине заметки. Если вы захотите использовать иные значения, откорректируйте приведенные команды самостоятельно.

Итак, в файл правил файервола (имеется ввиду файл «стандартных» правил, поставляемых вместе с программой chillispot) потребовалось добавить всего лишь три строки:

$IPTABLES -A FORWARD -i $EXTIF -d 192.168.123.0/24 -p tcp -j ACCEPT 
$IPTABLES -A FORWARD -i $INTIF -p tcp --source 192.168.123.0/24 -j ACCEPT 
$IPTABLES -t nat -I PREROUTING -p tcp -i $EXTIF --dport 8080 -j DNAT --to-destination 192.168.123.5:8080

Первый нюанс — месторасположение добавленных правил в файле. Я их добавил сразу же после команд установки «умолчательных» значений для всех правил, выполняемых в самом начале скрипта. То есть, СРАЗУ ЖЕ ПОСЛЕ СЛЕДУЮЩИХ СТРОК:

$IPTABLES -P INPUT DROP $IPTABLES -P FORWARD ACCEPT $IPTABLES -P OUTPUT ACCEPT

А теперь чуток поподробней о добавленных строках.

  • Первая строка разрешает принимать на внешнем (подключенном к интернету) интерфейсе все пакеты, которые подлежат переадресации в подсеть 192.168.123.0/24. В данном случае, в правиле указана вся подсеть. При  желании, вы можете ограничить правило, указав один-единственный адрес (адрес самой точки доступа), например, 192.168.123.5, или же уменьшить диапазон адресов, изменив маску (точек доступа ведь может быть больше чем одна), например, вот так — 192.168.123.0/29 (кроме адреса самой сети и широковещательного, эта маска дает всего 6 адресов устройств). В принципе, правило может быть ужесточено, например, добавлением ограничения допуска параметром номера(ов) портов, то есть, допустим, принимать только пакеты поступающие на порт 8080, и т.д. Документация по iptables в таком случае — именно то, что вам нужно сесть и прочитать…
  • Вторая строка разрешает отдавать назад во внешний интерфейс пакеты, поступающие из указанной подсети. Все вышесказанное про диапазоны адресов может быть так же применено и здесь с таким же успехом.
  • Ну и третья строка непосредственно включает переадресацию пакетов, поступающих на порт 8080 внешнего интерфейса по следующему адресу — 192.168.123.5:8080 (то есть, на порт 8080 устройства с адресом 192.168.123.5).

Результат таких действий (естественно, после того, как правила будут задействованы) — при обращении в браузере к адресу сервера с указанием выбранного номера порта (то есть, http://your.server.adres:8080/) вы будете попадать непосредственно на веб-интерфейс точки доступа.

А как же быть, если точек больше одной, спросите вы. С учетом того, что внешний интерфейс у сервера хотспота один, придется использовать следующий (другой) номер порта для переадресации. При этом, порт на котором слушает сама точка доступа, можно использовать все тот же 8080. А вот снаружи мы к ней будем добираться уже через порт 8081. В таком случае нужно будет продублировать всего лишь третью строку из числа добавленных и модифицировать ее таким образом (с учетом того, что, допустим, у второй точки доступа ip-адрес будет 192.168.123.7):

$IPTABLES -t nat -I PREROUTING -p tcp -i $EXTIF --dport 8081 -j DNAT --to-destination 192.168.123.7:8080

Вот и все…

Танцы с перцем!.. Ой, простите, с бубном!..

Один из первых вопросов, который зачастую задают после того, как Chillispot установлен, настроен и работает, звучит так:

— У меня есть необходимость нескольким клиентам присвоить статические ip-адреса. Как это сделать?

Увы, Chillispot сам по себе плохо относится к клиентам со статическими адресами, если они прописаны вручную. То есть, клиент видит, что у него адрес тот, который он написал, видит, что он подключен к тому шлюзу, которым является Chillispot, но вот все его попытки попасть на любую страницу в интернете дают сообщение о том, что сервер не найден. И это действительно так — клиент при этом не авторизован, и доступа в интернет у него нет. А вот страница авторизации клиенту, назначившему себе статический IP саостоятельно, увы, не выдается. И причина здесь в самом Chillispot и его внутренних алгоритмах работы. Ему нужны DHCP-запросы о клентов, ему нужны DNS-запросы от клиентов, без них, увы никак…  Подводя краткий итог — таким методом заставить «подружиться» клиента со статическим IP-адресом и Chillispot не получится.

И что, совсем никак?

Возможность есть. Ее таки предусмотрели сами авторы программы, по всей видимости понимая, что необходимость в статических IP-адресах все-таки периодически возникает. Нюанс лишь в реализации. И если понять механизм процесса, то настроить его потом уже не составит труда…

Итак, постулат №1 — у клиента в настройках протокола TCP-IP все-равно должно быть выставлено все в автомате, то есть — «Получить IP-адрес автоматически» и «Получить адрес DNS-сервера автоматически», даже в том случае, если он хочет работать со статическим IP-адресом.

Постулат №2 — Chillispot не присваивает статические адреса! В том смысле, что «сам не присваивает» — за него это делает сервер RADIUS. Для этого в Chillispot реализована поддержка радиусовского атрибута Framed-IP-Address.

Постулат №3 — RADIUS сам по себе в Chillispot ничего не скажет, пока не получит запрос авторизации. А на этапе подключения клиента к Chillispot от клиента еще не поступало никаких данных, требующихся для этого. И что же тогда Chillispot отправляет в RADIUS как имя клиента? Единственное, что Chillispot успел узнать от клиента  на этапе его подключения, а именно — его MAC-адрес.

Вот мы и добрались до финта (а может быть костыля?…) Chillispot. В конечном итоге, для клиента, который (впоследствии) будет работать со статическим IP-адресом процедура выглядит так:

  1. Клиент подключается к Chillispot.
  2. Chillispot определяет MAC-адрес сетевой платы клиента и вместе с паролем отсылает его на проверку серверу RADIUS.
  3. Если у сервера RADIUS в базе есть запись про клиента с таким MAC-адресом и с таким паролем, то авторизация клиента подтвеждается и Chillispot получает утвердительный ответ — Access:Accept.
  4. И кроме того, если в базе сервера RADIUS для этого клиента (с данным MAC-адресом) прописано конкретное значение IP-адреса (атрибут Framed-IP-Address), то тогда это значение также отсылается RADIUS-ом в утвердительном ответе контроллеру Chillispot.
  5. Chillispot, получив от RADIUS конкретное значение IP-адреса, присваивает его клиенту и выпускает его в интернет. Все, на этом авторизация клиента завершена, никаких окон с логинами/паролями ему не предлагается — в этом уже нет нужды.

Вот так все просто?

— Да.

А причем тут костыли?

— Нюансов два. Во первых в качестве имени клиента используется МАС-адрес его сетевой платы, который легко может быть подделан. А во вторых,  пароль, используемый при авторизации по МАС-адресу — он задается в настройках Chillispot, и он — один-единственный для всех, кто будет авторизоваться по МАС-у… Ну а про костыли я сказал, так как предполагаю, что этот финт (авторизация по МАС-у доделывался авторами уже потом, как решение проблемы когда и DHCP нужен, и адрес хочется иметь статический..

Ну да ладно. Наша задача теперь настроить Chillispot и RADIUS для того, чтобы задействовать эту возможность. Начнем с Chillispot. Собственно, все его настройки расположены в одном единственном файле — /etc/chilli.conf. Этот файл и нужно открыть в редакторе. Естественно, или залогинившись перед этим как root, или же через sudo (чтобы потом прав хватило для сохранения изменений). В этом файле (с учетом того, что, как было сказано в самом начале, Chillispot уже настроен и работает в составе хотспота) нас сейчас интересуют только те параметры, которые относятся именно к реализации использования статических IP адресов. Если же у вас есть нужда настроить Chillispot «с нуля», то тогда, добро пожаловать — читайте мою другую заметку о настройке этой службы. Но вернемся к нашим параметрам.

Во первых, при реализации возможности предоставления статических адресов, сеть, формируемую службой Chillispot (по умолчанию, 192.168.182.0/24) разделить на две части — одну для клиентов со статическими адресами, а вторую для тех, кому адрес будет выдаваться динамически. делается это с помощью двуп параметов — statip и dynip. При этом нужно не забывать о том самом значении параметра net, который задает всю сеть, создаваемую контроллером Chillispot для обслуживания клиентов.

statip —  определяет пул статических адресов, предоставляемых клиентам.

dynip —  определяет пул динамических адресов, предоставляемых клиентам.

Учтите, что эти оба поддиапазона обязательно должны во первых не перекрываться, а во вторых, умещаться в диапазон адресов сети, обслуживаемой Chillispot. Для случая использования сети 192.168.182.0/24 (значение, используемое для параметра net в настройках Chillispot по умолчанию), корректно получается поделить ее только лишь пополам. Точнее, для статической «половины» можно конечно указать и меньший диапазон допустимых адресов, но это все равно не позволит добавить свободных адресов «половине» динамической, увы. Таким образом, настройки сети и подсетей должны выглядеть следующим образом:

net 192.168.182.0/24

statip 192.168.182.0/25

dynip 192.168.182.128/25

При этом весь диапазон поделен ровно на две половины. Первая из них (в диапазоне от 192.168.182.2 и до 192.168.182.126) предоставляется для клиентов со статическими адресами, а вторая (от 192.168.182.128 до 192.168.182.254) — для тех, кому достанется динамический адрес. Если динамических адресов вам мало, то тогда можно попробовать следующий вариант настроек дележа сети:

net 192.168.182.0/23

statip 192.168.182.0/25

dynip 192.168.183.0/24

В таком случае для динамических адресов будет предоставлен пул в диапазоне от 192.168.183.1 до 192.168.183.254, а для статических, как и в первом варианте — с 192.168.182.2 по 192.168.182.126.

Далее. Необходимо включить авторизацию по МАС-адресам. Для этого в файле настроек нужно найти и раскомментировать (удалить # в начале строки) следующий параметр:

macauth — при включении этого параметра Chillispot при подключении к хотспоту каждого нового клиента первым делом будет пытаться авторизовать его на основании его МАС-адреса. То есть, допустим, у сетевой платы клиента МАС-адрес равен 00-11-22-33-44-55. При подключении этой сетевой платы серверу RADIUS будет отправляться запрос на авторизацию клиента, User-name которого будет составлен из значения параметра macsuffix (см. ниже) и MAC-адреса сетевой платы (в данном примере — 00-11-22-33-44-55). В качестве пароля при авторизации будет использовано значение параметра macpasswd (см. ниже). Не стоит бояться, что использование данного параметра помешает «нормальной» работе хотспота — клиентам, не прошедшим МАС-авторизацию, будет предложена «обычная» авторизация с помощью UAM (вебстраницы с возможностью ввода логина и пароля).

macsuffix — суффикс, добавляемый к реальному МАС-адресу сетевого адаптера. Именно итоговое полученное значение отсылается при авторизации в сервере RADIUS в качестве имени клиента. Параметр позволяет несколько повысить безопасность системы, добавляя некую с позволениря сказать «интригу» к имени. Если планируется использование, параметр нужно раскомментировать и указать свое собственное значение. Используйте буквы только латинского алфавита — для RADIUS-а русские буквы — пустой звук. Суффикс добавляется в конец МАС-адреса. Например, если вы указали суффикс «test», а МАС-адрес сетевой платы был как и в предыдущем примере 00-11-22-33-44-55, то серверу RADIUS будет послан запрос на авторизацию клиента с User-name «00-11-22-33-44-55test». Если вы суффикс использовать не желаете, то оставьте параметр закомментированным, и тогда на авторизацию RADIUS-у в качестве имени клиента будет отсылаться только сам МАС-адрес.

macpasswd — пароль, который служба Chillispot отсылает серверу RADIUS при попытке МАС-авторизации. Пароль, как говорится, «один на всех» — одинаков для любого пытающегося авторизоваться поМАС-адресу клиента. По умолчанию значение параметра весьма тривиально — «password». Не поленитесь, и придумайте свой собственный пароль! Чтобы использовать, параметр нужно раскомментировать и указать свое собственное значение. Используйте буквы только латинского алфавита — для RADIUS-а русские буквы — пустой звук.

Все. Как только вы настроили все вышеперечисленные параметры, ваш Chillispot готов к МАС-авторизации клиентов. Но это еще не значит, что к этому же готов и RADIUS…

Чтобы наш процесс завершился успехом, от сервера RADIUS требуется по сути выполнить всего лишь два  требования. Во первых, у него в базе должен быть прописан клиент с именем равным МАС-адресу того компьютера, которому мы хотим присвоить фиксированный IP-адрес. В случае, если у Chillispot включено еще и использование macsuffix, то имя клиента в базе должно быть «МАС-адрес + значение параметра macsuffix». Данному клиенту (в его учетной записи RADIUS-а) должен быть указан пароль, который был настроен как значение параметра macpasswd в настройках Chillispot.  А во вторых, для данного клиента в его учетной записи в сервере RADIUS должно быть также указано значение параметра (атрибут) Framed-IP-Address.

Рассмотрим на живом примере. Итак, у нас есть Chillispot, к которому мы будем подключать компьютер. У Chillispot пул статических адресов задан значением параметра statip, равным 192.168.182.0/25 (то есть, адреса от 192.168.182.2 и до 192.168.182.126). Сетевая плата компьютера имеет МАС-адрес равный 00-11-22-33-44-55. Мы хотим, чтобы после авторизации компьютер всегда получал адрес 192.168.182.5 (естественно, что выбраный нами адрес должен попадать в диапазон доступных статических адресов, приведенный ранее). У Chillispot включено использование суффикса (параметр macsuffix раскомментирован, и ему задано значение test), а для МАС-авторизации задан следующий пароль — super-puper-pass (указан как значение параметра macpasswd). Самый простой способ задать пользователя — вписать его в файл users, настроек RADIUS-а. Если все, что мы хотим задать для данного пользователя, это только взможность получить фиксированый адрес (ну и, естественно, выйти в интернет), то в файл users нужно добавитьвсегьо лишь две строки:

00-11-22-33-44-55test      Cleartext-Password := "super-puper-pass"
       Framed-IP-Address = 192.168.182.5

Как видите, в первой строке мы указали, что у нас будет клиент (пользователь) с логином 00-11-22-33-44-55test (то есть, как и было сказано выше — суммой МАС-адреса и суффикса) и паролем super-puper-pass. А во второй строке мы задаем для данного пользователя параметр (атрибут) Framed-IP-Address, равный тому самому IP-адресу (192.168.182.5), который мы хотим присваивать этому пользователю при каждом его подключении.

Если же вы учетные записи клиентов вашего хотспота храните в базе данных (например, MySQL), то создания указанного клиента нужно внести записи в две таблицы. Первую — в таблицу radcheck

id	username	attribute	op	value
1	00-11-22-33-44-55test	User-Password	:=	super-puper-pass

Эта первая запись указывает, что у нас в системе будет пользователь 00-11-22-33-44-55test с паролем super-puper-pass. А вторую запись нужно добавить в таблицу radreply

id	username	attribute	op	value
1	00-11-22-33-44-55test	Framed-IP-Address	:=	192.168.182.5

Это как раз запись, указывающая, какой IP-адрес (192.168.182.5) присвоить этому клиенту при авторизации.

После того, как изменения внесены и сохранены, перезапускаем RADIUS, перезапускаем Chillispot и пробуем подключить пользователя. Все должно пройти успешно. Если вы настраивали RADIUS таким образом, чтобы он вел лог авторизации, то в этом логе при подключении нашего клиента появится строка наподобие такой:

Sun Jul 11 11:01:49 2010 : Auth: Login OK: [00-11-22-33-44-55test/super-puper-pass] (from client wifi-hotspot port 1 cli 00-11-22-33-44-55)

Причинами неудачи авторизации данного клиента могут быть лишь несответствие реальных данных введенным параметрам, а также, ошибки типа «опечатки» при вводе параметров, в результате которых параметры вписанные в настройки RADIUS-а и Chillispot различаются.

Если же клиент авторизуется, но ему присваивается не тот фиксированный адрес, который мы указали, а адрес из диапазона динамических, то причина может быть одна — неверное деление диапазона сети на поддиапазоны (они пеекрываются). Использование двух вариантов распределения приведенное выше гарантиовано дает положительный результат. Если же вы устанавливаете собственные значения параметров , то проверьте их на каком-нибудь IP-калькуляторе, коих в сети превеликое множество (например, вот по этой ссылке).

Дополнительные ссылки:
Заметка о настройке контроллера доступа Chillispot на компьютере под управлением ОС Linux

Все мо заметки о хотспотах

Прошивка роутера D’link DIR-320 «под хотспот»

Данная инструкция описывает процесс подготовки роутера D’link DIR-320 для работы в составе хотспота c ВНЕШНИМ сервером авторизации и учета (например, лично я настраивал роутер для подключения к системе использующей сервер FreeRADIUS и биллинговую программу Easyhotspot).  Причем, использование нескольких таких роутеров, настроенных на взаимодействие с одним сервером биллинга (например, с той же самой программой Easyhotsot), позволит организовать целую сеть хотспотов и «накрыть» ей весьма обширную площадь, или же обслуживать целый комплекс помещений. Для работы в составе хотспота в роутере должна быть установлена, настроена и запущена служба (сервер) контроллера доступа — Chillispot. В оригинальной прошивке от D’link такой службы нет. По этому, первым делом в роутер необходимо прошить альтернативное ПО, содержащее данную службу. Одним из вариантов такого альтернативного ПО, представленного в интернете, является прошивка от dd-wrt. Вся процедура состоит из следующих этапов:

  1. Выбор и загрузка прошивки
  2. Перепрошивка роутера
  3. Настройка роутера

Итак, приступим.

1. Выбор и загрузка прошивки

Для начала нужно скачать прошивку. Для этого нужно перейти на сайт dd-wrt. К каждой модели роутера, включенной в базу поддерживаемого оборудования, можно скачать несколько разных версий прошивок. Их отличие – в составе включенных в них служб и сервисов. По этому, первым делом нужно определиться с ответом на вопрос – какая из версий прошивки нам необходима. Главным условием в данном случае (для работы роутера в составе хотспота) является наличие в прошивке службы Chillispot. По этому, сначала открываем страницу http://www.dd-wrt.com/wiki/index.php/What_is_DD-WRT%3F#File_Versions На этой странице приведена таблица, показывающая, какие службы включены в каждую из версий прошивки. Ниже приведен фрагмент этой таблицы.

Рис. 1 — Версии файлов

В этой таблице смотрим, напротив каких версий прошивок, перечисленных вверху, в строке Chillispot проставлена «точка». Как видно, в приведенном фрагменте таблицы в прошивке Std присутствует Chillispot, вот ее и будем использовать. Теперь перейдем непосредственно к загрузке. Прошивки на сайте dd-wrt отличаются не только версиями, но также и оборудованием на которое они рассчитаны. То есть, нам нужно загрузить прошивку именно для роутера D’link DIR-320. Для этого переходим на страницу: http://www.dd-wrt.com/site/support/router-database На этой странице нам предлагается в строке поиска ввести первые три буквы или цифры из названия или номера модели роутера.

Рис. 2 — Стартовая страница базы моделей роутеров

Вводим «dir». Получаем вот такой список моделей, в названиях которых присутствует «dir».

Рис. 3 Список моделей, в названии которых присутствует «dir»

В нем нам нужно выбрать именно наш роутер. Щелкаем по ссылке нашей модели. Откроется страница со ссылками на файлы прошивок для нашей модели.

Рис.4 — Список различных версий прошивок для выбранной модели

На данной странице нужно обратить внимание на три вещи. Во первых, вверху приводится ссылка на инструкцию по перепрошивке роутера. Для рассматриваемого в данной заметке роутера D’link DIR-320 процедура смены прошивки описана ниже, и указанная ссылка ценности не представляет. Но если кто-то будет перешивать другой роутер, ему приведенная ниже инструкция не поможет, и тогда придется читать ту, которую предлагает сайт dd-wrt. Во вторых,  на странице присутствует выпадающий список с различными по дате версиями (релизами) ядра прошивки. В этом списке по умолчанию указан пункт, подписанный как «recommended». Раз рекомендуют, значит рекомендуют, его и будем использовать (а точнее — просто не будем трогать данный список). И последнее — это расположенный в нижней части список тех самых версий функционального наполнения прошивки. Как уже было сказано ранее, нам подходит версия прошивки Standard, а точнее даже сказать — Standard Generic. Вот по ссылке именно этой версии и щелкнем мышью.

Рис. 5 — Сохранение файла прошивки

Браузер предложит сохранить файл прошивки на диск вашего компьютера. Соглашаемся и сохраняем файл в произвольно выбранную папку. Лично я для этого например, создал у себя на компьютере папку dd-wrt и сохранил файл прошивки именно в нее. В результате всех вышеописанных манипуляций, у меня на компьютере на диске C:\ появилась папка dd-wrt, а в ней файл с именем dd-wrt.v24_std_generic.bin. На этом первая часть процедуры, а именно, «выбор и загрузка прошивки» завершена. Переходим ко второй.

2. Перепрошивка роутера

ВАЖНО! Приведенная ниже инструкция по перепрошивке была написана (по меркам IT-индустрии) очень давно! Описанный ниже механизм перепрошивки применительно к прошивкам от DD-WRT — устарел! Для большинства моделей роутеров на сайте DD-WRT предлагаются уже файлы, называющиеся factory-to-ddwrt.bin, которые могут быть прошиты «стандартным» способом — через вебинтерфейс роутера! В результате, сама процедура перепрошивки теперь ничем не отличается от той, которую изготовитель описал в инструкции к роутеру, за исключением небольшого нюанса. А сам нюанс заключается в том, что вместо заводской прошивки вы должны будете выбрать файл factory-to-ddwrt.bin, который скачали с сайта DD-WRT после того, как указали вашу модель роутера. 

Данная инструкция по перепрошивке предполагает, что на вашем компьютере установлена операционная система Windows XP. Также, в компьютере присутствует сетевая плата, и в системе установлены драйвера для нее. В основе процедуры перепрошивки лежит использование встроенного бутлоадера роутера, который в первую секунду после включения запускает ftp-сервер и слушает подключений на адресе 192.168.0.1. При этом прошивающий должен «угадать» тот момент, когда инициировать обмен с роутером и  начать «вкидывание» прошивки в него. В принципе такой «ручной» метод со временем, при определенном навыке позволяет получать положительные результаты со сравнительно небольшого числа попыток. Однако, на то ж мы и люди, чтобы «возложить труд на плечи машин»!  Поэтому, был написан (не мной) небольшой командный файл, который просто по кругу повторяет одно и то же — пытается найти этот самый ftp-сервер по адресу 192.168.0.1, и если тот найден, то инициирует загрузку в него файла прошивки с определенным именем (об этом далее). С теорией покончено и теперь перейдем непосредственно к процедуре перепрошивки. Первым делом нужно скачать тот самый командный файл. Взять его можно, например, у меня на ftp. Вот ссылка:  ftp://wifi-hotspot.zp.ua/For%20PC/drivers/router/dlink-dir320/flashing.zip После того, как архив получен, находящийся в нем единственный файл (flashing.cmd) нужно распаковать в ту же самую папку, в которую мы ранее сохранили файл с прошивкой — C:\dd-wrt\. Далее, скачанный нами ранее и хранящийся в этой папке файл прошивки — dd-wrt.v24_std_generic.bin НЕОБХОДИМО переименовать в firmware.bin. Это требование связано с тем, что используемый нами командный файл при запуске будет пытаться загрузить в роутер файл прошивки именно с таким именем — firmware.bin — и никаким другим! Обязательно переименуйте файл! Следующий шаг — сетевой плате компьютера, к которой будем подключать роутер, НУЖНО присвоить фиксированный IP-адрес — 192.168.0.2. Если быть более точным, то даже не именно 192.168.0.2, а любой в диапазоне от 192.168.0.2 до 192.168.0.254 (важно, чтобы он был в одной подсети с адресом ftp-сервера роутера в момент его включения). Также, нужно указать маску подсети 255.255.255.0 и кроме того, в ряде источников пишут, что необходимо еще и указывать адрес шлюза как 192.168.0.1. Однако, как показывает практика, указание шлюза в данном случае не является обязательным, и может быть опущено. Итак, открываем папку «Сетевые подключения«, в ней щелкаем правой кнопкой мыши на значке своей сетевой платы (по умолчанию он обычно подписан как «Подключение по локальной сети«), в контекстном меню выбираем пункт «Свойства«, в открывшемся окне находим в списке параметров настройку протокола TCP-IP и выставляем там рекомендованные значения, как показано на рисунке:

Рис. 6 — Настройка параметров протокола TCP-IP сетевой платы

После того, как файл переименован, и свойства сетевой платы настроены, прилагающимся Ethernet-кабелем подключаем роутер к сетевой плате компьютера. Обращаю ваше внимание на два момента. Во первых, кабель от компьютера ДОЛЖЕН быть подключен в одно из гнезд LAN на задней панели роутера (любой из LAN1-LAN4) и ни в коем случае не в гнездо INTERNET (WAN)! А во вторых, на данном этапе (пока что) питание роутера ДОЛЖНО быть отключено — блок питания ДОЛЖЕН быть либо отключен из сетевой розетки, либо отключен от гнезда питания роутера! Его мы включим потом, «когда попросят»… А пока что запускаем консоль. Для этого щелкнем кнопку «Пуск» и выберем пункт меню «Выполнить»:

Рис.7 — Пункт «Выполнить» главного меню Windows

Откроется окно «Запуск программы». В поле «Открыть» введем команду cmd и нажмем Enter (или щелкнем мышью кнопку «ОК»).

Рис. 8 — Окно ввода команды

Откроется консоль командного интерпретатора. Первым делом перейдем в папку с прошивкой и «прошивальщиком». Для этого введем команду (если вы сохраняли файлы в папку с другим именем, укажите в данной команде именно его):

cd c:\dd-wrt

Оказавшись в требуемой папке вводим команду на запуск командного файла «прошивальщика»:

flashing.cmd

Запустится командный файл. При этом он выведет следующее сообщение:

Рис. 9 — Чтобы запустить»прошивальщик», нажмите любую клавишу…

Как и рекомендует запущенная программа, нажмем «любую» клавишу. Единственное примечание: с точки зрения Windows «любой» может быть далеко не каждая клавиша. По большому счету в данном случае в качестве «любой» хорошо подойдет клавиша Enter. Вот ее и нажмем…

Рис. 10 — «Прошивальщик» готов и ждет роутера…

И вот только теперь пришло время наконец-то включить наш роутер! Включаем то, что было отключено (либо блок питания в розетку, либо кабель от блока питания в соответствующее гнездо роутера). Начнется загрузка прошивки в роутер:

Рис. 11 — Загрузка файла прошивки в роутер

Через некоторое время, после того, как файл прошивки будет загружен в роутер, появится следующее сообщение:

Рис. 12 — Перепрошивка пошла

Оно во первых, гласит, что файл прошивки успешно загружен в роутер, и начался непосредственно сам процесс перепрошивки. Кроме того, вам предлагается

  • обождать пару минут, пока перепрошивка завершится и роутер перезагрузится,
  • в свойствах сетевой платы, которой вы подключены к роутеру, снова включить DHCP-клиент (см. рис. 6 выше — там нужно выбрать вариант «Получить адрес автоматически»),
  • к веб-интерфейсу роутера после перепрошивки вы сможете обратиться в браузере по адресу http://192.168.1.1/

Измените настройки сетевого адаптера и обождите рекомендованное время.  Косвенной индикацией того, что все еще идет перепрошивка, и обращаться к роутеру бессмыслено, является сообщение Windows о том, что сетевая плата получает адрес:

Рис. 13 — Получение сетевой платой IP-адреса

После того, как указанное сообщение пропадет, и сетевая плата получит адрес, можно приступать к настройке. Перепрошивка роутера на этом закончена…

3. Настройка роутера

Небольшое примечание — здесь не планируется рассмотрение всех всевозможных настроек прошивки dd-wrt (поверьте, их очень много). Также практически не рассматривается настройка подключения роутера к интернету. Основной упор делается только на настройку тех параметров, которые непосредственно или косвенно относятся к работе роутера в составе хотспота.

Итак, приступаем к настройке. Предполагается, что ваш компьютер по прежнему подключен кабелем в одно из гнезд LAN1-LAN4 роутера, а в свойствах протокола TCP-IP выставлено, как и рекомендовано выше, «все в автомате» (включен DHCP-клиент). Запускаем браузер (любой, который вам нравится) и в нем вводим следующий адрес: http://192.168.1.1/ Откроется веб-интерфейс роутера.  При самом первом запуске, выполняемом сразу же после перепрошивки роутера програмным обеспечением от dd-wrt, вам будет предложено указать свои собственные логин и пароль пользователя, которые вы в дальнейшем будете использовать для входа в настройки роутера (защита от «чужих», однако).

Рис. 14 — Задание логина и пароля для доступа к администрированию роутера

Введите свои собственные значения.  В верхней строке — логин, в двух последующих — пароль (один и тот же!). Единственное замечание — при вводе используйте только буквы латинского алфавита и цифры, и ни в коем случае не используйте кириллицу! Да, и еще одно — не ленитесь, придумайте что-то пооригинальнее, чем банальные «admin/admin»…

После того, как вы зададите свои логин и пароль для доступа к настройкам роутера, откроется его информационная страница. Выглядит она таким образом:

Рис. 15 — Страница информации о текущем состоянии роутера

На этой странице представлена краткая сводка о текущем состоянии роутера.  Полюбовавшись на информацию, идем настраивать.

Так как роутер — это устройство доступа в интернет, первым делом нужно настроить подключение самого интернета к роутеру. Для этого в верхнем меню выбираем пункт Setup, а во второй строке меню нас интересует пункт Basic Setup. Внешний вид открывшегося меню представлен на рис. 16.

Рис. 16 — Страница настройки WAN и LAN интерфейсов

Как я уже говорил ранее, описывать настройку подключения к интернету я тут не планировал. Она в первую очередь зависит от вашего метода подключения к интернету и определяется его настройками. Информацию о подключении вам нужно получить от вашего провайдера. После этого настроить параметры WAN-интерфейса роутера. Единственное, что я порекомендовал бы — по возможности использовать все-таки статический IP-адрес, но это не догма.

Мы же перейдем к тем параметрам, настройка которых необходима для работы роутера в составе хотспота.

Первым делом настроим Wi-Fi. Собственно, наша задача в данном случае предоставить возможность подключиться к хотспоту как можно большему числу клиентов. Для этого мы

  • дадим беспроводной сети какое-нибудь соответствующее имя (SSID),
  • включим его (имени) открытое вещание,
  • включим поддержку всех поддерживаемых режимов (и B и G),
  • выключим шифрование данных в Wi-Fi,
  • поднимем мощность передатчика.

Итак, в верхнем меню выбираем пункт Wireless а во второй строке — Basic Settings. Внешний вид его показан на рис. 17 ниже:

Рис. 17 — Страница основных настроек Wi-Fi

В этом меню реально изменить стоит только само имя беспроводной сети. На указанном рисунке как раз это и показано — имя сети изменено на hotspot. В выборе имени вы абсолютно свободны, можете, например, использовать имя вашего заведения, единственное ограничение — не использовать в имени буквы кириллицы. Остальные параметры не нуждаются в корректировке по сравнению со значениями, установленными в прошивке по умолчанию. Режим Wi-Fi (Mode) выбран как AP (точка доступа), что собственно нам и нужно. Поддержка стандартов Wi-Fi сетей (Network Mode) установлена как Mixed, что подразумевает поддержку сетей обоих стандартов — и B, и G. Режим открытого вещания имени сети (Broadcast) — включен (установлен как Enable), что тоже нам подходит.  Единственное, что может быть еще стоит изменить в случае, если точка устанавливается в месте с высокой плотностью Wi-Fi сетей (много соседей с беспроводным интернетом), так это сменить канал (Channel) с фиксированного значения на Auto — в этом случае роутер попытается сам найти такой канал, на котором меньше всего помех от «соседей».

После того, как в настройки внесены необходимые изменения, щелкните кнопку Save внизу страницы.

Теперь проверим, что отключено шифрование Wi-Fi. Для этого в верхней строке меню выберем пункт Wireless, а в нижней — Wireless Security. Откроется следующее окно:

Рис. 18 — Настройка шифрования

В нем сразу после прошивки (по умолчанию) шифрование (Security Mode) выключено (Disabled). Убеждаемся в этом и переходи к следующим настройкам. Если же в указанном поле выбрано иное значение, поменяйте его на Disabled и потом щелкните кнопку Save внизу страницы.

И теперь перейдем к меню, в котором мы сможем изменить мощность передатчика. Для этого в верхней строке меню выберите Wireless, а в нижней — Advanced Settings.  Вид меню показан на рисунке ниже:

Рис. 19 — Расширенные настройки Wi-Fi (поднимаем мощность)

В данном меню нас интересует единственный пункт TX Power (на рис. 19 он практически в самом низу). По умолчанию в нем после перепрошивки указано значение 71 (мВт). Максимально возможное — 250 мВт. Выставьте, как говорится, «по вкусу». При этом следует учесть пару обстоятельств. Во первых, естественно, чем выше мощность, тем шире зона, в которой виден ваш хотспот (но выше и нагрев устройства). А с другой стороны, например, в Украине, законодательно разрешена эксплуатация Wi-Fi оборудования без дополнительной регистрации только в случае, если его выходная мощность не превышает 100 мВт. Сколько выставить в конечном итоге — решать вам. После того, ка установите выбранное значение, щелкните сначала кнопку Save а затем — кнопку Apply Settings внизу страницы.

С настройками параметров именно Wi-fi  покончено. Теперь я предлагаю настроить возможность доступа к администрированию роутера извне (с WAN стороны). Данное предложение нуждается в пояснении.

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

Для того, чтобы открыть доступ извне, выполните следующее. В меню выберите Administration, а во второй строке — Management. Откроется следующее меню:

Рис. 20 — Настройка доступа к управлению извне

Обращаю ваше внимание на то, что в данном меню в первую очередь вы сможете в случае необходимости изменить ваши логин и пароль для доступа к администрированию роутера. Эти настройки расположены в самой верхней части экрана в разделе Router Password.

Но для выполнения моей рекомендации по включению доступа извне нас сейчас интересует третий раздел настроек, представленный на данной странице — Remote Access. В этом разделе есть следующие пункты:

  • Web GUI Management — разрешает (Enaled) или запрещает (Disabled) доступ извне к веб интерфейсу конфигурирования роутера. По умолчанию доступ запрещен (Disabled), чтобы включить, нужно установить «птичку» в поле Enaled.
  • Use HTTPS — При установке галочки в данном чекбоксе, доступ к веб интерфейсу будет осуществляться с помощью протокола https, что включит шифрование и повысит безопасность соединения.
  • Web GUI Port — номер порта (в диапазоне от 0 до 65535) на котором будет открыт доступ и запущен веб интерфейс для доступа к настройкам. По умолчанию в поле указано значение 8080. Если он не мешает никаким другим службам, оставьте как есть.
  • SSH Management — разрешает (Enaled) или запрещает (Disabled) доступ извне к SSH консоли роутера. По умолчанию доступ запрещен (Disabled), чтобы включить, нужно установить «птичку» в поле Enaled. Дополнительное примечание по SSH-доступу — по умолчанию данная настройка не активна совсем, так как сразу после установки встроенный в роутер сервер SSH остановлен. Если же вы хотите управлять роутером именно по SSH, то сначала нужно включить (запустить) сам сервер SSH (для этого в меню Services, вторая строка меню — Services, параметр Secure Shell нужно установить как Enaled), а уже потом в этом меню разрешать доступ по SSH извне.
  • Telnet Management — разрешает (Enaled) или запрещает (Disabled) доступ извне к консоли роутера по протоколу telnet. По умолчанию доступ запрещен (Disabled), чтобы включить, нужно установить «птичку» в поле Enaled.
  • Allow Any Remote IP — разрешает (Enaled) или запрещает (Disabled) доступ извне с любого IP-адреса. По умолчанию параметр включен — войти можно с любого адреса. С целью повышения безопасности вы можете ограничить возможность доступа и указать только определенный адрес или диапазон адресов, доступ с которых будет разрешен, а остальным в доступе будет сразу же отказано, даже без проверки логина и пароля. Для этого установите параметр как Disabled, после чего в меню появится следующий параметр:
  • Allowed Remote IP Range — в данном поле вам нужно указать диапазон адресов, с которых разрешен доступ к администрированию роутера (учтите, что эта настройка ограничивает доступ по любому из рассмотренных выше протоколов). В первых четырех полях указывается стартовый адрес диапазона, а в поле to — последний октет  последнего адреса диапазона. Если вы хотите разрешить доступ только с одного единственного адреса, укажите в поле to такое же значение, как и в последнем октете стартового адреса. То есть, для доступа только с адреса 192.168.1.10 укажите значения параметра как 192 / 168 / 1 / 10 to 10.

После того, ка установите выбранные значения для требуемых параметров, щелкните сначала кнопку Save а затем — кнопку Apply Settings внизу страницы.

И вот наконец мы добрались непосредственно до Chillispot.

Первым делом его нужно включить. Для этого в верхней строке меню выбираем пункт Services, а во второй — Hotspot.  Откроется следущее меню:

Рис. 21 — Включение службы Chillispot

В первую очередь в нем  нужно включить Chillispot. Для этого напротив параметра, который именно так и называется (Chillispot), нужно поставить птичку в поле Enaled. Обращаю ваше внимание, что службы Sputnik и Wifidog включать не нужно ни в коем случае (оставьте им значение Disabled). После того, как поставлена «птичка», включающая Chillispot, появляется окно с полями для ввода его параметров.

Рис. 22 — Настройки контроллера доступа Chillispot

Они располагаются на той же странице, но ниже.  Теперь о самих параметрах по порядку.

  • Separate Wifi From LAN Bridge — Позволяет отключить интерфейс Wi-Fi от интерфейса LAN роутера. После этого Wi-Fi-подсеть будет отделена от подсети LAN, что позволит например, офисные компьютеры подключить в гнезда LAN1-LAN4, а на Wi-Fi организовать публичный хотспот и эти подсети будут разделены. Клиенты хотспота не смогут подключиться к компьютерам вашей офисной сети. Единственный нюанс — по сравнению с инструкцией, приведенной в Wiki dd-wrt, мне пришлось изменить значение параметра DHCP Interface, расположенного среди прочих параметров настройки Chillispot. В инструкции предлагают оставить его в значении LAN. Но в таком случае мой роутер поднимал службу Chillispot на гнездах LAN1-LAN4, а при подключении к Wi-Fi ноутбук наотрез оказывался получать какой-бы-то-ни-было  IP-адрес и ходить в интернет. Пришлось зайти в консоль роутера и командой ifconfig посмотреть, у которого из интерфейсов роутера MAC-адрес тот, который в настройках  указан для Wi-Fi интерфейса. Оказалось, что в моем случае это eth1. И вот именно после того, как параметру DHCP Interface был указан именно eth1, роутер наконец-то заработал именно так как и требовалось — на гнездах LAN1-LAN4 осталась сеть офиса, а Wi-Fi начал корректно обслуживать хотспот.
  • Primary Radius Server IP/DNS — IP-адрес (1-го) сервера RADIUS, у которого Chillispot запрашивает данные при авторизации клиентов.  В это поле нужно вписать именно IP-адрес,все мои попытки вписать туде доменное имя сервера RADIUS успехом не увенчались.
  • Backup Radius Server IP/DNS — IP-адрес (2-го) сервера RADIUS. То же самое замечание — никаких доменных имен, только IP-адрес.
  • DNS IP IP-адрес сервера DNS. Укажите IP-адрес сервера DNS той сети, к которой роутер подключен WAN-интерфейсом.
  • Remote Network (192.168.182.0/24) — данный параметр на самом деле определяет параметры подсети для клиентов хотспота (которая вроде как по «нормальной» логике должна была бы называться local, но оставим это на совести авторов прошивки).  При указанном значении, выделенном красным цветом, (а оно является значением по умолчанию) сам Chillispot будет виден клиентам хотспота как шлюз с адресом 192.168.182.1, а самим клиентам при подключении будут предоставляться адреса в диапазоне от 192.168.182.2 до 192.168.182.254. Параметр этот рекомендуется не менять без особой нужды.
  • Redirect URL — полный адрес страницы авторизации UAM (Universal Authorisation Metod). В адресе должен быть указан IP сервера, где располагается страница, а не его доменное имя. В адресе также ОБЯЗАТЕЛЬНО должнен быть указан протокол, по которому происходит бращение к данной странице (http или https). Пример правильной записи адреса страницы авторизации — https://192.168.1.1/cgi-bin/hotspotlogin.cgi. (В данном примере как раз используется https-протокол, что означает использование шифрования во время обмена данными со страницей авторизации и дополнительную защиту от «подслушивания» логина и пароля).
  • Shared Key — пароль, который Chillispot использует при обмене с RADIUS-сервером. Данный параметр определяется настройкой сервера RADIUS. В структуре взаимсвязей хотспота служба Chillispot выступает для сервера RADIUS клиентом, запрашивающим информацию об авторизации. По этому настройки позволяющие различным контроллерам доступа взаимодействовать с RADIUS-ом он хранит у себя в файле  clients.conf. В приведенном далее примере записи файла clients.conf параметр, обозначающий пароль, которым Chillispot будет авторизоваться у сервера RADIUS называется как secret.
  • Radius NAS ID — идентификатор данного контоллера доступа у сервера RADIUS. В приведенном ниже примере записи файла clients.conf аналогичный параметр у сервера RADIUS называется как shortname.
  • UAM secret — пароль, который Chillispot использует в своем обмене данными со страницей авторизаци (hotspotlogin.cgi). В этом поле необхдимо указать такой же самый пароль, как тот, который указан у страницы авторизации. В противном случае при авторизации клиентов хотспота всегда будет происходить отказ в допуске их в интернет. Будьте внимательны при вводе данного пароля.
  • UAM Any DNS — разрешение клиентам хотспота использовать любые сервера DNS, а не те, которые предлагаются самим хотспотом. В некоторых случаях включение этого параметра позволит клиентам избежать некоторых проблем, связанных с необходимостью изменения адресов серверов DNS, настроенных в их компьютерах.
  • UAM allowed — адреса (отдельные или целые подсети), доступ к которым клиентам хотспота разрешен без авторизации.
  • MACauth — разрешает (Enaled) или запрещает (Disabled) автоизацию клиентов по MAC-адресам. Если вы хотите каким-то клиентам разрешить авторизоваться по MAC-адресу, нужно указать их. Однако, ввиду того что MAC-адрес может быть легко подменен (подделан), в целях безопасности не рекомендуется использовать такой метод в публичных хотспотах. Подробнее о механизме авторизации по mac-у в chillispot читайте в заметке «Танцы с перцем!.. Ой, простите, с бубном!..«.

После того, как установите необходимые значения для всех параметров, щелкните сначала кнопку Save а затем — кнопку Apply Settings внизу страницы. На этом настройка роутера D’Link DIR-320 для работы в составе хотспота в режиме контроллера доступа, использующего внешний сервер RADIUS, завершена. После этого роутер рекомендуется перезагрузить аппаратно (выключить из питающей сети, а потом включить снова).

И напоследок, пример записи о контроллере доступа (клиенте) в файле настроек сервера RADIUS (в файле clients.conf):

client 192.168.1.30 {
        secret      = test_pass
        shortname   = hotspot
        nastype     = other
}

….

Дополнительные настройки для возможности приема команды принудительного отключения

Chillispot, как и положено NAS, позволяет принимать от сервера RADIUS команду принудительного отключения клиентов от интернета. Для того,  во первых, нужно указать программе Chillispot слушать команду принудительного отключения на порту 3799, и при этом не проверять IP-адрес приславшего ее сервера.  Для этого нужно добавить дополнительные параметры в настройках Chillispot, как это показано на рисунке ниже:

Рис. 23 — Дополнительные параметры Chillispot для приема команды принудительного отключения

Второе обязательное действие, которое нужно сделать, это добавить правило в файерволе роутера, открывающее этот порт (3799/udp). Для этого сделайте следующее:

Рис. 24 — Открытие 3799/udp порта в файерволе.

 

  1. Откройте в меню Administration вкладку Commands.
  2. В поле Commands введите следующую команду
/usr/sbin/iptables -I INPUT 1 -p udp --dport 3799 -j logaccept
  1. Нажмите кнопку Save Firewall
  2. Перезагрузите роутер

После этого роутер (точнее, программа Chillispot) будет принимать извне команду принудительного отключения клиентов.

Ну, и еще совсем маленькое дополнение. Оно правда нужно чаще тем, кто пытается связать несколько перепрошитых роутеров по WDS и упирается в тот факт, что после перепрошивки у них оказываются одинаковые MAC-адреса.

Смена  MAC-адреса

Если вы хотите сменить MAC-адреса  у вашего роутера, нужно выполнить следующее. Примечание — на мой взгляд, лучше конечно «вернуть» роутеру тот адрес, который у него был с завода, но в принципе, вы можете использовать любой.

  1. Прочитать на днище роутера его заводской MAC-адрес. Например, там указан адрес 00:24:01:B1:51:D2. (В вашем случае, естественно, он будет другим, по этому, в приведенной ниже команде подставьте ваше значение).
  2. Войти в консоль роутера (по ssh, по telnet, без разницы — как вам больше нравится) .
  3. Ввести в консоли одну за другой следующие команды:
nvram set et0macaddr=00:24:01:b1:51:d2
nvram commit
reboot

Роутер перезагрузится. После перезагрузки у него сменятся все три его MAC-адреса — для интерфейсов LAN, WAN и Wi-Fi (о том, по какому принципу — см. ниже).

Как вариант, прошивка dd-wrt позволяет ввести консольные команды не подключаясь к консоли, а непосредственно в веб-интерфейсе. Для этого, вместо того, чтобы подключаться по ssh или telnet, просто откройте в меню выберите Administration, а во второй строке — Commands. Откроется следующее меню:

Рис. 25 — Окно ввода команд

И уже в этом окне в поле «Commands Shell — Commands» введите приведенные выше команды по смене MAC-адреса. Как показано на рис. 25 их можно ввести сразу все три, роутер сам выполнит их последовательно одну за другой. После того, как команды вставлены, нажмите кнопку «Run commands«, расположенную внизу. Опять же, роутер перезагрузится. После перезагрузки у него сменятся все три его MAC-адреса — для интерфейсов LAN, WAN и Wi-Fi как показано на рис. 26 ниже:

Рис. 26 — Окно информации о системе

Как видите, MAC-адрес, указанный нами в команде, достался именно LAN интерфейсу. MAC-адрес на единицу больше (в данном случае 00:24:01:B1:51:D3) был присвоен WAN интерфейсу, и еще на единицу больше (00:24:01:B1:51:D4) — Wi-Fi интерфейсу.

Дополнительные ссылки:

  1. Страница wiki на сайте dd-wrt по поводу настройки Chillispot
  2. Моя статья о настройке контроллера доступа Chillispot на компьютере под управлением ОС Linux
  3. Все мои заметки о хотспотах