使用paramiko模块批量修改Linux主机的密码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用paramiko模块批量修改Linux主机的密码相关的知识,希望对你有一定的参考价值。

1、paramiko介绍

paramiko是基于python实现的一个SSH远程安全连接,支持认证及秘钥方式。可实现远程命令执行、文件传输、中间SSH代理等功能。

2、安装paramiko模块

shell>pip install paramiko

3、批量修改Linux主机密码脚本

#!/usr/bin/env python
#coding:utf-8
#author:weixiaoxin

import paramiko

f=open(‘server.txt‘,‘r‘)

for i in f:
    L=i.split()
    hostname=L[0]
    username=L[1]
    password=L[2]
    newpassword=L[3]
    port=22

    try:
        ssh=paramiko.SSHClient()
        ssh.load_system_host_keys()
        ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
        ssh.connect(hostname=hostname,username=username,password=password,timeout=5)
        ssh.exec_command(‘echo "%s"|passwd --stdin root‘%newpassword)
        print hostname+" ok!"
        ssh.close()
    except Exception as e:
        print hostname+":"+str(e)

f.close()

4、server.txt文件格式

将需要修改密码的主机,以下列格式填写。

192.168.1.1 root 123 456
192.168.1.2 root 123 456
192.168.1.3 root 123 456

第一列为主机的ip地址
第二列为主机的用户名
第三列为主机的原始密码
第四列为主机的新密码

以上是关于使用paramiko模块批量修改Linux主机的密码的主要内容,如果未能解决你的问题,请参考以下文章

python实现主机批量管理

python基础 paramiko

paramiko模块使用

python批量修改linux主机密码

用Python多进程和paramiko给主机组批量分发命令和传送文件

如何进行服务器的批量管理以及python 的paramiko的模块