Linux(web)托pipe服务提供商面临的常见安全问题

对拥有自己的虚拟主机的用户(无论是物理服务器还是经销商)的问题:

您的服务器上是否有任何常见的安全问题需要处理? 任何关于应该被禁用的麻烦事的build议? 任何特定于虚拟主机的安全错误,我应该避免? 任何影响networking主机的最近的漏洞?

使用PayPal账户或信用卡授予用户级别访问权限的做法本身就是一种疯狂行为。 在过去的六年中,我一直在主机行业工作,我仍然觉得它很疯狂。

这是我为大多数服务器(共享或不共享)所做的清单,没有特定的逻辑顺序:

  • 我几乎从不使用发行版提供的内核。 我保持我们自己的内核树,与Linux主线保持同步…只要grsecurity允​​许。 它不仅仅是一个安全措施,它也是一个优化措施。 你不会在我们的内核中find像parallel / usb / audio这样的支持(因为web服务器不需要它们)。 内核的构build是为了只使用我们需要的板子上的东西。
  • 9/10糟糕的东西是由马车用户脚本进来的。 许多客户知道足够的PHP是危险的。 mod_security是我最好的朋友之一,我支付订阅加强规则集,并保持几乎每周更新。
  • 审计是至关重要的,我也推荐使用OSSEC或类似的东西。
  • 我所有的服务器都连接到维护局域网,我可以独立于公共networking进行维护。 当/如果事情变坏,而且你发现你的服务器忙于在整个互联网上发送垃圾信息包,你会感激另一种方式。我也有IP KVM的安装在所有的服务器,或IPMI取决于硬件。
  • 最近,我一直在使用Xen作为共享服务器的pipe理层。 我创build了一个拥有99%系统内存的guest虚拟机。 这使我可以毫不费力地完成文件系统修复/快照等工作。 如果事情出错,并且可以方便地将LAN从共享服务器上隐藏起来,它确实可以帮助恢复。
  • 我维护一个非常严格的基于iptables的防火墙,在出口方面尤其严格。
  • 我非常小心谁可以访问系统编译器和链接工具。
  • 我虔诚地更新系统软件。
  • 我定期进行扫描,以确保人们不会无意中运行stream行的应用程序(如Wordpress,PHPBB等)的旧版本和易受攻击的版本。
  • 我提供客户在互联网上find的东西的免费安装。 这确实帮助我审核托pipe的内容,同时为客户提供额外的价值。 这也有助于确保安全和正确的安装。
  • 始终,总是强化PHP,确保你也使用PHP的suexec。 没有什么比在'nobody'find的/ tmp中find一个机器人更糟糕:)

最后,但并非最不重要的是:

  • 我实际上读取系统日志文件。 只有在发现问题之后,才有很多主机跑来看看出了什么问题。 即使使用像OSSEC这样的工具,它也很重要。

看起来其他人正在进入很多细节,然而单一最大的恶性活动来源应该是FTP

将其locking到某些IP,禁用不需要它的帐户。 甚至禁用服务,除非它被要求。

恶意代码上传到网站后,我不得不面对数十个黑客行为,或者通过iframe注入垃圾邮件或者redirect访问者。 他们很less获得root或者shell的访问权限,而只是导致大量的非黑名单服务器的手工清理工作,并且手动search代码。

黑客的主要来源不是服务器本身,而是感染最终用户的个人电脑,它们嗅探FTP密码并将其发送回母机,然后稍后从不同的机器上载代码。

我曾在一家networking托pipe公司工作了一段时间,保持所有用户的安全是一场噩梦。 特别是在一个共享的环境。 私人服务器更容易跟踪,因为安全问题只与该系统隔离。

在共享主机上记住一些事项:

  • 一个网站中的错误可能会影响所有其他网站。 因此,尽量限制每个用户可以做的事情,并限制权限。 它包括ulimit,php限制等
  • 监视系统和个别站点。 像OSSEC这样的工具可以非常方便地处理所有的信息。
  • Linux内核在本地漏洞利用方面并没有一个良好的轨道。 所以请确保它始终更新并使用内核安全扩展(grsecurity,SELinux等)。

对于私有服务器,您将安全性留在用户手上,但请确保在您的networking上安装适当的QOS,NIDS和反DOS工具。