visudo限制普通用户的特权操作sudo

在ubuntu系统中,一般常用sudo命令来临时获得root权限执行一些特权命令。这很方便,但是也有一个问题: 普通用户可以通过sudo命令完成用户的增删和密码的更改,甚至是对root用户的密码更改!!!
如:

xxx@yyy$:sudo passwd root
Input the new UNIX pass word:

这样,就可以直接越过root直接修改root 的密码。这是非常危险的。

解决方法

在这里可以通过 /etc/sudoers 文件限制

$:sudo visudo

注意,这命令在最后修改sudoers文件中,也要加以限制,否则还可以通过这个命令恢复。

在这个文件中修改默认的以下两行:

%admin ALL=(ALL) ALL
%sudo ALL=(ALL) ALL

为以下:

%admin ALL=/usr/sbin/*,/sbin/*,/usr/bin/*,!/usr/bin/passwd,!/usr/sbin/visudo,!/usr/sbin/useradd,!/usr/sbin/userdel
%sudo  ALL=/usr/sbin/*,/sbin/*,/usr/bin/*,!/usr/bin/passwd,!/usr/sbin/visudo,!/usr/sbin/useradd,!/usr/sbin/userdel

上述修改的目的就是,限制用户组admin,sudo禁止使用命令passwd,visudo,useradd,userdel等命令。

猜你喜欢

转载自blog.csdn.net/u014132720/article/details/53008911