В этой статье мы допишем в наш скрипт код для добавления учетной записи пользователей в базу данных mysql.
Добавим в таблицу users несколько полей, чтобы она приняла следующий вид:
Рис.1. База данных MySQL.
Login – логин пользователя;
Password – пароль пользователя;
Ipaddress – ip-адрес пользователя;
Speed – скорость пользователя;
Ipmikrotik – ip-адрес Mikrotik Routerboard, к которому подключен пользователь.
#!/usr/bin/env python
# -*- coding: utf_8 -*-
import MySQLdb
from paramiko import SSHClient
from paramiko import AutoAddPolicy
while True:
login = raw_input("Введите имя пользователя: ")
password = raw_input("Введите пароль пользователя: ")
ipaddress = raw_input("Введите IP адрес пользователя: ")
speed = raw_input("Скорость пользователя: ")
mtlogin = raw_input("Введите имя администратора mikrotik: ")
mtpassword = raw_input("Введите пароль администратора mikrotik: ")
mtipaddress = raw_input("Введите IP адрес mikrotik: ")
db = MySQLdb.connect(user='root', passwd='1q2w3e', db='mymikrotik')
cur = db.cursor()
sql = ("INSERT INTO users (login, password, ipaddress, speed, ipmikrotik) VALUES ('%s', '%s', '%s', '%s', '%s')" % (login, password, ipaddress, speed, mtipaddress))
cur.execute(sql)
cur.close()
ssh = SSHClient()
ssh.set_missing_host_key_policy(AutoAddPolicy())
ssh.connect(mtipaddress, port=22, username=mtlogin, password=mtpassword)
cmd = "/ppp secret add name=%s password=%s service=any profile=default local=172.16.1.1 remote=%s" % (login, password, ipaddress)
ssh.exec_command(cmd)
ssh.close()
print "Пользователь %s добавлен" % (login)
if raw_input("Хотите продолжить? y/n: ") == "n":
break
Рассмотрим изменения, которые были добавлены в скрипт:
Рис.2. Запускаем скрипт добавления пользователей в Mikrotik Routerboard.
Запускаем скрипт для добавления пользователей в Mikrotik Routerboard. Вводим все необходимые данные и дождемся, чтобы скрипт выполнил добавление пользователя и в Mikrotik Routerboard и в базу MySQL.
Рис.3. Mikrotik Routerboard, список пользователей.
Как мы видим, пользователь добавлен в Mikrotik Routerboard.
Рис.4. База данных пользователей MySQL.
Подключаемся к базе данных при помощи phpmyadmin и видим, что запись о пользователе была добавлена также и в базу данных. Теперь все пользователи будут записаны в базе.
Евгений Рудченко специально для asp24.




