问题是我真的不知道我是否与 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.defs
或pam
config 来限制哪些用户可以使用该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