需要用SSH连接** root @ my-server-ip **

我有一个使用Ubuntu 14.04的VPS。 我需要通过SSH以root用户身份登录我的服务器。

我为root设置了密码: sudo passwd root
然后启用它: sudo passwd -u root
然后重新启动我的vps: sudo reboot

但我仍然无法与root用户连接。 如何以root身份启用ssh登录?

/ etc / ssh / sshd_config中Ubuntu 14.04的默认值是

 PermitRootLogin without-password 

禁止使用密码validation进行root登录。 这是一个好主意,因为针对root用户的暴力登录尝试非常常见。

要以root身份登录,我建议设置基于密钥的SSH登录 。 另一个(危险的!)可能性是将选项更改为PermitRootLogin yes

这不能直接回答问题,但如果您的意图只是远程管理您的计算机,通常认为以非root用户身份登录是更好和更安全的,然后在您启动会话后提升您的权限服务器。

换句话说,您可能希望以自己的身份登录(您自己的不同用户名和帐户),然后运行sudo bash甚至su并在登录后以root身份进行身份validation。您还可以预先添加大多数命令使用sudo使该命令以root的权限级别运行,例如:

sudo cp /etc/configthing.conf /etc/configthing.conf.orig

sudo rm -i /var/log/syslog.3.gz

如果您坚持必须以root用户身份登录,我建议您以普通用户身份登录并运行

 sudo tail -f /var/log/auth.log 

然后(不关闭该会话),尝试通过SSH以root身份登录并观察第一个会话中出现的身份validation错误消息。

您应该能够找出无法以root用户身份登录的原因,否则发布/ etc / ssh / sshd_config可能会更快地为您提供答案。

网上有很多例子,所以我不再重复了。

他们没有说的一件事是你需要:

 ssh-add [path_to_key] 

为密钥使用自定义名称(非默认值)时。

如果您坚持只使用密码而不是公钥 – 私钥对:

 ssh root@server-ip-or-hostname 

并输入你的通行证。