请问怎样限制被赋予sudo权限的非root用户编辑/etc/sudoers文件?

centos7系统,非root用户被赋予sudo权限后,虽然在/etc/sudoers文件中限制了该用户使用visudo命令的权限(即设置了“!/usr/sbin/visudo”),但我发现该用户通过执行sudo vim /etc/sudoers,仍然可以打开sudoers文件进行修改,然后再通过vim的强制保存命令“:w!”还可以保存修改(注意:这个过程中/etc/sudoers文件的权限一直为440,并没有修改过)。

这显然是一个很大的安全隐患!在网上搜了一圈,也没有找到限制非root用户通过上述方法修改并保存/etc/sudoers文件的办法。

难道这么大一个安全隐患,竟然没办法堵上吗?

阅读 5.7k
2 个回答

我管理部门服务器都是尽量不给管理员权限,因为一般操作都不需要。普通用户实在需要的操作,才写在sudoers文件里,比如挂载,只允许执行sudo mount.cifs xxx命令。


所以你的sudoers配置应该逐个添加允许的操作,而不是反过来设置不允许的操作。你的配置的本意是不允许更改sudoers文件,这需要禁掉的东西太多了。比如组员可以用sudo修改文件所有者,然后不用sudo就能修改文件;或者修改root的密码;或者sudo su root。很难考虑全的,所以建议正向配置允许执行的命令。

你给了别人 sudo 权限,就意味着你信任他对系统做任何事情,跟给了 root 账号没太多区别。

如果你不信任他,就不要给 sudo 权限。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题