在本模块中,我们将学习如何在 Ubuntu/Debian 机器上通过 SSH 以 root 身份登录。 出于管理原因,通常需要以 root 身份通过 SSH 连接到服务器。 这在大多数机器上默认是禁用的,但在本文中,我们将一步一步地讨论这一点。
在 Ubuntu Linux 上通过 SSH 以 root 身份登录的步骤
让我们回顾一下使用 SSH 服务器登录到我们的 Ubuntu 机器的步骤。 在接下来的步骤中,您将以 root 用户身份登录,因此建议您在运行任何特定命令时采取预防措施。
步骤 1:在目标上安装 SSH 服务器
首先,我们需要确保在我们的目标机器上安装并运行了一个 ssh-server。 检查我们是否有 SSH 服务器 安装在我们的目标机器上,我们可以输入:
$ apt-cache policy openssh-server
如果我们没有 openssh-服务器 安装,我们会得到:
openssh-server: Installed: (none) ..........
在这种情况下,安装 openssh-服务器 使用 apt 命令,如下所示:
$ sudo apt install openssh-server
第 2 步:启用 SSH 服务
一旦我们有一个 SSH 服务器 安装在我们的机器上,我们现在需要启用它的服务。 在某些系统上,一旦我们安装了它就会启用 SSH 服务器 包裹。 我们可以检查它是否正在运行:
$ systemctl status ssh
如果服务关闭,我们会得到如下信息:
ssh.service - OpenBSD Secure Shell server Loaded: loaded (/lib/systemd/system/ssh.service; disabled; vendor preset: disabled) Active: inactive (dead) Docs: man:sshd(8) man:sshd_config(5)
正如我们所看到的,目前该服务是 inactive
因此我们需要先启用它:
$ sudo systemctl enable --now ssh
现在检查服务的状态,我们应该发现以下内容:
ssh.service - OpenBSD Secure Shell server Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: disabled) Active: active (running) since Fri 2021-02-12 04:22:47 IST; 1s ago Docs: man:sshd(8) man:sshd_config(5)
一旦我们完成了这些,我们就准备好进入下一步了。
第 3 步:编辑配置文件
此时,如果我们尝试通过 SSH 以 root 身份登录,即使我们提供正确的密码,我们也会收到错误消息。
[email protected]'s password: Permission denied, please try again. [email protected]'s password: Permission denied, please try again. [email protected]'s password: [email protected]: Permission denied (publickey)
要解决此问题,请打开 /etc/ssh/sshd_config 与您最喜欢的编辑器和 sudo 特权。 在那里我们找到以下两行:
# PermitRootLogin prohibit-password ..... ..... # PubkeyAuthentication yes
将这些行更改为:
PermitRootLogin yes ..... ..... PubkeyAuthentication yes
Save 并退出文件。 至此,我们终于为最后一步做好了准备。
第 4 步:重启 SSH 服务器
对上述配置文件进行必要的更改后,重新启动 SSH 服务器 和 :
$ sudo systemctl restart ssh
完成后,我们现在可以使用密码或 私钥 像这样 :
$ ssh [email protected]
结论
因此,我们现在可以通过 SSH 以 root 身份登录。 但是,需要注意的是,在服务器上启用 root 登录被认为是不安全的做法。 如果必须启用 root 登录,请确保您有一个非常强的密码,以防止其他用户/黑客进行不必要的 root 访问。