允许一个组编辑一些/ etc文件的最好方法

我们有一个名为JBossAdmins的组,这个组的用户必须在RHEL 6上编辑一些/ etc文件:

  • 在/ etc / httpd的/ *
  • 在/ etc / JAVA / *
  • 在/ etc / JBoss的/ *

我的第一个想法是提供以下sudo权限:

%JBossAdmins ALL=(root) /bin/vi /etc/httpd/* %JBossAdmins ALL=(root) /bin/vi /etc/java/* %JBossAdmins ALL=(root) /bin/vi /etc/jboss/* 

很显然,用户现在可以以root身份启动vi,然后通过执行fe :e /etc/passwd来编辑任何文件

所以sudo不是一个好主意。

然后进入我的想法做chgrp JBossAdmins -R path ,然后chmod g+rw -R path

但是我不太确定这是否是一个好主意。

考虑到安全性的影响,允许一组用户编辑一些/ etc文件的最佳实践是什么? 有没有比sudo或chgrp / chmod更好的select?

vi给某人sudo总是一个坏主意。 通过发出:shell命令,他们可以通过root-shell跳出vi。 你不要那个。

替代你可能sudoedit 。 然后,您可以在sudoers -file中为sudoedit授予您的用户/组权限:

 %JBossAdmins <hostname>: sudoedit /etc/httpd/* %JBossAdmins <hostname>: sudoedit /etc/java/* %JBossAdmins <hostname>: sudoedit /etc/jboss/* 

你可以使用acls来做类似的事情

  setfacl -mg:JBossAdmins:rw /path/to/file 

这将授予JBossAdmins组中任何人对特定文件的r / w权限。