Задать вопрос
neco
@neco
инженерммм

Как реализовать авторизацию выхода в интернет по http?

Имеем: открытая беспроводная точка доступа, подключенная к серверу на базе MS Windows 2012 Standart Server. На сервере поднята служба RRAS с двумя интерфейсами. Один публичный, который смотрит в интернет, второй локальный который находится за NAT, к нему и подключена точка.
Также на сервере поднята служба DHCP, которая раздает адреса на NAT интерфейс.

Хочется получить следующее: когда приходящий человек подключается к открытой беспроводной точке доступа и пытается выйти в интернет (допустим из браузера через HTTP), ему в первую очередь, вместо любой запрошенной страницы показывают страницу для ввода логина\пароля.
после успешного ввода, открывается все, и работаем в интернет так, как будто у нас обычный классический NAT.
До успешного ввода. Закрыты все порты, кроме 80 и все HTTP запросы ведут на страницу ввода логин\пароль.

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

Собственно вопрос:
Какие существуют средства для реализации этого процесса?
Возможно есть какие-то готовые решения для MS, подскажите в какую сторону искать ?
  • Вопрос задан
  • 4180 просмотров
Подписаться 4 Оценить Комментировать
Решения вопроса 1
shineblu
@shineblu
Добрый день,

Для Windows подобных решений не знаю (но наверняка есть). Для Linux (Debian) рекоммендую CoovaChilli (стабильный форк Chillispot). Для его использования нужно будет поднять отдельную железку (шлюз/комп). И все будет так как Вы и описываете:

1. При подключении к WiFi, CoovaChilli выдаст клиенту внутренний IP из своей подсети, при этом клиент будет изолирован от соседей
2. В Windows появится окошко в трее, что требуется авторизация для доступа в интернет, а IOS устройства сразу попробуют открыть браузер (в момент подключения к точке доступа, покажут Login Page)
3. После успешной авторизации шлюз начнет пропускать трафик с локального на WAN интерфейс (это или Ваша локалка или отдельный линк в интернет)

Из плюсов - решение очень гибкое, аутентификацию клиента можно сделать через HTTP (не будет проблем с self-signed сертификатами), можно сделать ваучеры (почасовой доступ), можно прописать ресурсы доступные без авторизации (обычно это DNS сервера) и прочее.

Другие решения Вы можете посмотреть здесь: en.wikipedia.org/wiki/Captive_portal

Успехов!
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы