Paramiko模块学习

 

复制代码
#!/usr/bin/env python
# Author:Zhangmingda
import paramiko
'''创建ssh对象'''
ssh = paramiko.SSHClient()
'''设置允许连接不在know host的主机'''
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy)
'''连接服务器'''
ssh.connect(hostname='49.4.13.98',port=23782,username='root',password='Wyf@1314')
'''执行命令获取结果'''
stdin, stdout,stderr = ssh.exec_command('ls')
result_in = stdin
result_out =stdout.read().decode()
result_err = stderr.read().decode()
# print(result)
# print('type:',type(stdin))
print('stdin:',result_in)
print('stdout:',result_out)
print('stder:',result_err)
ssh.close()
sshclient
复制代码
复制代码
#!/usr/bin/env python
# Author:Zhangmingda
import paramiko

id_rsa = paramiko.RSAKey.from_private_key_file('id_rsa')
ssh =  paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy)
ssh.connect(hostname='49.4.13.98',port=23782,username='root',pkey=id_rsa)
stdin,stdout,stderr = ssh.exec_command('ls')
stdout_result = stdout.read().decode()
print(stdout_result)
ssh.close()
sshclient_RSA
复制代码
复制代码
#!/usr/bin/env python
# Author:Zhangmingda
import paramiko
'''创建私钥对象给ssh传输对象用'''
id_rsa = paramiko.RSAKey.from_private_key_file('id_rsa')
transobj = paramiko.Transport(('49.4.13.98',23782))
transobj.connect(username='root',pkey=id_rsa)
'''将已经连接了服务器的对象给sftp客户端实例,让客户端实例进行上传下载操作'''

'''创建sftp对象'''
sftpobj = paramiko.SFTPClient.from_transport(transobj)
# sftpobj.get('/etc/passwd','hehepasswd')
sftpobj.put('hehepasswd','/tmp/from_windows_passwd')
transobj.close()
sftp_RSA
复制代码
复制代码
#!/usr/bin/env python
# Author:Zhangmingda
import paramiko
'''创建一个ssh传输连接对象'''
trans_addr = paramiko.Transport(('49.4.13.98',23782))
trans_addr.connect(username='root',password='Wyf@1314')

'''将已经连接了服务器的对象给sftp客户端实例,让客户端实例进行上传下载操作'''
sftp = paramiko.SFTPClient.from_transport(trans_addr)
sftp.get('/etc/passwd','from_sshserver_etc_passwd.')
sftp.put('python_av.avi','/root/a.avi')
sftp.close()
trans_addr.close()
'''关闭sftp客户端'''
sftp
复制代码

 

posted on   zhangmingda  阅读(133)  评论(0编辑  收藏  举报

编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示