标签:py transport Paramiko ssh key path paramiko
Paramiko模块
pip install paramiko -i https://pypi.tuna.tsinghua.edu.cn/simple
基于用户名和密码
import paramiko
# 创建SSH对象
ssh = paramiko.SSHClient()
# 允许连接不在know_hosts文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接服务器
ssh.connect(hostname='xxx.xxx.xxx.xxx', port=22, username='root', password='xxxxxxxxx')
stdin, stdout, stderr = ssh.exec_command('df -h')
# stdin 传值
# stdin.write('y')
# 获取命令的结果
result = stdout.read()
# 返回byte类型
print(result.decode('utf-8'))
# 关闭连接
ssh.close()
基于公钥和私钥
private_key = paramiko.RSAKey.from_private_key_file('id/rsa')
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(hostname='', port=22, username='root', key_filename=private_key)
stdin, stdout, stderr = ssh.exec_command('df -h')
# 获取命令的结果
result = stdout.read()
# 返回byte类型
print(result.decode('utf-8'))
# 关闭连接
ssh.close()
SFTPClient
transport=paramiko.Transport(('hostname',22))
transport.connect(username='root',password='123')
sftp = paramiko.SFTPClient.from_transport(transport)
# location.py上传到服务器test.py
stfp.put('/tmp/location.py','/tmp/test.py')
# 将remove_path下载到本地local_path
stfp.get('remove_path',local_path)
transport.close()
标签:py,transport,Paramiko,ssh,key,path,paramiko 来源: https://www.cnblogs.com/20190707wdd/p/16370089.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。