Для добавления пользователей в Mikrotik Routerboard при помощи Pythonix нам понадобятся два скрипта: new_user.py и add_user_mikrotik.py.
В первый скрипт администратором будут вводиться все необходимые данные. Далее они будут передаваться в скрипт add_user_mikrotik.py, чтобы он произвел добавление данных в Mikrotik Routerboard. Скрипт new_user.py мы уже написали, теперь создадим второй скрпит add_user_mikrotik.py, который и завершит нашу работу.
Скрипт add_user_mikrotik.py:
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from paramiko import SSHClient
from paramiko import AutoAddPolicy
def f_add_user_mikrotik(login, ip, ip_device, login_device, password_device):
ssh = SSHClient()
ssh.set_missing_host_key_policy(AutoAddPolicy())
ssh.connect(ip_device, port=2222, username=login_device, password=password_device)
cmd = "/ip fi address-list add address=%s list=working" % (ip)
ssh.exec_command(cmd)
ssh.close()
Рассмотрим этот скрипт:
Производим импортирование необходимых модулей:
#!/usr/bin/env python
# -*- coding: utf_8 -*-
from paramiko import SSHClient
from paramiko import AutoAddPolicy
Далее создаем функцию f_add_user_mikrotik. Данная функция будет рассматривать такие значения:
-
login — логин пользователя;
-
ip — IP-адрес пользователя;
-
ip_device — IP устройства Mikrotik Routerboard, для которого необходимо выполнить действия;
-
login_device — login для подключения к устройству Mikrotik Routerboard;
-
password_device — пароль для подключения к устройству Mikrotik Routerboard;
def f_add_user_mikrotik(login, ip, ip_device, login_device, password_device):
И выполняем добавление IP-адреса в адрес-лист:
ssh = SSHClient()
ssh.set_missing_host_key_policy(AutoAddPolicy())
ssh.connect(ip_device, port=2222, username=login_device, password=password_device)
cmd = "/ip fi address-list add address=%s list=working" % (ip)
ssh.exec_command(cmd)
ssh.close()
Евгений Рудченко специально для ASP24.
