Инструмент для управления политиками доступа на Keenetic роутере через SSH.
Этот инструмент позволяет подключаться к Keenetic роутеру по SSH и управлять политиками доступа для подключенных устройств. Вы можете просматривать список устройств, список доступных политик и переключать устройства между политиками.
- Node.js (версия 18 или выше)
- Keenetic роутер с включенным SSH доступом
- Учетная запись администратора роутера
Создайте файл .env в корне проекта (или в директории, откуда запускаете команду):
cp .env.example .envОтредактируйте .env и укажите данные для подключения к роутеру:
ROUTER_HOST=192.168.1.1
ROUTER_PORT=22
ROUTER_USERNAME=admin
ROUTER_PASSWORD=your_passwordyarn list-devicesПоказывает все подключенные устройства с их MAC-адресами и IP.
yarn list-policiesПоказывает все доступные политики доступа на роутере.
yarn change-policy -m <MAC> -p <POLICY>Параметры:
-m, --mac <mac>- MAC-адрес устройства-p, --policy <policy>- ID политики доступа
yarn reset-policy -m <MAC>Параметры:
-m, --mac <mac>- MAC-адрес устройства
Возвращает устройство в дефолтную политику.
# Просмотреть все устройства
yarn list-devices
# Просмотреть все политики
yarn list-policies
# Переместить устройство в политику "Policy1"
yarn change-policy -m a2:99:3a:00:51:a7 -p Policy1
# Вернуть устройство в дефолтную политику
yarn reset-policy -m a2:99:3a:00:51:a7- Подключается к роутеру по SSH используя библиотеку
ssh2 - Выполняет команды
show ip hotspotиshow ip policyдля получения информации - Парсит вывод команд и представляет данные в удобном виде
- Изменяет политики через команды
ip hotspot host <mac> policy <policy> - Автоматически сохраняет конфигурацию через
system configuration save
Для работы скрипта необходимо включить SSH на роутере:
- Зайдите в веб-интерфейс роутера
- Перейдите в раздел "Управление" → "Общие настройки"
- Включите компонент "SSH-сервер"
- Настройте порт
- Сохраните настройки
- Храните пароли в безопасном месте
- Рассмотрите использование SSH-ключей вместо паролей
- Используйте сильные пароли для доступа к роутеру
- Проверьте, что SSH включен на роутере
- Убедитесь, что указан правильный IP адрес роутера
- Проверьте правильность логина и пароля
- Убедитесь, что ваш роутер поддерживает команды
- Проверьте версию прошивки роутера