无法使用ssh进行远程连接


10

我最近安装了Ubuntu 16.04。我已经安装了ssh服务器,并且sshd服务已启动并正在运行。

我在同一网络中有其他一些PC(Windows,Mac,Ubuntu 14.06),我可以从所有PC上ping Ubuntu PC,但是我无法使用ssh进行连接。

例如,从Windows使用腻子,我会收到“网络错误:连接超时”。

我可以在本地使用ssh和IP进行连接。

对可能发生的事情有任何想法吗?

预先感谢您的帮助!!

贡萨洛


2
我认为您通常会拒绝连接,但是您确定防火墙已关闭以进行测试吗?'sudo ufw

1
嗨,布莱恩,UFW已启用。禁用它可以让我连接,谢谢!!!
贡萨洛

启用后,如果我写“ sudo ufw status”,则不会显示任何规则。您知道为什么没有任何规则可能会拒绝与端口22的连接吗?!
贡萨洛

约翰,腻子保存了设置,是的。但是,任何ssh客户端也会发生相同的情况。该问题与防火墙有关。
贡萨洛

1
@Gonzalo的默认行为是允许传出连接但阻止传入的IIRC-即传入的连接必须通过适当的规则显式启用
Steeldriver

Answers:


18

与其完全关闭防火墙,不如将UFW配置为允许SSH流量:sudo ufw allow ssh或者如果您决定在其他端口上运行SSH:sudo ufw allow 2222/tcp

UFW默认情况下将拒绝所有传入连接并允许所有传出连接。您可以在此处找到有关如何配置UFW的更多信息:https : //help.ubuntu.com/community/UFW


1
绝对应该将其作为接受的答案,就像简单地说“我已禁用防火墙”作为接受的答案一样,这将对阅读它的其他人造成伤害,并且不会偷偷摸摸地发现他们不应该这样做。即使默认为全部阻止,禁用防火墙也绝不是一个好主意。
布鲁斯

这是最好的答案……
PGallagher

4

原来是启用了防火墙。

执行“ sudo ufw disable”后,我可以进行远程连接。

谢谢Brian和您的帮助。

问候,

贡萨洛


1

其他答案指出了大多数原因。我还要补充一个无法ssh的原因。如果通过密码验证方法使用ssh,则可能是因为您的密码不正确。只需更新一个体面的密码,它将起作用。这让我发疯了,发现了...


0

如果您尝试使用公共IP地址进行连接,请尝试端口转发端口22,因为这是您只能使用服务器的本地IP地址连接到它的唯一原因。如果您使用的是ufw防火墙并且启用了ufw防火墙,请确保已执行“ ufw allow 22”。您可以通过运行“ ufw状态”进行检查。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.