我一直在收紧我的networking服务器的安全性,并想知道我还能做些什么。
我使用以下措施运行CentOS 5: – 所有FTP,MySQL等密码都是从grc.com/passwords.htm和microsoft.com/protect/fraud/passwords/create.aspx生成的(对于那些不能太长的)。 – 除了http邮件和smtp以外,所有端口都closures的iptables运行,除了我的静态办公IP以外,FTP SSH等重要的端口都被阻塞了。 对ping也没有反应。 – Rootkit Hunter每日运行 – 根据Comodo,服务器符合PCI标准 – 不运行任何糟糕的php应用程序,我们使用Zend Framework作为我们的东西,并且安装了Kayayo并保持最新状态。
我真的不能想到其他任何事情……我可以实施暴力措施,但我想我已经通过简单地将我的SSH端口更改为10000以上的数字,并用iptables阻止它。
你可以打开SELinux,确保一切正常。 请注意,虽然SELinux默认情况下不喜欢22以外的ssh。
仅仅因为comodo说你符合PCI标准,并不意味着你确实是合规的。 他们所做的只是扫描您的端口并寻找常见的Web漏洞。 要真正遵守是一个更长的事情列表..就像你的整个数据中心必须是兼容的,以及如何存储信用卡信息.. Comodo无法检查
http://www.debian.org/doc/manuals/securing-debian-howto/
这是Debian的,但应该为CentOS定制。
您可能想要做的其他事情:
所以你有一个ssh服务器,你已经在端口10000运行,你已经阻止了iptables? 我假设你已经安装了一个ssh服务器,所以你可以暂时启用它,以便稍后有一次远程访问。
你可以安装sshguard或者denyhosts来保护你的ssh。 如果这些工具有一定数量的失败连接尝试,则会阻止IP地址。
portsentry (带有tcpwrappers)是我最喜欢的工具之一,它有助于提高安全性。 任何接触非活动端口的人都将被locking。 Portsentry可以通过官方渠道获得RPM。
另一种可能性是使用系统事件关联器 (SEC)。 这为您提供了高级日志监控function。
如果你正在使用PHP,我会考虑切换到强化的PHP Suhosin 。
总而言之,这些只是提示:最好的办法是通过一个安全清单(或两个),以确保你没有错过任何东西。
哦,还有一件事:如果你有权力和愿望这样做,你可以切换到一次性密码。 CentOS通过opie提供这个function。
只是2个小补充。
糟糕的PHP代码是一个真正的痛苦。 suhosin不能保护php的外观。 使用phpsecurity来查看你的php安装中的什么types的整体。 这里http://phpsec.org/ 。 它会给你每个预防configuration的详细解释。
是fail2ban为滥用者和部队的自动化块。 它将保护您的服务器上的许多服务ssh,ftp,http,smtp等比denyhosts更好,源使用比portsentry更less,更有效。 http://www.fail2ban.org/wiki/index.php/Main_Page
另一个select是删除/ tmp中任何内容的执行权限。 实际上为没有执行权限的/ tmp&mount创build一个新的分区是一个完美的想法。 如果您可以处理已经在使用生产服务器的情况。
和几个提醒。 很容易理解哪个端口是sshd运行的,因为它的标题(包含SSH字)。 你可以通过“nmap”来testing它。 在这一点上改变SSH端口是没有意义的。 &删除横幅上的各种版本信息,欢迎消息,其他地方的服务器签名只是删除。 因为剥削者也在检查软件版本。
这是更一般的build议,而不是特定于Centos。
确保你已经完全修补了所有的安全补丁。 一旦您认为您已经尽可能地保护您的服务器和应用程序,请针对您的服务器和Web应用程序运行漏洞扫描程序。
如果你以前从未做过, Kali Linux是一个很好的开始。 在连接到与服务器相同的networking的备用机器(例如笔记本电脑)上运行它,根据需要创build一个具有尽可能多的插件类别的自定义扫描策略(例如,所有Linux应用程序,所有web应用程序等),将其configuration为扫描所有端口并针对您的服务器运行testing。
一旦你完成了这个工作,并想进一步,实施一个入侵检测系统/入侵防御系统来检测,并有可能防止传入的威胁。
如果您觉得您需要更进一步,请获得authentication的专业渗透testing人员来执行此操作。 这一切都取决于你需要多less安全/保证,以及你愿意为此付出多less努力和财务成本。