ssh:允许root无需密码登录

ssh:允许root无需密码登录

我想使用 root 帐户通过 ssh 无需密码登录。我的 /etc/ssh/sshd_config 文件有问题。我设置了:允许无密码登录StrctMode 没有但它不起作用(我必须输入密码才能输入密钥)

我有 Ubuntu 16.04。

答案1

首先,“PermitRootLogin without-password”选项并没有像你想象的那样。该选项不允许你在没有密码的情况下登录,而是允许你通过除密码验证之外的任何方法以 root 身份登录。

通常这将是 ssh 密钥,但可以包括其他方法,例如 kerberos。

其次,我强烈建议您继续使用带密码的密钥以 root 身份登录。如果您不想每次都输入密码,请将其添加到 ssh 代理。在命令行上,这将是ssh-add ~/.ssh/key_name。这是一次性输入您的密钥密码,随后您无需输入密码。

执行上述命令后,你只需

ssh root@server

如果您想要一个没有密码的密钥,请在客户端机器上创建一个具有空密码的新密钥。

ssh-keygen

当它要求您输入密码时,只需按下Enter按键而无需输入密码。

我建议您给它起一个名字,而不是使用默认值。

您使用以下命令传输密钥ssh-copy-id(您需要以 root 身份登录服务器并使用密码来传输密钥)。

ssh-copy-id -i ~/.ssh/your_key.pub root@server

然后你可以不用密码 ssh 登录

ssh -i ~/.ssh/your_key root@server

一旦密钥起作用,请继续并再次禁用密码验证。

相关内容