首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Web服务器用户-最佳实践

Web服务器用户-最佳实践
EN

Server Fault用户
提问于 2010-05-05 13:28:17
回答 2查看 2K关注 0票数 2

当几个开发人员/管理员要求访问同一个web服务器时,我想知道什么是最佳实践。

如果有一个具有安全用户名和密码的非根用户登录到每个人登录的web服务器,或者每个人都应该有一个用户名。

我倾向于为每个人提供一个用户名,以帮助登录等等,但是相同的用户是否在多个服务器上保留相同的凭据,或者至少应该根据他们所在的服务器更改密码吗?

应该将系统的任何非根用户添加到sudoers文件中,还是最好的做法是让每个人都离开它,只让root执行某些任务?

任何帮助都将不胜感激。

EN

回答 2

Server Fault用户

回答已采纳

发布于 2010-05-05 14:11:26

  • 最佳实践:对所有特权操作具有可跟踪性。这意味着在正常情况下不使用root登录;人们使用自己的ID和权限登录。他们所采取的行动是可以追踪的。如果某个特定帐户被破坏,则可以在不影响其他帐户或整个系统的情况下固定该帐户。
  • 最佳做法:最少特权。人员和应用程序获得执行其授权活动所需的权限,但没有更多权限。

遵循这两条原则是你问题的答案。你到底是怎么跟踪他们的取决于你。这取决于您的站点策略建议的内容、服务器设置的复杂性、连续性计划等。请注意,遵循这些原则将使您的系统更难以通过恶意攻击进行妥协,但更重要的是,它限制了善意错误的后果。

对于web服务器维护这样的问题,大多数功能可以在不需要通过适当的用户/组所有权和权限进行根访问的情况下启用(请注意,最初的问题是linux/unix标记)。例如,web服务器配置文件可以由"wserver“、组"wsgroup”和许可的664拥有。这将允许任何用户读取配置,并允许"wsgroup“中的任何人编辑文件(不一定是您想要的)。Web内容可能在不同的组中,只要web服务器进程具有读取权限或执行权限,就可以为内容提供服务。这将允许不同的(可能是重叠的)组维护web服务器和内容。

您还可以为给定的用户设置sudo,以便以特定用户的身份运行特定的命令。对于最佳实践,您应该将根访问限制在实际需要根特权的几个项上(例如,启动一个侦听特权端口的进程)。根据需要设置其他权限,尽可能少授予特权--这有助于限制错误的后果。例如,如果要允许某个组编辑web服务器配置文件,则允许它们作为配置文件的所有者执行{vim、emacs、gedit}。

票数 3
EN

Server Fault用户

发布于 2010-05-05 14:33:14

我们是一家拥有少量服务器的webdev小公司。

每个管理员在每个服务器上都有自己的帐户,通常通过证书登录。但是,他们也可以通过密码登录,因为他们可能需要从一个远程位置登录,在那里他们可能没有他们的证书。

只有通过证书才允许以root身份直接登录。我们没有完全不允许远程根登录,因为它对于通过rsync和scp在服务器之间传输文件非常有用,但是只有最受信任的管理员才会将他们的证书添加到root的authorized_keys文件中。

管理员通过sudo获得超级用户特权,使他们成为轮组的成员。

这并不能防止恶意管理员的攻击,但它确实提供了一些日志记录,以及在管理员离开时禁用单个帐户的能力。它也不是很好的扩展,但是对于一小部分服务器来说是好的。

需要超级用户权限的脚本,例如Capistrano,我们使用它将我们的网站从版本控制部署到we服务器,获得自己的用户帐户,并可以使用sudo执行超级用户操作。但是,通过sudo的Cmnd_Alias,它们仅限于所需的命令。

我正在考虑设置同样的Open,这样我们就可以将身份验证绑定到Active Directory域中。这将使集中化身份验证、管理密码和提供细粒度权限变得更加容易。

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/138790

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档