ssh 报Connection closed by 127.0.0.1 port 的解决办法

起了一个虚拟机,想要通过ssh从host连接。

起虚拟机时加上如下命令行:

-netdev user,id=net0,hostfwd=tcp::2222-:22 \
        -device virtio-net-pci,netdev=net0 \

这样就将host的2222端口转发给虚拟机的22端口。

ssh root@localhost -p 2222

得到Connection closed by 127.0.0.1 port 2222的错误。可能的问题在于:

1 虚拟机里的sshd服务没有正常运行,可通过命令查看systemctl status ssh, 如果没有开启就使用命令:systemctl start ssh

2网络端口没有正常监听,在host上使用命令:netstat -nlt 查看是不是存在0.0.0.0:2222的类似条目。

3虚拟机的ssh配置问题。

我在虚拟机中运行systemctl status ssh,得到一大堆error

Jan 10 03:49:56 ubuntu sshd[1195]: error: key_load_private: invalid format
Jan 10 03:49:56 ubuntu sshd[1195]: error: key_load_public: invalid format
Jan 10 03:49:56 ubuntu sshd[1195]: error: Could not load host key: /etc/ssh/ssh_
Jan 10 03:49:56 ubuntu sshd[1195]: error: key_load_private: invalid format
Jan 10 03:49:56 ubuntu sshd[1195]: error: key_load_public: invalid format
Jan 10 03:49:56 ubuntu sshd[1195]: error: Could not load host key: /etc/ssh/ssh_
Jan 10 03:49:56 ubuntu sshd[1195]: error: key_load_private: invalid format
Jan 10 03:49:56 ubuntu sshd[1195]: error: key_load_public: invalid format
Jan 10 03:49:56 ubuntu sshd[1195]: error: Could not load host key: /etc/ssh/ssh_
Jan 10 03:49:56 ubuntu sshd[1195]: fatal: No supported key exchange algorithms [

这是我在host连接虚拟机的时候sshd端报出的错误日志。这些文件都存在于/etc/ssh/ 下面,

参照Google的办法:

sudo rm /etc/ssh/ssh_host_*
sudo dpkg-reconfigure openssh-server

 注意这是在虚拟机中的操作。

接着就可以在host上ssh上虚拟机了。

另外ssh -v ip是一个不错的调试工具,可以打出ssh连接的日志。

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
SQLserver2000〔Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server不存在或访问被拒绝 分类: Technology2007-04-20 19:076126人阅读评论(1)收藏举 SQLserver2000,打开服务管理器时出现错误:〔Microsoft][ODBC SQL Server Driver][DBNETLIB]SQL Server不存在或访问被拒绝" (一台机器即作服务器又作客户机,软件连接中出现: [DBNETLIB][ConnectionOpen(connect()).]SQL Server 不存在或拒绝访问。 现从网上查阅问题解决办法有如下几种: (A)1:你如果是独立上网的请把21端口打开.局域网把1433端口打开就可以了. 2;关闭防火墙! (B)把数据库连接的 SqlLocalName="(local)" 的(local) 改成 IP试试。可以把(local) 该成127.0.0.1,或者改成外网IP (C)打开服务,暂停全文检索及sql server服务 开启sql server服务 再开启全文检索服务 (D)SQL Server 右键属性==>安全选项中的“所有权链接:”“允许跨数据库所有权链接”前面的勾要勾上(此操作需要重起SQL Server)。 1、先保证ping通 2、在dos下写入telnet ip 1433不会错 3、用ip连如企业管理器: 企业管理器-->右键SQlserver组-->新建sqlserver注册-->下一步-->写入远程实例名(IP,机器名)-->下一步-->选Sqlserver登陆-->下一步-->写入登陆名与密码(sa,pass)-->下一步-->下一步-->完成 4、如果还不行: sqlserver服务器-->开始菜单-->SQLserver-->服务器网络实用工具-->启用 WinSock代理-->代理地址:(sqlserver服务器IP)-->代理端口-->1433-->OK了 5、如果还不行: sqlserver客户端-->开始菜单-->SQLserver-->客户端网络实用工具-->别名-->添加-->写入别名如"大力"-->"网络库"选tcp/ip-->服务器名称写入远程ip或实例名-->OK了
kex_exchange_identification: Connection closed by remote host Connection closed by 127.0.0.1 port 22是一个错误消息,它表示在连接远程主机时发生了连接关闭的情况。这个错误通常出现在通过SSH协议连接到远程主机时。引用和引用中的错误消息都包含了这个错误。根据引用中的输出信息,我们可以看到连接建立成功,但是在交换密钥标识时出现了连接关闭的情况。这可能是由于网络问题、权限问题或存储库不存在等原因引起的。 要解决这个问题,你可以尝试以下几个步骤: 1. 检查网络连接:确保你的网络连接正常,没有阻塞或限制SSH连接的问题。 2. 检查权限:确保你有正确的访问权限,包括使用正确的用户名和密码、公钥认证或访问令牌。 3. 检查存储库是否存在:确认你正在连接的存储库存在并且你有权限访问它。 4. 使用不同的协议和端口:尝试使用不同的协议(如HTTPS)或不同的端口来连接远程主机。 5. 检查SSH配置:检查你的SSH配置文件是否正确,并确保没有任何冲突或错误的配置。 根据你提供的信息,由于错误消息中显示的远程主机IP地址是127.0.0.1,这个IP地址代表本地主机。可能有一些本地配置问题导致连接关闭。你可以尝试检查和修复本地的SSH配置和网络设置。如果问题仍然存在,建议查阅相关的SSH文档或咨询技术支持以获取进一步的帮助。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Git通过SSH拉取错kex_exchange_identification](https://blog.csdn.net/qq_43657722/article/details/127388152)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [kex_exchange_identification: Connection closed by remote host Connection closed by 198.18.0.114 port](https://blog.csdn.net/a12355556/article/details/127691245)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值