使用paramiko模块远程连接遇到paramiko.ssh_exception.NoValidConnectionsError的解决办法

连接时报错paramiko.ssh_exception.NoValidConnectionsError,
解决办法
首先在ubuntu终端上输入:cat /etc/ssh/ssh_config,查看端口是否为22.
然后执行命令:netstat -ntl,查看22端口是否开通
如果没有开通则执行下面命令
1.关闭防火墙,命令:sudo ufw disable

2.安装openSSH,命令:sudo apt install openssh-server openssh-client

3.查看22端口是否打开:netstat -ntl

此时再连接是成功的

代码:

import paramiko

# 创建SSH对象
ssh = paramiko.SSHClient()
# 允许连接不在konw_hosts文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接服务器
ssh.connect(hostname='虚拟机的ip地址',port=22,username='你自己ubantu的用户名',password='密码')

# 执行命令
stdin,stdout,stderr = ssh.exec_command('df')
# 获取命令结果
result = stdout.read()

# 关闭连接
ssh.close()

print(result)
posted @ 2020-09-10 22:12  我在路上回头看  阅读(4758)  评论(0编辑  收藏  举报