温馨提示×

linux nosuid能否与sudo结合使用

小樊
83
2024-09-21 20:19:45
栏目: 智能运维

在Linux中,nosuid选项通常用于移除文件或目录的setuid位,这样可以防止文件执行者获得root权限

然而,你可以在一个特定的场景下将nosuidsudo结合使用,那就是当sudo配置允许某个用户或用户组无需输入密码即可执行特权命令时。在这种情况下,你可以将该用户或用户组的shell设置为没有setuid位的可执行文件,例如/bin/false。这样,即使他们使用sudo执行命令,也不会获得root权限,因为可执行文件没有setuid位。

要实现这一点,你需要编辑/etc/sudoers文件,找到相应的用户或用户组设置,并添加以下行:

Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
UserAlias       sudoers = user1,user2,user3
RunasAlias      sudoers = ALL
Percent-Group  sudoers = %admin
Defaults        env_reset, !requiretty
Defaults        secure_root_file=/dev/null

然后,将UserAliasRunasAliasPercent-Group中的用户或用户组添加到Defaults secure_path行中。这样,当这些用户使用sudo执行命令时,将会使用/bin/false作为他们的shell,从而避免了获得root权限的风险。

0