CSDN-Ada助手 2023-04-03 11:30 采纳率: 1.6%
浏览 125
已结题

SSH登录失败,报错:Failed to start OpenBSD Secure shell server _

该问题来自社区帖: https://bbs.csdn.net/topics/614413739

一、问题描述

某次,业务人员反馈,某主机ssh无法登陆,检查发现ssh连接直接报Connection closed by foreign host,后自动断开,VNC登录后重启sshd服务失败;报错如下:

 二、分析处理

根据报错,执行:sshd -t,报错如下:

通过以上,可判断该目录权限过大导致了服务安全排斥;修改/var/run/sshd/目录权限为754,重启服务,正常。

 

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-04-03 22:19
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:
    • 这个问题的回答你可以参考下: https://ask.csdn.net/questions/696390
    • 这篇博客你也可以参考下:SSH Secure Shell 安装出现问题,报error number,改换openssh的安装
    • 除此之外, 这篇博客: 基于SSH端口转发实现内网客户机的远程中的 二、通过OpenSSH的端口转发实现 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

      主要思路是利用SSH的端口远程转发功能,将现场客户机的远程桌面端口、或者Teamviewer端口转发到服务器指定端口,此时远程服务器即实现远程到现场。

      本文的目的是想聊聊端口转发在物联网项目上的实际应用,端口转发的命令很简单,网上资料也很多,此处不再赘述。

      比如现场安装了OpenSSH后,执行如下命令,密码确认通过后即可打开端口转发。

      ssh -C -g -NR 13389:127.0.0.1:9880 Administrator@192.168.1.240
      

      直接通过SSH命令打开或关闭端口转发,都必须有人在现场机上操作,既不方便,也不现实。我想实现无人值守,有问题能够及时远程,不需要人工干预。只能从程序角度出发,改造现有与Iot平台通讯的MQTT程序,增加远程端口转发参数的下发与响应,即可实现通过Iot平台打开或关闭指定设备的端口转发功能。

      使用OpenSSH有个问题,需要两个步骤,先执行转发命令,再输入密码确认通过后,端口转发才真正打开。经测试无法在C#里通过Process实现密码的输入,看来这条路走不下去了。

      后来想到既然使用微软全家桶开发,何不在Nuget上找找有没有相应的开发库呢?于是根据下载量找到了SSH.NET这个库,没有详细的文档,看了下Demo,用法很简单,不清楚有没有别的坑,但可以满足我的需求。

      GitHub - sshnet/SSH.NET: SSH.NET is a Secure Shell (SSH) library for .NET, optimized for parallelism.

    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 系统已结题 4月11日
  • 创建了问题 4月3日