在Un * x上,有许多不同的用户login时用户名是否是一个好主意?
我经常在Linux或BSD系统上安装软件或其他东西。 我已经开发了24年的软件,所以我知道如何让机器做我想做的事情,但是我从来没有责任维护一个真正关心安全性的多用户安装。 所以我的意见没有经过检验。
现在我在一家公司,那里有一个服务器,许多人用一个用户名login并做了一些事情。 我正在安装一些软件。 这不是一个真正面向公众的服务器,只能通过VPN访问,但许多人仍然使用它来运行定制软件的testing。 这是一个登台服务器。
我在想,至less,使用单一用户会遮蔽审计线索,这很糟糕。 而这只是不雅,因为人们在服务器上没有自己的空间。
但是再一次,随着用户数量的增加,攻击者获得访问权限的可能性也越大。
?
使用单独的UID。 让多个用户使用相同的UID,就不可能知道谁是谁。 从UID到日志名的任何反向查找变得不可靠。
您的要求的一个标准解决scheme是安装和使用sudo 。 sudo允许您授予将程序作为不同用户运行到您希望的任何用户或用户组的权限。 sudoers文件允许谁允许做什么的显着的灵活性。 通常使用sudo执行的操作通常被logging。
有些发行版会lockingroot并使用sudo来允许用户执行需要以root身份执行的操作。
允许用户执行su ,或使用-i选项成为另一个用户是可能的也是常见的。 这有点减less了审计线索,但与stream程会计相结合,您可以获得非常好的审计线索。
请记住,任何拥有root访问权限的人通常都可以在审计线索中工作 除非您信任他们,否则不要给予root用户访问权限。
正如你所说的,出于审计目的,这是非常不理想的。 通过拥有多个用户标识,您可以自己查看谁在什么时间做什么 。 这并不是说这是万无一失的。 没有任何事情可以阻止他们告诉对方他们的凭据或其他用户窃取凭证。
如果你制作定制的软件,我看到你最大的风险来自于某人想知道rm -rf在根目录下做什么,以及其他潜在的可怕的事情(但是你已经testing了备份…. 对不对 ?)
我认为这是完全取决于你的好处是什么,需要时间来安排会计和设置权限等,如果你仔细设置,你可以设置用户组,所以即使它的一些帐户hacket它并没有对系统的其他部分产生严重的影响,但是这是安全的一部分,所以你应该专注于你的需求。
我认为最好的办法是创build2个或3个组和一个用户标识,这样至less可以pipe理这些用户组(这对于每个用户来说花费的时间和精力都比单独的用户标识less),并给你一些能力的权限和审计。