上次我個你們介紹了利用paramiko這個模塊,能夠模擬ssh登錄遠程服務器,而且能夠返回執行的命令結果,此次給你們介紹下如何利用已經創建的密鑰來實現無需輸入密碼就能夠登陸服務器,代碼十分簡單,下面來看看 python
1: [root@centos6 .ssh]# cat nopasswdSSH.py
2: #!/usr/bin/env python
3: import paramiko
4: hostname='133.214.210.124'
5: port=22
6: username='root'
7: pkey='/root/.ssh/id_rsa'
8: key=paramiko.RSAKey.from_private_key_file(pkey)
9: s=paramiko.SSHClient()
10: s.load_system_host_keys()
11: s.connect(hostname,port,username,pkey=key)
12: stdin,stdout,stderr=s.exec_command('hostname')
13:
14: print stdout.read()
15: [root@centos6 .ssh]#
16:
17:
18:
代碼十分簡單,可是效果仍是不錯的,呵呵,感興趣的話,去試驗下吧,可是這個程序運行以前,2臺服務器之間必需要作好互相信任,只須要密鑰就能夠登陸。這個是前提。。。。centos