尝试 ssh root,为什么在 16.04 中权限被拒绝?

尝试 ssh root,为什么在 16.04 中权限被拒绝?

我正在尝试在 16.04 中设置 root 帐户之间的无密码 ssh(Hadoop 安装所需)。我通过sudo su - root和为 root 设置了密码passwd

当我尝试例如

ssh -l root slave3或者ssh-copy-id -i $HOME/.ssh/id_rsa_root.pub root@master

我明白了

Permission denied, please try again.

我已尝试了所有能找到的建议,即对 /etc/ssh/sshd_config 进行以下编辑(一次一个):

PermitRootLogin without-password 
PermitRootLogin yes 
RSAAuthentication yes
PubkeyAuthentication yes
#StrictModes yes
UsePAM no
AllowUsers root hduser

每次都这样sudo service ssh reload,但我仍然被拒绝许可。任何帮助都非常感谢。

答案1

在 Ubuntu 中,默认的 SSH 策略是“拒绝直接通过 SSH 进行 root 登录,除非通过 SSH 密钥身份验证。”这是通过 行完成PermitRootLogin without-password/etc/ssh/sshd_config

您可以通过将该行更改为 来启用通过 SSH 进行的 root 密码登录PermitRootLogin yes。但是我必须提醒您 - 这允许通过 Internet 暴力破解密码root,这会使您的服务器面临风险 - 您可能希望考虑阻止所有 SSH 流量,但来自已知“良好 IP 源”的流量除外,您信任这些 IP 的源 IP,以减少 root 登录时被暴力破解的机会。如果无法做到这一点,您应该强烈考虑为 root 帐户设置 SSH 密钥身份验证,而不是密码身份验证。

相关内容