Если вы предоставляете доступ в Интернет при помощи Mikrotik RouterBoard 433AH, Mikrotik RouterBoard RB/433UAH или Mikrotik RouterBoard RB435G, то вам может понадобиться система учета и авторизации пользователей. Приступим к созданию такой системы.
Рис.1. Создаем базу данных.
В качестве базы данных будем использовать MySQL. Создаем базу данных с названием hotspot.
Рис.2. Таблица пользователей.
Создадим таблицу users с шестью полями - в ней будет храниться информация о пользователях.
Рис.3. Структура таблицы users.
-
Поле id – Идентификатор записи.
-
Поле login – Логин пользователя.
-
Поле password – Пароль пользователя.
-
Поле balance – Денежный баланс пользователя.
-
Поле mac – МАС адрес устройства пользователя.
-
Поле access – Информация о разрешении или запрещении доступа данному пользователю.
Рис.4. Таблица users добавлена.
Рис.5. Таблица admins.
Пользователей в таблицу нужно кому-то добавлять - это работа администратора. Создадим таблицу admins с тремя полями. Здесь будут хранится учетные записи администратора.
-
Поле id – Идентификатор записи.
-
Поле login – Логин администратора.
-
Поле password – Пароль администратора.
Рис.6. Учетная запись администратора.
Выбираем таблицу admins, вкладку вставить, и добавляем администратора.
Рис.7. Таблица action.
В таблице action будут хранится данные для авторизации пользователей в Mikrotik Routerboard.
Рис.8. Конечная структура базы.
База данных создана. Теперь перейдем к созданию структуры будущей системы.
Рис.9. Структура системы.
Система будет состоять из трех частей:
-
Клиентская часть;
-
Администраторская часть;
-
Скрипты взаимодействия с Mikrotik Routerboard.
Клиентская часть:
-
Index.php – индексный файл, который будет выводить пользователю форму для авторизации;
-
reg_user.php – файл, в котором будут обрабатываться данные, введеные пользователем, и приниматься решение - предоставлять доступ пользователю или нет;
-
Style.css – каскадная таблица стилей.
Администраторская часть:
-
Index.php – главная страница администраторской части;
-
user_list.php – список пользователей;
-
reg_admin.php – авторизация администратора;
-
Menu.php – администраторское меню;
-
exit.php – выход из администраторской части;
-
db.php – соединение с базой данных;
-
au_admin_form.php – форма для авторизации администратора;
-
add_user_form.php – форма для добавления пользователей;
-
add_user.php – скрипт добавления пользователей.
Скрипты взаимодействия с Mikrotik Routerboard:
-
hotspot.py – скрипт выполняющий действия в Mikrotik Routerboard;
-
mysql_db.py – скрипт для соединения с базой данных.
Евгений Рудченко специально для ASP24.









