软件编译和安全

我已经编译了不同的软件(apache,postgresql,proftpd和jboss),然后安装到一个目录中(使用–prefix configure选项)。 我有这样的:/ opt / apache / opt / proftpd / opt / postgresql / opt / jboss。 我用同一个用户运行所有这些服务。 我已经这样做了,因为在权利pipe理方面我更容易(所有的服务都可以访问相同的数据目录)。 而且这是一种将我在一个目录中使用的所有服务“打包”的方法。

开始服务:

  • apache:以root启动,并且在configuration文件中设置了以下指令:“User pol”“Group pol”
  • postgresql:以用户“pol”开始
  • proftpd:以root启动,我在configuration文件中设置了以下指令:“User pol”“Group pol”
  • jboss:以用户“pol”开始

pol用户有一个shell。 这对维护很有用。

  • 你对这个configuration有什么看法?
  • 我应该用不同的用户运行所有这些服务吗?
  • 用户/服务pipe理的安全最佳实践是什么?

谢谢 !!

以下是关于你的问题的一些限制:

通常使用nologin的专用帐户来运行服务。

也许你应该尝试chroot或监狱至lessapache守护进程获得额外的安全性。

如果您的数据库服务器仅在本地使用,则可以考虑使用套接字来连接文件系统,并拒绝对其进行networking访问。