در توسینسو تدریس کنید

و

با دانش خود درآمد کسب کنید

آموزش پایتون برای مهندسین شبکه قسمت 1 : پیکربندی تجهیزات سیسکو

در این دوره آموزشی به کاربردهای زبان پایتون برای مهندسین شبکه می پردازم و اسکریپتهایی را معرفی می کنم که از طریق آنها مهندسین و ادمین های شبکه امکان خودکار سازی فرآیند نگهداشت شبکه را خواهند داشت.

در اولین دوره آموزشی پایتون (Python) برای مهندسین شبکه اسکریپت اتصال SSH به تجهیزات سیسکو را براتون معرفی میکنم و اینکه چگونه میتویند یک تجهیزات سیسکو را از طریق پایتون پیکربندی کنید. حتما تا حالا براتون پیش اومده که بخواین مثلا به تمام سوییچ های شبکه سازمان با SSH وصل بشید و با زدن یک کامند روی همشون یک قابلیت رو روی آنها پیکربندی کنید (مثلا تنظیم SNMP و یا Syslog روی همه سوییچ ها برای ارسال بسته ها به سرور مانیتورینگ) و یا اینکه به دلایل امنیتی بخواین با اجرای یک کامند، یک قابلیت یا سرویس رو روی همشون غیر فعال کنید ( مثلا no cdp run ) اینجور کارهای تکراری و خسته کننده را میتوان از طریق اسکریپت های پایتون انجام داد به عنوان مثال با استفاده از اسکریپت پایتون ضمیمه، در کد زیر :

#----------------------------------------------------
# Cisco Switch/Router Configuration By Python
# By : Hessam Hosseini
# Email : hessam.hosseyni@gmail.com
# Tel : 0912 0612 305 
#----------------------------------------------------

#------------------------------------------------- Get User and Password of Switch -----------------------------------
username=input("\n\nUsername:  ")
password=getpass(prompt='Password:  ')
enable_pass=getpass(prompt='Enable Password:  ')
#------------------------------------------------- Read Switch List from file -----------------------------------
with open('Switch_list.txt') as f:
 devices_list = f.read().splitlines()
 for device in devices_list:
  DVIP = device
  print (Style.DIM + Fore.WHITE + "\n-------------------------------------------------------")
  print (Style.DIM + Fore.WHITE + "\nConnecting to " + DVIP + " ..." + Style.RESET_ALL)
    
#------------------------------------------------- SSH to Device -----------------------------------
  sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)    #IPv4 , TCP Connection
  result = sock.connect_ex((DVIP,22))
  if result != 0:
   print (Style.DIM + Fore.YELLOW + " SSH Port on Switch " + DVIP + " is close." + Style.RESET_ALL)
   continue
  sock.close()

  try:
   remote_conn_pre=paramiko.SSHClient()
   remote_conn_pre.set_missing_host_key_policy(paramiko.AutoAddPolicy())
   remote_conn_pre.connect(DVIP,username=username,password=password,look_for_keys=False,allow_agent=False)
   print(Style.DIM + Fore.CYAN + " SSH Connection to %s established."  %DVIP + Style.RESET_ALL)
  
  except Exception as e:
   print(Style.BRIGHT + Fore.YELLOW + " SSH Connection to %s  : Authentication Failed."  %DVIP + Style.RESET_ALL)
   continue
#------------------------------------------------- Configuration -----------------------------------
  remote_conn.send('enable\n')
  remote_conn.send(enable_pass+'\n')
  remote_conn.send('configure terminal\n')
  remote_conn.send('no cdp run\n')
  remote_conn.send('logging 192.168.1.100\n')
  remote_conn.send('snmp-server host 192.168.1.100\n')
  remote_conn.send('exit\n')
  remote_conn.send('write\n')
  print(Style.DIM + Fore.GREEN + " %s Configuration has been saved."  %DVIP + Style.RESET_ALL)
#------------------------------------------------- Close SSH -----------------------------------
  remote_conn.close()
  print(Style.DIM + Fore.CYAN + " SSH Connection to %s was closed."  %DVIP + Style.RESET_ALL)
 میتونید یک فایل متنی شامل IP سوییچ ها (یا روترها) رو بخونید و اسکریپت به تک تک سوییچ ها SSH  زده و دستورات شما را اجرا کرده و در نهایت پیکربندی انجام شده را بر روی همه تجهیزات  Write  و ارتباط SSH  را قطع میکند.
 
توضیح بیشتر اینکه برای اجرای اسکریپت فوق ابتدا باید پایتون 3 را دانلود و نصب کنید و از خط فرمان ، با دستور زیر اسکریپت را اجرا کنید
 
C:\>python cisco-config.py
 
در این دوره آموزشی فرض بر این است که شما دوره مقدماتی پایتون رو پشت سر گذاشتید و با مفاهیم و Syntax  زبان پایتون آشنایی دارید ولی باز هم چنانچه در مورد نحوه عملکرد اسکریپت و یا چگونگی اجرای آن ابهامی داشتید من در خدمت هستم.

 

  • نویسنده : سیدحسام الدین حسینی
  • منبع : جزیره سیسکو وب سایت توسینسو
عنوان
1 آموزش پایتون برای مهندسین شبکه قسمت 1 : پیکربندی تجهیزات سیسکو رایگان
2 آموزش پایتون برای مهندسین شبکه قسمت 2: بکاپ گیری از تجهیزات سیسکو رایگان
3 آموزش پایتون برای مهندسین شبکه قسمت 3: مانیتورینگ وب سایت سازمان رایگان
زمان و قیمت کل 0″ 0
0 نظر

هیچ نظری ارسال نشده است! اولین نظر برای این مطلب را شما ارسال کنید...

نظر شما
برای ارسال نظر باید وارد شوید.
از سرتاسر توسینسو
تنظیمات حریم خصوصی
تائید صرفنظر
×

تو می تونی بهترین نتیجه رو تضمینی با بهترین های ایران بدست بیاری ، پس مقایسه کن و بعد خرید کن : فقط توی جشنواره تابستانه می تونی امروز ارزونتر از فردا خرید کنی ....