我安装了 SuSE10 SP2。我已启动 ssh 守护程序,并且能够在服务器上本地登录,但当我尝试使用 putty 进行远程连接时,出现连接被拒绝错误。我已禁用 suse 上的防火墙。而且我能够远程 telnet,但 ssh 却被拒绝了。
我是否遗漏了一些 ssh 配置?
请帮忙。
亲切问候 jc
答案1
我们将需要更多信息,例如 sshd_config(例如,/etc/ssh/sshd_config)文件的内容,以及服务器 IP 表的状态(“iptables -L”以 root 身份或通过 sudo 运行)。
过去,有几件事对我很有用:
您的计算机和服务器之间有路由器吗?路由器是否阻止了端口 22?您的 ISP 是否阻止了端口 22?
通过更改 sshd 配置文件中的 Port 指令并重新启动 sshd 守护程序来尝试另一个端口:
端口 2222
您是否使用 TCP 包装器(例如,您在 /etc/hosts.allow 中看到什么)?这与防火墙无关。
正如之前的用户提到的,您是否尝试以 root 身份登录(不推荐,但您需要“PermitRootLogin yes”)?
答案2
我也遇到了同样的问题。根据tcpdump
报告,数据包通过端口 22 到达主机。将sshd
服务器置于调试模式,没有收到任何请求。
原来是防火墙挡住了它。雅斯特要解决这个问题。
答案3
如果您尝试登录“root”帐户,您可能需要将“PermitRootLogin”选项更改为“是”(在 sshd_config 中)。还可以尝试使用调试运行 ssh(例如 ssh -vvv ...),也许您会在那里找到一些提示。您检查过系统日志吗?
答案4
检查防火墙配置。您的服务器可能阻止了入站连接尝试。
具体来说,请检查 iptables 的配置。确保它允许端口 22 上的 TCP 连接。