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