我正在为VPS付费,并希望在未来几天内启动我的第一个网站。
我担心标准设置中可能会有一些明显的安全漏洞,所以我很想得到一些提示。 关于我唯一知道的是closuresPHP中的错误报告,并创buildMySQL的用户/权限。 还有更多的东西吗?
我在用着:
有几个安全原则/技巧你需要牢记:
closures你不需要的服务
如果您不需要特定的服务,请closures它。 有一件事不用担心,特别是在安全方面。
遵循最小特权原则
如果一个服务不需要超级权限,只需要赋予它所需的权限即可。 例如,如果您的Web应用程序不需要删除表,则不需要在MySQL中启用删除权限。
让您的服务更新有关安全更新
这个非常重要! 不时发现安全漏洞。 当涉及到安全问题时,更新您的应用程序是非常重要的。
不要使用默认凭据
只是不要使用它。 他们是邪恶的:)例如,MySQL的root用户没有密码。 创build一个。
备份一切重要的东西
备份一切你需要重build你的服务器,我的意思是一切。 另外,定期testing您的备份。 这不仅是出于安全原因,也是出于业务连续性的原因。 一个永远不知道什么时候可能需要备份。
希望这可以帮助!
还试图强制绑定mysql听本地主机,如果它是可以接受的(听指令),甚至更好,如果可能的话,删除networking支持MySQL。
另请参阅我的第一个“生产”debian服务器configuration
总是总是使用内置的软件包pipe理器来安装软件 – 在Centos的情况下,这意味着Yum – http://wiki.centos.org/PackageManagement/Yum 。 这确保了有一个中心的方式来跟踪和安装安全更新。 在生产服务器上从源安装软件是一个安全的噩梦,因为您必须手动跟踪和手动安装所有安全更新。
确保你有一个防火墙,只允许你需要入站的服务 – 你可以从http://www.larted.org.uk/~dom/computing/code/iptfirewall
通过禁用以下许多function,PHP应该被加强,因为您不需要: http : //www.eukhost.com/forums/f42/disabling-dangerous-php-functions-6020/
还要确保PHP设置为logging错误,而不是显示它们。
我build议阅读红帽企业Linux 5的NSA操作系统指南 。 什么适用于RHEL也适用于CentOS。