您的位置:首页 > 编程语言 > Python开发

python paramiko模块使用介绍

2016-03-23 17:32 323 查看
原文:http://xpleaf.blog.51cto.com/9315560/1701040

在第五篇的最后本来还应该有个ftp软件开发的作业的,但对比自己写的和师兄写的,感觉自己写的太烂了,所以就不上传了,等以后技术学好些再开发些小工具吧,现在还差好远,还得非常非常努力啊!

    先说Paramiko模块是为了以后做监控软件的开发做准备,所以这里先说用Paramiko模块连接远程主机,再介绍用Paramiko模块作远程文件传送。

    主要内容是下面几项:

    Paramiko模块是第三方库,所以需要先进行安装,安装的过程可以看一位网友的文章http://www.cnblogs.com/xia520pi/p/3805043.html,这里就不作记录了。

1.Paramiko SSH连接远程主机

(1)使用用户名密码连接远程主机    

    程序代码及注释如下:

    关于sys.argv[]方法的使用,可以看这里:http://xpleaf.blog.51cto.com/9315560/1700811

    下面演示一下执行结果,这里我有一台同网段的主机,IP地址为:192.168.1.124,如下:

    返回的数据即是远程主机的命令执行结果。

(2)使用key连接远程主机

    与(1)并没有多大区别,只是认证方式为使用key,因此代码中不需要写密码,先给出代码及注释:

    使用上面的程序前,先说说如何生成私钥和公钥(对称与非对称加密,公钥加密,私钥解密等的原理,这里就不说了),同时也把公钥发送给认证方(远程主机):

1)被认证方生成私钥和公钥

2)将公钥发送给认证方(远程主机)

    完成了上面的步骤后,就可以连接远程主机并执行命令了:

    

2.Paramiko SFTP传送文件

    代码及注释如下:

    演示如下:

    这里FTP客户端有文件ssh1.py,FTP服务端(192.168.1.124的主机)的/tmp目录下有hello.txt文件,需要将ssh1.py上传到服务端,将hello.txt下载到客户端的当前目录。

1)运行程序

如果没有错误就不会有任何提示。

2)客户端下查看下载的文件

3)服务端下查看上传的文件

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: