Python批量修改交换机密码的实现指南

林见深
林见深
发布时间:2026-10-14 | 5人浏览过
原创

本文介绍如何利用Python的paramiko库实现交换机密码的批量修改。通过安装依赖、编写SSH连接脚本并执行命令行指令,可自动化完成多台设备的配置更新与保存,提升网络运维效率。

环境准备与依赖安装

首先,需要通过pip命令安装Python第三方模块paramiko,这是实现SSH连接的基础依赖。


pip install paramiko

脚本编写与逻辑实现

接下来创建Python脚本文件,导入必要的模块并编写核心逻辑。


##导入paramiko、time、getpass模块
#!/usr/bin/python
import paramiko
import time
import getpass
##通过raw_input()函数获取用户输入的SSH用户名并赋值给username
username = raw_input('Username:')
##通过getpass模块中的getpass()函数获取用户输入字符串作为密码赋值给password
password = getpass.getpass('Password:')
##通过for i in range(1,5)和ip="192.168.100."+str(i)语句实现循环登录交换机SW1-SW4:100.1-4
for i in range(1,5):
 ip="192.168.100."+str(i)
 ssh_client=paramiko.SSHClient()
 ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
 ssh_client.connect(hostname=ip,username=username,password=password)
 command=ssh_client.invoke_shell()
##调度交换机命令行执行命令
 command.send("system-view" +"\n")
 command.send("aaa"+"\n")
 command.send("local-user admin password cipher Jan16@Hw"+"\n")
##更改登录密码结束后,返回用户视图并保存配置
 command.send("return"+"\n")
 command.send("save"+"\n")
 command.send("Y"+"\n")
 command.send("\n")
##暂停2秒,并将命令执行过程赋值给output对象,通过print output语句回显内容
 time.sleep(2)
 output=command.recv(65535)
 print output
##退出SSH
ssh_client.close()

脚本执行与结果验证

最后,在终端中执行该Python脚本,根据提示输入用户名和密码以完成批量修改操作。


python changepassword.py 
Username:admin #手动输入SSH用户名,这里是admin
Password: #手动输入SSH用户密码,这里是原先密码

以上内容即为使用Python批量修改交换机密码的完整示例。如需了解更多相关技术细节,建议参考本站其他关于Python网络自动化的文章。

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表