前言
众所周知,sudo命令非常方便,而且有一定的优点。比如不需要知道root密码就可以执行一些root的命令。相比于su 必须知道root密码来说,减少了root密码泄露的风险。
但是sudo也是一把非常锋利的双刃剑,需要加以限制,如不加以限制可能会出现如下情况:
sudo passwd root
sudo chown
sudo chmod
sudo crontab -e
等等等等。
所以我们就需要分别对不同的人来做一些sudo的限制。来预防出现类似于root密码被修改,私自添加root用户定时任务,修改权限等等命令。
这种事情太恐怖了,发生的时候,真的会吓出一身冷汗!!
限制方式:
通过 /etc/sudoers 来限制。
ygz1 ALL=(root) !/usr/bin/passwd, /usr/bin/passwd [A-Za-z]*, !/usr/bin/passwd root
在设置值中加上惊叹号“ ! ”代表“不可执行”的意思。因此上面
这一行会变成:可以执行“ passwd 任意字符”,但是“ passwd ”与“
passwd root ”这两个指令例外! 如此一来 ygz1 就无法改变 root
的密码了!这样这位使用者可以具有 root 的能力帮助你修改其他用
户的密码, 而且也不能随意改变 root 的密码!很有用处的!
如图:经过限制后,此用户就无法通过passwd命令修改root密码了。
如果还需要其它的命令限制则可以将命令的绝对路径追加到后面。
结尾:
另外还要吐槽一下,其实现在一小部分安全产品,治标不治本、检测能力弱或者太过极端了。。。
很多事情,明明可以通过黑白名单解决,结果非要一刀切。
而且有的检测根本不严格。检测出来的漏洞哪怕补上了,还是可以绕过,通过其它方式修改密码和权限。。。。。。。。