无法通过 SSH 进入 Linux 服务器

无法通过 SSH 进入 Linux 服务器

我可以访问 Ubuntu 服务器 (10.4),但无法通过 SSH 进入。从终端连接超时,从 putty 连接被拒绝。

我已检查 sshd 是否正在运行并在所有接口上监听,iptables 的所有链均为空且默认为 ACCEPT,附加防火墙正在接受端口 22 入站和所有出站。我也无法通过 telnet 进入端口 22。

可能存在什么问题?我该如何解决?

答案1

然后尝试登录控制台:

ssh 本地主机

这将测试主机上的 ssh 守护进程,而不考虑防火墙或其他过滤。

答案2

您正在运行服务器还是其他人在运行?您是否拥有服务器上的 root 访问权限?听起来您可能在服务器端被阻止了。您在客户端能做的事情不多。首先尝试使用“-v”、“-vv”或“-vvv”选项来获取有关正在发生的事情的一些调试信息:

ssh -vv server.name.org

如果这没有帮助,你可以做一个路由追踪nmap在主机上尝试查看是否可以在网络上看到该机器:

traceroute server.name.org
ping server.name.org
nmap -v -A server.name.org

很可能您被 server.name.org 上的防火墙阻止了,并且无法在客户端修复。

您有权访问服务器吗?如果可以,您可以通过禁用防火墙、尝试 ssh,然后重新启用防火墙(所有操作均在服务器上进行)来消除服务器上的防火墙潜在问题:

sudo servce iptables stop; ssh -v localhost; sudo service iptables start

你确定 sshd 进程正在运行吗?尝试查看它是否正在运行:

sudo service sshd status

如果它没有运行你需要启动它:

sudo service sshd start

您可以使用以下方式永久启用它:

sudo chkconfig sshd on

答案3

不知道这是否太晚了,但我通过打开防火墙(UFW)上的端口在 Linux Lite 中修复了这个问题。

sudo ufw allow 22      #replace 22 with whatever port

来源:https://www.linuxliteos.com/forums/network/sshd-or-openssh/msg19245/#msg19245

答案4

我遇到了同样的问题,服务器响应 ping 和登录提示,但不接受连接。

查看所有相关的sshd配置文件,我注意到它缺少/etc/pam.d/sshd配置文件。

由于我有 VM 控制台访问权限,因此我scp通过控制台从另一台服务器复制此配置文件,从而解决了该问题。

从远程服务器复制文件的命令是:

scp -r root@remoteserver:/etc/pam.d/sshd /etc/pam.d/

ssh使用以下命令重新启动服务:

service sshd restart

您现在就可以登录了。

相关内容