1.通过Paramiko使用ssh。
paramiko模块遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。跟常用软件xshell 、xftp功能一样,但是可以连接多台服务器,进行复杂的操作。使用paramiko库中的PyCrypto能够让你轻松的使用SSH2协议。
2.安装Paramiko。
cmd中运行下面的命令
pip install paramiko
3.代码。
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import threading
import paramiko
import subprocess
#paramiko支持用秘钥验证来代替密码验证作者推荐秘钥验证本代码为方便用的是密码验证
def ssh_command(ip,user,passwd,command):
client = paramiko.SSHClient()
#实质自动添加和保存ssh服务器的ssh密钥
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
#连接目标ssh服务器
client.connect(ip, username=user, password=passwd)
#打开会话
ssh_session = client.get_transport().open_session()
if ssh_session.active:
#执行命令
ssh_session.exec_command(command)
#返回打印执行命令的结果
print(ssh_session.recv(1024))
return
#函数参数是写ssh服务器的ip地址,账户,密码,和你要执行的命令
ssh_command('0.0.0.0','name','password','id')
让我们通过连接自己的Linux服务器来进行测试,这里多说两句,有的人不知道怎样查看自己Linux的ip和不知道怎样开启ssh服务,只需在终端运行下面的命令来查看和开启。
ifconfig 查看Linux ip地址
service ssh start 开启ssh服务
然后在自己Windows下运行代码,测试结果如下: