为 root 设置 SSH 密钥(技术上是 ed25519 密钥)。在我想要登录的服务器上创建密钥对,并将公钥放入我想要连接的服务器的授权密钥文件中。
我可以使用 ssh 密钥以我的用户(普通用户)身份登录,但不能以 root 用户身份登录。
文件权限:
[root@MyTargetServer .ssh]# ls -hal
total 16K
drwx------. 2 root root 75 Jan 4 23:52 .
dr-xr-x---. 4 root root 4.0K Oct 20 14:22 ..
-rw-r--r--. 1 root root 1.2K Jan 4 23:52 authorized_keys
-rw-r--r--. 1 root root 171 Oct 20 14:22 known_hosts
我确保修改了 /etc/ssh/sshd_config 以包含:
PermitRootLogin yes
我尝试重新启动该服务并想知道是否是这个问题?
sshd.service - OpenSSH server daemon
Loaded: loaded (/usr/lib/systemd/system/sshd.service; disabled; vendor preset: enabled)
Active: activating (auto-restart) (Result: exit-code) since Thu 2023-01-05 00:06:14 EST; 28s ago
Docs: man:sshd(8)
man:sshd_config(5)
Process: 14165 ExecStart=/usr/sbin/sshd -D $OPTIONS $CRYPTO_POLICY (code=exited, status=255)
Main PID: 14165 (code=exited, status=255)
Jan 05 00:06:14 MyTargetServer systemd[1]: sshd.service: Main process exited, code=exited, status=255/n/a
Jan 05 00:06:14 MyTargetServer systemd[1]: sshd.service: Failed with result 'exit-code'.
Jan 05 00:06:14 MyTargetServer systemd[1]: Failed to start OpenSSH server daemon.
但是 - 在执行所有这些操作时,我仍然可以通过 ssh 进入计算机,并且可以使用普通用户使用 ssh 密钥登录。所以我认为问题是我无法以 root 身份 ssh 进入。
我已经让它与其他服务器一起工作,但没有发现那些服务器和这些新服务器之间的差异。
答案1
我发现我们有一个第三方软件,它还有另一个 sshd_config 文件,需要修改才能允许 root 登录。谢谢您的帮助!