su 命令是一个特殊的命令,它允许用户以另一个用户和组的身份运行命令。它还允许你切换到 root 帐户或另一个指定的用户帐户。
要切换到另一个用户帐户,用户可以从他们当前的登录会话中运行 su 命令,如下所示,用户可以通过su切换用户:
[bob@localhost ~]$ su - user01 Password:
默认情况下,所有用户都可以使用 su 命令。我们可以在/etc/sudoers中禁用su命令。
若要切换到 root 帐户,用户必须具有 root 密码。在此示例中,用户正在切换到 root 帐户。
[user01@localhost ~]$ su - Password:
禁用普通用户的 su 访问权限,首先,备份以下/etc/sudoers的原始文件,如下所示:
[bob@localhost ~]$ sudo cp -p /etc/sudoers /etc/sudoers.back [sudo] password for bob:
使用visudo命令打开sudoers配置文件
[bob@localhost ~]$ sudo visudo
在## Command Aliases部分下面添加如下行:
Cmnd_Alias DISABLE_SU = /usr/bin/su
然后在文件末尾添加以下行,将用户名 bob替换为需要禁用 su 访问权限的用户:
bob ALL=(ALL) NOPASSWD: ALL, !DISABLE_SU
保存退出
使用bob用户验证一下。系统应返回如下错误消息 “Sorry, user bob is not allowed to execute ‘/bin/su – user01’ as root on localhost.localdomain.”
[bob@localhost ~]$ sudo su - user01 Sorry, user bob is not allowed to execute '/bin/su - user01' as root on localhost.localdomain.
还可以禁用用户组的 su 访问权限。例如,要禁用组 wheel 中所有用户的 su 访问权限,可以执行下面命令:
[bob@localhost ~]$ sudo visudo %wheel ALL=(ALL) ALL, !DISABLE_SU
保存退出~
以上就是教你如何在 Linux 中禁止普通用户使用 su 命令的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号