Сейчас тестирую решение роутер TP-LINK TL-WDR3600 прошит openwrt.
Добавил 8 гиговую флешку.
Перенес систему на неё.
Вкратце можно воспользоваться lua на нем написан интерфейс, к сожалению я с ним не знаком потому поставил php.
Поднял на порту 8080 роутера еще один web сервер.
Далее 3 страницы ввод телефона, ввод пароля из смс активация.
Отправка смс по SOAP протоколу.
Логи в файл.
Привязка устройств по мак адресам из arp таблицы или таблицы dhcp.
Далее все на iptables+bash и задачи на at.
Заворачиваем все открываемые страницы на локальную с вводом телефона.
Далее по телефону делаем привязку mac-устройство-код.
И разрешаем доступ например на час.
Далее по истечению времени срабатывают команды в at удаляют код и правило iptables.
Работает несколько недель, нюансы с apple
Что пингует iPhone для определения доступа в интернет?
Сейчас реализую сбор статистики по переходам с помощью прозрачного прокси privoxy и есть желание допилить интерфейс пока все данные в скриптах.