无法以root身份进行SSH登录

我正在使用Ubuntu 14.04服务器上的默认安装的openssh-server。我可以像平常一样通过控制台以root身份连接,使用我的用户名和密码。然而,当我尝试使用相同的用户名/密码进行SSH连接时,我反复收到访问被拒绝的错误。/var/log/auth.log报告了Failed password for root from port ssh2,但是我输入的密码是正确的。
为什么即使用户名和密码都正确,我也无法通过SSH连接到服务器呢?

可能是需要使用SSH连接为root@my-server-ip的重复问题。 - Eliah Kagan
@EliahKagan 呵呵,我在它得到回答之前已经报告了这个问题的重复。:D - muru
@muru 我认为不管哪种方式都可以,但是这个似乎更广泛一些(更一般),有更多的答案,并且有答案提供了更广泛的解决方案。无论哪种方式,它们都已关闭,一个答案可以合并到另一个中(或者不合并)。 - Eliah Kagan
可能是如何在Ubuntu 14.04上启用ssh root访问权限的重复问题。 - That Brazilian Guy
如果您的服务器以任何方式面向外部,请不要将SSH作为root启用。这样做只会招来麻烦。 - Robby1212
3这个回答解决了您的问题吗?root@localhost对SSH连接的权限被拒绝 - muru
3个回答

在Debian(以及Ubuntu)中,OpenSSH服务器的默认设置是禁止使用密码登录root账户,只允许使用密钥登录。请修改/etc/ssh/sshd_config文件中的这一行:
PermitRootLogin without-password

PermitRootLogin yes

重新启动SSH服务器:
sudo service ssh restart

啊哈,就是这样!谢谢你,我非常感激! - vaindil
2@Vaindil 但是真的,正如gregory.0xf0所说,如果你必须远程以root身份登录,使用基于密钥而不是密码的身份验证会更好。 - Eliah Kagan
@Vaindil 我赞同 EliahKagan 和 gregory.0xf0 的观点,基于密钥的身份验证优于基于密码的身份验证。如果可以的话,请切换到基于密钥的身份验证。 - muru
顺便说一句,通过SSH或GUI允许root登录是不好的做法,你只有在sudo被禁用的情况下才需要root登录。 - Thomas Ward
1如果还是不起作用,请尝试为root设置密码。对我来说,这样做有帮助:sudo passwd root - kkochanski
是的,我完全同意上面的帖子:最好只使用密码登录用户帐户一次进行ssh-copy-id设置密钥。然后使用ssh连接到用户帐户,接着使用sudo。如果你真的想以root身份登录,你应该设置密钥。 - Martin W
如果需要的话,您可能需要取消注释该行,方法是删除 # - Bebs
这真是太奇怪了:我其他回答中有一个基本上和这个一样,在此之前一个月就发帖了:https://askubuntu.com/a/497898/158442 我猜它们如此相似,我从未记得自己对同一件事情发表了两个不同的帖子。 - muru
为什么他们的日志完全没有显示这个问题呢?无论是SSHD日志还是auth.log都没有提到,却错误地声称密码不正确。这非常重要,日志需要清晰明确地显示失败的原因,毫不含糊。 - Markus Bawidamann

对我来说,更改工作(Ubuntu 18.04)如下:
  • sudo nano /etc/ssh/sshd_config

  • PermitRootLogin prohibit-password 改为 PermitRootLogin yes
  • PasswordAuthentication no 改为 PasswordAuthentication yes

然后,重新启动SSH服务:
``` sudo service ssh restart ```
谢谢!

你可以在回答中添加:某些默认安装需要直接更改SSH的root密码,就像Kali Rpi一样。 - charles

黑客会试图使用root用户进行暴力破解。如果您打算允许root登录,一定要安装Fail2Ban或类似的软件来防止暴力攻击。同时,请使用一个非常难以猜测的密码,避免使用常见词汇。
正如Vaindil所指出的,基于密钥的登录方式要更加安全可靠。设置起来并不复杂。这里有一个在Windows上使用PuTTY设置基于密钥的登录的链接:https://devops.profitbricks.com/tutorials/use-ssh-keys-with-putty-on-windows/。当然,如果您使用其他环境进行登录,也有很多其他的方法可供选择。