使用Python的Paramiko模块登陆SSH

paramiko是用Python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。
python的paramiko模块可以方便的实现ssh登录,并执行命令。

pycrypto 与 paramiko下载到安科网资源站下载:

------------------------------------------分割线------------------------------------------

具体下载目录在 /2017年资料/1月/26日/使用Python的Paramiko模块登陆SSH/

------------------------------------------分割线------------------------------------------

1. paramiko模块安装

1.1安装pycrypto库

pycrypto库的主页在这里:https://www.dlitz.net/software/pycrypto/

pycrypto库安装方法

python setup.py build && python setup.py install

1.2安装paramiko

paramiko库的主页在这里:https://pypi.python.org/pypi/paramiko
paramiko库的安装方法超级简单。

python setup.py build && python setup.py install

2.简单使用

2.1 执行远程命令

#!/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()

2.2 上传文件到远程

#!/usr/bin/python
    import paramiko

    t = paramiko.Transport(("某IP地址",22))
    t.connect(username = "用户名", password = "口令")
    sftp = paramiko.SFTPClient.from_transport(t)
    remotepath='/tmp/test.txt'
    localpath='/tmp/test.txt'
    sftp.put(localpath,remotepath)
    t.close()

2.3 上传文件到远程

#!/usr/bin/python
    import paramiko

    t = paramiko.Transport(("某IP地址",22))
    t.connect(username = "用户名", password = "口令")
    sftp = paramiko.SFTPClient.from_transport(t)
    remotepath='/tmp/test.txt'
    localpath='/tmp/test.txt'
    sftp.get(remotepath, localpath)
    t.close()

3.高级用法

通常需要对多个服务器或者虚拟机进行管理,可以采用批量的方式进行。

 

相关推荐