我有一个指定的帐户login到Linux主机。 Tomcat正在名为“tomcat”的服务帐户下运行,
我需要定期修改tomcat-users.xml这样的pipe理员function
-rw-------. 1 tomcat tomcat 1671 Mar 25 20:50 tomcat-users.xml
我想审核更改。 我是不是该
使用sudo会打开潜在的configuration错误,使命名用户比我想要的更多的访问,并允许他们使用sudo -i和绕过审计。 更改文件权限扩展谁可以读取文件似乎有风险。
我真的在寻找风险和优势/劣势,我没有在上面讨论,以帮助确定采取的方法,而不仅仅是意见和“我这样做”。
有一个可以信任的审计线索的唯一工作方式是使用最小特权策略,即默认拒绝访问。
如果你使用sudo访问,你肯定会限制用户可以做什么,不能做什么; 但你也需要知道可能适用的警告。
在这种情况下,您的要求是授予一组用户编辑特定文件的权限。
最佳实践规定每个用户都有个人帐户。 这不是要求这些用户属于任何组,因为这已经被sudo覆盖了。
假设你的用户属于operators组,一个sudorule看起来像:
Cmnd_Alias TOMCAT_COMMANDS = sudoedit /path/to/tomcat-users.xml Host_Alias TOMCAT_HOSTS = foo.example.com, bar.example.com Defaults log_host Defaults log_output Defaults syslog_badpri=alert Defaults syslog_goodpri=notice Defaults:%operators editor=/usr/bin/rvim %operators TOMCAT_HOSTS = (tomcat)PASSWD: TOMCAT_COMMANDS
这确保了他们无法使用编辑器,因为他们被迫使用rvim ,并提供了一些理智的默认值来logging他们的活动。 您可以进一步强化sudo策略,并且可以为其添加更多function。 这是一个例子。
另一种实现类似function的方法是对该文件进行版本控制更改,并使用configurationpipe理系统进行pipe理。
RBAC对这些系统是一个广泛的话题,因为它是审计。 收集并分析生成的日志由您决定。