Chinaunix首页 | 论坛 | 博客
  • 博客访问: 5001625
  • 博文数量: 921
  • 博客积分: 16037
  • 博客等级: 上将
  • 技术积分: 8469
  • 用 户 组: 普通用户
  • 注册时间: 2006-04-05 02:08
文章分类

全部博文(921)

文章存档

2020年(1)

2019年(3)

2018年(3)

2017年(6)

2016年(47)

2015年(72)

2014年(25)

2013年(72)

2012年(125)

2011年(182)

2010年(42)

2009年(14)

2008年(85)

2007年(89)

2006年(155)

分类: Python/Ruby

2013-08-16 23:37:27


  1. #!/usr/bin/env python
  2. import paramiko
  3. import time

  4. ip_list=('ip1','ip2')
  5. log_file=open('mpwdok.log','w+')
  6. log_file1=open('mpwderr.log','w+')

  7. for ip in ip_list:
  8.     try:
  9.         s = paramiko.Transport((ip, 22))
  10.         s.connect(username='root', password='222222')
  11.         chan = s.open_session()
  12.         chan.get_pty()
  13.         chan.invoke_shell()
  14.         chan.send('passwd root\n')
  15.         time.sleep(2)
  16.         chan.send('111111\n')
  17.         time.sleep(2)
  18.         chan.send('111111\n')
  19.         time.sleep(2)
  20.         log_file.write("\n"+ip+"\n=================================================================\n")
  21.         log_file.write(chan.recv(1024))
  22.         log_file.write("\n=================================================================")
  23.     except Exception,err:
  24.         log_file1.write("ERR:unable to connect %s:%s\n" %(ip,err))


以下是另一种方式自动登录并且修改密码的脚本,仅供参考:



  1. #!/usr/bin/env python
  2. #CreateBy:Badboy 2010-11-02
  3. #Auto modify user passwd

  4. import paramiko
  5. import time
  6. import ConfigParser

  7. cf=ConfigParser.ConfigParser()
  8. cf.read("userinfo.conf")
  9. userName=cf.get("user_info","user_name")
  10. userPass=cf.get("user_info","user_pwd")
  11. serverPort=cf.getint("user_info","server_port")
  12. keyFile=cf.get("user_info","key_path")
  13. ip_list=cf.get("user_info","ip_list").split(",")

  14. channel = paramiko.SSHClient();
  15. channel.set_missing_host_key_policy(paramiko.AutoAddPolicy())
  16. log_file=open('mpwdok.log','w+')
  17. log_file1=open('mpwderr.log','w+')

  18. for serverHost in ip_list:
  19.     try:
  20.         mpwdssh=paramiko.Transport((serverHost,serverPort))
  21.         mykey = paramiko.DSSKey.from_private_key_file(keyFile,password=userPass)
  22.         mpwdssh.connect(username=userName,pkey=mykey)
  23.         chan = mpwdssh.open_session()
  24.         chan.get_pty()
  25.         chan.invoke_shell()
  26.         chan.send('passwd root\n')
  27.         time.sleep(2)
  28.         chan.send('222222\n')
  29.         time.sleep(2)
  30.         chan.send('222222\n')
  31.         time.sleep(2)
  32.         log_file.write("\nLinuxServer_IP:"+serverHost+"\n=================================================================\n")
  33.         log_file.write(chan.recv(1024))
  34.         log_file.write("\n=================================================================")
  35.     except Exception,err:
  36.         log_file1.write("ERR:unable to connect %s:%s\n" %(serverHost,err))

userinfo.conf


  1. [user_info]
  2. user_name=root
  3. user_pwd=111111
  4. server_port=22
  5. key_path=/root/.ssh/badboy
  6. ip_list=ip1,ip2


原文链接:http://5ydycm.blog.51cto.com/115934/407163
阅读(1344) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~