App lấy running config chạy trên Windows

Tool được viết từ python sau đó chuyển sang dạng file chạy trên windows. Bạn không cần cài vmware vẫn có thể dùng được tool này.

Lưu ý:

- Tool bản này chỉ dùng để lấy running config của Cisco router, switch

- Cần bật SSH trên thiết bị

- Tạo 1 account giống nhau chuyên để view config trên mỗi thiết bị

Cách dùng:

Bạn điền IP MGMT, username và password của thiết bị vào ô trắng bên dưới:

Download tại đây: https://drive.google.com/file/d/1At8JVF9LCzj5ckw44dLyQwqypEFutzHV/view?usp=sharing

Mã MD5 của file:
059588349F24D6831451F8BADF17C4D2

Source code:

import tkinter as tk
import webbrowser
import netmiko
import time

def get_config():
    router_ips = text_box.get('1.0', 'end-1c').split('\n') 
    for ip in router_ips:
     print(ip)
    
     device = {
     
         'device_type': 'cisco_ios',
     
         'ip': ip,
     
         'username': username_entry.get(),
     
         'password': password_entry.get(),
     
         'secret': password_entry.get(),
     
         'verbose': False,
     
     }
     
     
     
     net_connect =netmiko.ConnectHandler(**device)
     
     net_connect.enable()
     
     get_cfg=net_connect.send_command_timing('show run')
     f=open(ip+"_cfg",'w')
     f.write(get_cfg)
     f.close()
     status_label.config(text="DONE BACKUP FOR "+ip)
     root.update()
     time.sleep(2)
     status_label.config(text="")
     root.update()
 
 
 
 
root = tk.Tk()


label = tk.Label(root, text="Get running config", font=("Helvetica", 14))
label.pack()


text_box = tk.Text(root, height=5, width=30)
text_box.pack()


def open_webpage(event):
    webbrowser.open_new(r"https://hainguyenit.edubit.vn")

link = tk.Label(root, text="XEM SOURCE CỦA TOOL", fg="blue", cursor="hand2")

username_label = tk.Label(root, text="Username")
username_label.pack()
username_entry = tk.Entry(root)
username_entry.pack()

password_label = tk.Label(root, text="Password")
password_label.pack()
password_entry = tk.Entry(root, show="*")
password_entry.pack()


button = tk.Button(root, text="GET CONFIG", command=get_config,bg='#40E0D0')
button.pack(pady=(10,0))

status_label = tk.Label(root, text="")
status_label.pack()

link.pack()
link.bind("
", open_webpage)
root.geometry("500x400")  
root.title("APP NETWORK")
root.mainloop()

 

Bài viết cùng danh mục