sshd 配置中的“PermitRootLogin no”不会阻止 `su -`

sshd 配置中的“PermitRootLogin no”不会阻止 `su -`

问题是我真的不知道我是否与 PermitRootLogin 混淆了或者它工作得不好。我把它放在 sshd_config 中,当我通过 ssh 连接时,我可以这样做su -以获得 root 权限。那么不应该PermitRootLogin no允许我这样做吗?

答案1

PermitRootLogin只配置 root 是否可以直接通过 ssh 登录(例如)。当您使用不同的用户帐户登录时,您在 shell 中执行的任何操作都不会受到 的配置的影响。ssh [email protected]sshd

man sshd_config

 PermitRootLogin
     Specifies whether root can log in using ssh(1).  The argument must be “yes”, “without-password”, “forced-commands-only”, or “no”.  The default is “yes”.
     […]
     If this option is set to “no”, root is not allowed to log in.

但是,您可以使用login.defspamconfig 来限制哪些用户可以使用该su命令:服务器故障:在机器上禁用 su

答案2

用 PermitRootLogin 是的,你可以直接以 root 身份 ssh。

ssh root@destination

如果您想禁用 sudo su 进行 root 访问:

假设您有允许在目的地执行 sudo 的用户(sudoers)列表。该列表保存在 /etc/sudoers 文件中。

1)在/etc/ssh/sshd中允许没有sudo权限的用户使用ssh。 conf: 允许用户 sudoers

2) /etc/ssh/sshd.conf 中的 DenyUsers 指令:DenyUsers nonsudoers

相关内容