安全地为Linux守护进程提供密码

我有一个Linux守护进程访问一些服务(DB等)。 这需要一些密码。 以安全的方式将守护进程的密码最好的方法是什么?

我目前将密码存储在根只读configuration文件中,但依赖权限似乎是不安全的。

我正在考虑在守护进程启动时提示用户input密码,并将密码存储在内存中。 当然这对于一个拥有root用户权限的攻击者来说只是一个小小的障碍,但是至less可以保证备份,快照等等,并且可能会花费一些时间。

其他选项? build议?

有很多方法可以设置,包括使用与密码不同的身份validation方法。

一种方法可能是使用TLS / SSL证书进行连接。 但通常情况下,将密码保存在只读文件中就足够了 – 就像Kondybas所说的那样,如果root账户受到攻击,那么一切都会受到影响….您可能还想让启动脚本在启动服务之前先执行chmod 400 ,chmod 000一旦启动。

因此,不要只关注保持实际密码的安全性,而是希望在目标服务器上做一些工作。 对于数据库,我首先要限制哪些主机可以连接到Linux服务器使用的用户名。 我还会限制用户可以对数据库进行的操作 – 例如,您可能希望Linux守护进程能够将内容添加到数据库,但可能不会执行DROP TABLE

通常也应该使服务器尽可能安全。 守护进程不应该由root来运行,除非绝对必要; SSH端口不应该允许Internet上的任何主机访问,当然也不允许使用rootlogin。

还要确保密码不会在其他地方重复使用,否则在该服务器上的妥协可能会导致networking上的违规事件升级。

你也可以在安全searchfind有用的。