CentOS 的安全措施

CentOS 的安全措施

我一直在加强我的网络服务器安全,想知道我还能做些什么。

我正在运行 CentOS 5,并采取了以下措施: - FTP、MySQL 等的所有密码均由 grc.com/passwords.htm 和 microsoft.com/protect/fraud/passwords/create.aspx 生成(密码不能太长)。 - 运行 iptables,关闭除 http 邮件和 smtp 之外的所有端口,除我的静态办公室 IP 外,所有重要端口(如 FTP SSH)均被阻止。ping 也没有响应。 - 每天运行 Rootkit Hunter - 根据 Comodo,服务器符合 PCI 标准 - 不运行任何糟糕的 php 应用程序,我们使用 Zend Framework 来处理我们的东西,并且安装了 kayako 并使其保持最新状态。

真的想不出我还能做什么...我可以实施暴力破解措施,但我认为我已经通过将我的 SSH 端口更改为 10000 以上的数字并用 iptables 将其阻止来实现了。

答案1

您可以打开 SELinux 并确保一切仍然正常。请注意,SELinux 默认不支持 22 以外的任何 ssh。

答案2

仅仅因为 comodo 说您符合 PCI 标准,并不意味着您真的符合标准。他们所做的只是扫描您的端口并查找常见的网络漏洞。要真正符合标准,需要做很多事情。例如,您的整个数据中心必须符合标准,以及您如何存储信用卡信息。Comodo 无法检查这一点

答案3

http://www.debian.org/doc/manuals/securing-debian-howto/

它适用于 Debian,但应该可以针对 CentOS 进行定制。

您可能还想做以下事情:

  1. 您是否已保护好 mysql?没有匿名用户、非本地主机用户或测试数据库?
  2. 你已经保护好 Apache 了吗?
    • 使用最少的一组加载模块?
    • 锁定“/”?
    • 锁定虚拟主机?
    • 锁定位置?
    • 每个位置的最小 apache 选项/指令集?
    • 任何 ssl 配置?
  3. FTP 密码以明文模式发送。最好使用 ftps 或 sftp(它们不同)
  4. sshd_config 是否被锁定?
    • 是否可以通过密钥验证的 ssh 密钥进行访问?
    • root 可以锁定吗?
    • 是否仅允许选定的用户/组使用 ssh 登录?
    • 您可能需要查看单包认证
  5. 您可能想要使用 firehol 或优秀的防火墙生成脚本,而不仅仅是 iptables。
  6. 您的电子邮件服务器安全了吗?
    • 仅经过身份验证的 ssl/tls 或 startls 连接
    • smtp 必须通过 ssl/tls 或 startls 进行身份验证,除非从受信任的主机发送
    • 您是否检查过是否正在运行开放中继邮件服务器?

答案4

我最喜欢的一个有助于提高安全性的工具是港口哨兵(使用 tcpwrappers)。任何接触非活动端口的人都将被锁定。Portsentry 可从官方来源以 RPM 形式获得。

另一种可能性是使用系统事件相关器(SEC)。这为您提供了高级日志监控功能。

如果你正在使用 PHP,我建议你考虑切换到苏霍辛,强化的 PHP。

总而言之,这些只是提示:最好的做法是查看一份(或两份)安全检查表,以确保您没有错过任何东西。

哦,还有一件事:如果您有权限并且愿意,您可以切换到一次性密码。 CentOS 通过 opie 提供此功能。

相关内容