python paramiko 模块是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。可以做很多操作,比如批量上传下载,ssh,执行Linux shell命令等。

批量ssh登入服务器并修改密码

#!/usr/bin/python
import paramiko
import os,sys
port=22
username='root'
file=open('ip.list')
for line in file :              
        hostname=str(line.split('\t')[0]) 
        oldpasswd=str(line.split('\t')[1]).strip()
        newpasswd=str(line.split('\t')[2]).strip()
        print "#########################",hostname,"###################"
        s=paramiko.SSHClient()
        s.set_missing_host_key_policy(paramiko.AutoAddPolicy())
        s.connect(hostname,port,username,oldpasswd)
        stdin,stdout,sterr=s.exec_command('echo %s | passwd --stdin root'%(newpasswd))
        print stdout.read()
        s.close()
file.close()
 
cat ip.list
10.0.240.170    redhat  123456
注明:paramiko.SSHClient()是paramiko 中ssh对象
str(line.split('\t')[0]) 是以"\t"为标识符,的第一列,[1]就是第二列。