gpt4 book ai didi

Windows系统下安装Python的SSH模块教程

转载 作者:qq735679552 更新时间:2022-09-29 22:32:09 28 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章Windows系统下安装Python的SSH模块教程由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

Python中使用SSH需要用到OpenSSH,而OpenSSH依赖于paramiko模块,而paramiko模块又依赖于pycrypto模块,因此要在Python中使用SSH,则需要先安装模块顺序是:pycrypto -> ecdsa -> paramiko 。

1、安装pyCrypto 。

安装这个比较麻烦,需要本地编译,要装vs或gcc还有一堆配置,还不一定能编译成功。(网上能搜到安装步骤) 建议直接下载已编译版: http://www.voidspace.org.uk/python/modules.shtml#pycrypto 直接下载并安装既可。 (注:crypto有java和C++版) 。

2、安装ecdsa 。

看很多博客没有提到这个库,但我执行paramiko时,提示找不到ecdsa模块。 下载:https://pypi.python.org/pypi/ecdsa/0.9 ,解压到一个目录,目录中有一个setup.py。 安装比较简单,windows下直接在刚才解压后的目录执行:python setup.py install 。

3.安装paramiko 。

与安装ecdsa类型,只是打开下载页面很慢。。.

下载: https://github.com/paramiko/paramiko#, 。

安装步骤同ecdsa 。

注:1、所有另外安装的第三方库,如果不特指定安装后库目录的话,将默认保存到 %PYTHON_HOME%\Lib\site-packages下.

2、python大小写敏感,对模块名也是.

3、Crypto可以提供常见的加解密算法,如:RSA、RC4、DSA、DES 。

测试代码:

复制代码 代码如下:

#!/usr/bin/python # -*- coding:utf-8 -*- # cp@chenpeng.info 。

  。

import paramiko 。

def MAIN()

    host = “10.1.1.1″     port = 22     user = “root”     pswd = “111222333″ 。

    ssh = paramiko.SSHClient()     ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())     ssh.connect(host, port, user, pswd)     stdin, stdout, stderr = ssh.exec_command(‘ifconfig')     print stdout.read()     ssh.close() # 。

if __name__=='__main__':     try:         MAIN()     except Exception,e:         print e 。

  输出如下:

  。

Windows系统下安装Python的SSH模块教程

目前主要用于批量执行多个服务器的ssh命令,批量维护比较方便.

下面是两种使用paramiko连接到linux服务器的代码 。

方式一:

复制代码 代码如下:

ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect("某IP地址",22,"用户名", "口令")

上面的第二行代码的作用是允许连接不在know_hosts文件中的主机 。

  。

方式二:

复制代码 代码如下:

t = paramiko.Transport(("主机","端口"))
t.connect(username = "用户名", password = "口令")

如果连接远程主机需要提供密钥,上面第二行代码可改成:

复制代码 代码如下:

t.connect(username = "用户名", password = "口令", hostkey="密钥")

例子:

复制代码 代码如下:

#!/usr/bin/python  
import paramiko
 
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect("某IP地址",22,"用户名", "口令")
stdin, stdout, stderr = ssh.exec_command("你的命令")print stdout.readlines()
ssh.close()

下载linux服务器上的文件 。

复制代码 代码如下:

#!/usr/bin/python  
import paramiko
 
t = paramiko.Transport(("主机","端口"))
t.connect(username = "用户名", password = "口令")
sftp = paramiko.SFTPClient.from_transport(t)
remotepath='/var/log/system.log'
localpath='/tmp/system.log'
sftp.get(remotepath, localpath)
t.close()

上传文件到linux服务器 。

复制代码 代码如下:

#!/usr/bin/python  
import paramiko
 
t = paramiko.Transport(("主机","端口"))
t.connect(username = "用户名", password = "口令")
sftp = paramiko.SFTPClient.from_transport(t)
remotepath='/var/log/system.log'
localpath='/tmp/system.log'
sftp.put(localpath,remotepath)
t.close()

最后此篇关于Windows系统下安装Python的SSH模块教程的文章就讲到这里了,如果你想了解更多关于Windows系统下安装Python的SSH模块教程的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com