環境:系統 centos 5.2 +python2.6 +paramiko模塊 測試成功!

下載:要問我從那裏下載的。我還真記不得了!如果需要那各位可以找谷哥和度娘,天涯只有問房事,這個是找不到的。嘿嘿,也可以發郵件給我!嘿嘿
安裝:paramiko模塊需要依賴 pycrypto
安裝Python
tar -zxvf Python-2.6.tgz
cd  Python-2.6
./configure
make
make install
cd ..
安裝 pycrypto
tar -zxvf  pycrypto-2.6.tar.gz
cd pycrypto-2.6
python2.6 setup.py install
cd ..

安裝 paramiko
tar -zxvf  paramiko-1.7.4.tar.gz
cd paramiko-1.7.4
python2.6 setup.py install
cd ..
修改默認python為2.6 當然你也可以不改哈。只是麻煩一點
mv /usr/local/bin/python /usr/local/bin/python2.4
mv /usr/local/bin/python2.6 /usr/local/bin/python


開始程序:嘿嘿
#!/usr/local/bin/python


import string
import os
import paramiko


#設置需要修改的密碼和用戶名
setpasswd="222222"
setuser="root"
#讀配置文件(IP,端口,用戶名,密碼),以逗號分割的字符串,LINUX格式的回車
#192.168.1.118,6868,root,111111
filepwd="./user.txt"

#讀配置文件,返回IP,端口,用戶名,密碼
def get_config_file(lines):
    ip="192.168.1.100"
    port=6000
    user="root"
    password="111111"
    temp_str=string.split(lines,',') #逗號分割
    ip=temp_str[0]
    port=int(temp_str[1])
    user=temp_str[2]
    password=temp_str[3]
    password=string.split(password,'\n')
    password = password[0]
    return(ip,port,user,password)


#修改用戶名和密碼
def connect_modify(ip_port_user_pwd):
    client = paramiko.SSHClient()
    client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    try:
        client.connect(ip_port_user_pwd[0],ip_port_user_pwd[1],ip_port_user_pwd[2],ip_port_user_pwd[3], timeout=5)
    #    print ip_port_user_pwd[0],ip_port_user_pwd[1],ip_port_user_pwd[2],ip_port_user_pwd[3]
    except:
        print ip_port_user_pwd[0],"network not connect"
        return 0
    stdin, stdout, stderr = client.exec_command("/bin/echo %s|/usr/bin/passwd --stdin %s" %(setpasswd,setuser))
    client.close()
    return 1



def main():
    print "nn","setpassword",setpasswd
    try:
            f=open(filepwd,"r")
    except:
        print filepwd,"not open ip and passwd file"
        return 0
    for lines in f.readlines() :
        #print lines
            readline=string.split(lines,'\n')
        if len(lines) >20:
            ip_port_user_pwd = get_config_file(lines)
            re=connect_modify(ip_port_user_pwd)
            if re ==1 :
                print ip_port_user_pwd[0],"OK"
        #else
    f.close()

main()
./user.txt文件的生成按自己要求寫!(如下,如果windows下寫的復制到程序的目錄中,dos2unix命令改一下回事符喲)

192.168.1.110,16000,root,111111
192.168.1.111,16000,root,111111

./xxxxxxxxxxx.py
然後樓主去泡了一杯茶!
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 成功运行 的頭像
    成功运行

    成功运行的部落格

    成功运行 發表在 痞客邦 留言(0) 人氣()