Удалённое выполнение команд на Mikrotik через SSH
, используется для управления правилами шейпера и фаервола.
Установка ключа с помощью API через вебформу ()
Установка ключа с помощью API через вебформу
Для выполнения команд нужно создать SSH сертификат с пустым паролем и залить его на Mikrotik по ftp.
Перед созданием сертификата убедитесь что на Mikrotik'е включён сервис ftp
.
Создание сертификата
Создайте сертификат с пустым паролем (для дальнейшего управления микротиком)
# /usr/abills/misc/certs_create.sh ssh abills_admin -UPLOAD_FTP admin@10.20.1.1
Не используйте пользователя 'admin'. Для удалённого доступа создайте отдельного пользователя.
Создание пользователя
[admin@mikrotik]> user add name=abills_admin group=write password='пароль'
Пароль используется при работе по Mikrotik API, не забудьте вписать его в настройках сервера доступа.
Подключите SSH ключ пользователю
[admin@mikrotik]> user ssh-keys import public-key-file=id_rsa.abills_admin.pub user=abills_admin
Проверяем:
% ssh -l abills_admin -i /usr/abills/Certs/id_rsa.abills_admin 10.20.1.1 "/system identity print"
если все правильно, результат выглядит примерно вот так
name: "MikroTik"
если у вас спрашивает пароль, повторите внимательнее.
Создание и загрузка ключа через mikrotik_hotspot.pl
Внутри mikrotik_hotspot.pl уже есть процедура заливки ключа
# /usr/abills/Abills/modules/Hotspot/mikrotik_hotspot.pl IP_ADDRESS=192.168.0.12 UPLOAD_KEY=y