Answers:
马上想到的是,特权用户能够以root身份在启动时运行东西,这对于破解者来说是合乎需要的:
如果您的弱势用户受到某种方式的威胁,这可能是可能的,也许是通过其他服务(http / etc)。大多数攻击者会快速运行一个ls
或多个对象find
,/etc
以查看是否存在这种可能性,他们使用各种语言编写的shell使得这一点变得简单。
如果您主要通过SSH远程管理服务器,除非您检查init脚本,否则很有可能甚至看不到此信息,因为在启动时将看不到输出(尽管您应该使用一些根据已知哈希值检查这些脚本的哈希值,以查看是否已更改某些内容或版本控制软件等)
您绝对不希望发生这种情况,root确实需要拥有该初始化脚本。您可以将开发用户添加到sudoers列表中,以便足够方便地更新脚本,但是我建议您不要对init.d中的任何内容进行特权写访问。
除了Tim Post的观点之外,我还补充说,对于需要多个人将更改推送到服务器上的设置,您应该考虑使用某种配置管理系统。
例如,如果使用puppet,chef或cfengine,则可以让相关用户在本地编辑文件,然后使用配置管理将更改推出。究竟如何设置这当然取决于你使用哪个系统,但正确的建立,将包括版本控制软件,因此很容易恢复到一个配置文件时(注的早期版本:当,没有如果!)有人弄错了。它还将使您更轻松地将配置复制到单独的测试系统等。