每个任务都有一个单独的用户?

我刚刚得到了一个VPS sver,我是新来的服务器pipe理,但不是Ubuntu的新(11.04)。 我把它作为HTPC用在我的客厅里,而我之前使用的一个VPS是为了一个团队的服务器而使用的。 这一个我正在build立长期使用。 所以我想知道最好的做法,当涉及到网站和任务,我有服务器proforming。 我知道将每个网站分成自己的用户组或自己的用户名是有好处的。 我会设置nginx,以便它可以读取所有的用户董事(因此每个网站),但不能碰其他的东西。 与TeamSpeak一样,我是否应该为TeamSpeak制作一个用户,使其在自己的密闭区域内运行,或者是这种矫枉过正?

我可以访问服务器的根目录,而我目前的计划是运行大约4个网站和一个TeamSpeak服务器。 我的堆栈是Linux(Ubuntu 11.04 LTS),nginx和PHP 5.4.3(使用内置驱动程序的PDO SQLite 3作为数据库)。 如果PHP有它自己的用户组,或者可以将它放在nginx中吗?

像teampeak这样的服务的最佳实践是把他们作为一个单独的用户运行,最好是在监狱里 – 设置监狱的指南可以在https://help.ubuntu.com/community/BasicChrootfind。

这样做是为了限制软件漏洞攻击造成的破坏 – 希望仅限于搞乱teampeak的文件,而不是其他的服务器。

PHP和networking服务器经常可以共享一个用户,因为他们需要访问相同的文件。

没有networking服务应该以root身份运行,因为该服务中的漏洞攻击可以让攻击者获得与运行该服务的用户相同的权限。 某些软件需要root权限才能启动,但可以configuration为在启动后删除这些权限。