Портал авторизации в гостевом Wi-Fi по SMS
Captive-портал для гостевого Wi-Fi: посетитель вводит номер телефона, получает код по SMS и получает доступ на заданное время через точки доступа UniFi.
Задача
Для гостевого Wi-Fi нужен был не открытый доступ без учёта посетителей, а портал с авторизацией — посетитель подтверждает номер телефона и получает доступ на ограниченное время.
Что сделано
Сделал на Django captive-портал: страница входа при подключении к сети, одноразовый код по SMS через Twilio, а после проверки кода — авторизация конкретного устройства через API UniFi-контроллера на заданное время. Отдельно веду учёт активных и завершённых подключений.
Портал работает локально в связке с точками доступа UniFi, поэтому по своей природе не подразумевает публичного домена.
На чём сделано
Список для тех, кому важно, что внутри. Рядом — что каждое из этого означает для владельца сайта.
- Django
- Каркас, на котором держится сайт: админка, права доступа и защита форм в нём есть изначально, а не дописаны на коленке.
- SQLite
- База данных одним файлом. Для сайта с обычной посещаемостью её достаточно, а резервная копия — это копия одного файла.
- UniFi Controller API
- Управление точками доступа Wi-Fi из своей программы.
- Twilio SMS
- Отправка SMS с кодами подтверждения.
Нужно похожее?
Здесь написано, что входит в работу, сколько это стоит и сколько занимает.
Похожие работы
доступ по логину
CRM «ЭнергоПульс»
ЭнергосбытМультиарендная CRM для учёта энергопоказаний. Роли и их совмещение, тикеты поддержки, PWA. Каждый день работает в компании.
доступ по логину
Панель мониторинга
ИнфраструктураСобственный дашборд состояния серверов: занятость дисков, сроки SSL, логи nginx. Инструмент, которым я слежу за всеми проектами.
доступ по логину
Учёт заявок мастерской по ремонту телефонов
Ремонт техникиВнутренняя система учёта для мастерской по ремонту телефонов: статусы заявок, мастера, автоматический расчёт стоимости, печать документов.