Chinaunix首页 | 论坛 | 博客
  • 博客访问: 381175
  • 博文数量: 58
  • 博客积分: 2941
  • 博客等级: 少校
  • 技术积分: 970
  • 用 户 组: 普通用户
  • 注册时间: 2005-12-21 11:37
文章分类

全部博文(58)

文章存档

2015年(1)

2014年(1)

2012年(1)

2011年(19)

2009年(1)

2008年(1)

2007年(11)

2006年(10)

2005年(13)

分类: Python/Ruby

2011-04-19 18:23:02

1.使用密码的SSH连接

 

  1. #!/usr/bin/env python



  2. import paramiko



  3. #远程服务器

  4. hostname = ‘192.168.0.1’

  5. #端口

  6. port = 22

  7. #用户名

  8. username = ‘Dominic’

  9. #密码

  10. password = ‘123456’



  11. #创建SSH连接日志文件(只保留前一次连接的详细日志,以前的日志会自动被覆盖)

  12. paramiko.util.log_to_file(‘paramiko.log’)

  13. s = paramiko.SSHClient()

  14. #读取know_host

  15. s.load_system_host_keys()

  16. #建立SSH连接

  17. s.connect(hostname,port,username,password)

  18. stdin,stdout,stderr = s.exec_command(‘df -h’)

  19. #打印标准输出

  20. print stdout.read()

  21. s.close()

 

由于第一种方式采用密码交互方式登陆远程服务器,使用起来不安全,下面这种方式采用KEY的方式登陆远程服务器,非常安全。

 

2.连接SSH服务器并远程执行命令-使用rsa私钥加密方式创建SSH连接

A.生成KEY

Linux # ssh-keygen –t rsa

 

B.创建SSH连接

  1. #!/usr/bin/env python



  2. import paramiko



  3. hostname = ‘192.168.0.1’

  4. port = 22

  5. username = ‘Dominic’

  6. pkey_file =/home/Dominic/.ssh/id_rsa’



  7. key = paramiko.RSAKey.from_private_key_file(pkey_file)

  8. s = paramiko.SSHClient()

  9. s.load_system_host_keys()

  10. s.connect(hostname,port,username,pkey=key)

  11. stdin,stdout,stderr = s.exec_command(‘df -h’)

  12. print stdout.read()

  13. print stderr.read()

  14. s.close()

 

3.连接SSH服务器并远程执行命令-使用dsa私钥加密方式创建SSH连接

A.生成KEY

Linux # ssh-keygen –t dsa

 

B.创建SSH连接

  1. #!/usr/bin/env python



  2. import paramiko



  3. hostname = ‘192.168.0.1’

  4. port = 22

  5. username = ‘Dominic’

  6. pkey_file =/home/Dominic/.ssh/id_dsa’



  7. key = paramiko.DSSKey.from_private_key_file(pkey_file)

  8. s = paramiko.SSHClient()

  9. s.load_system_host_keys()

  10. s.connect(hostname,port,username,pkey=key)

  11. stdin,stdout,stderr = s.exec_command(‘df -h’)

  12. print stdout.read()

  13. print stderr.read()

  14. s.close()

 

 

 

阅读(6078) | 评论(1) | 转发(2) |
给主人留下些什么吧!~~

小雅贝贝2011-04-20 10:36:42

感谢分享啊,本片博文上CU首页了哦~~希望以后常常写~