利用python 下paramiko模块无密码登录
利用python 下paramiko模块无密码登录
上次我个大家介绍了利用paramiko这个模块,可以模拟ssh登陆远程服务器,并且可以返回执行的命令结果,这次给大家介绍下如何利用已经建立的密钥来实现无需输入密码就可以登录服务器,代码十分简单,下面来看看
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台服务器之间必须要做好互相信任,只需要密钥就可以登录。这个是前提。。。。