Wal*_*J89 10 mysql linux php lamp apache-2.2
保护 Linux、Apache、MySQL、PHP 服务器(甚至 Perl)以供生产使用的程序是什么?
除了为 Linux 设置 MySQL 密码和 root 密码之外,还应该采取哪些其他(可能不那么明显)的步骤?
另外我可以采取哪些步骤,如果我会变得更加偏执,那通常可能没有必要?
这是用于基本的单站点使用,但必须是安全的。
War*_*ner 13
这些建议不在我的脑海中,并不打算全面。
查看 Bastille,它是一系列在 Linux 中实现最佳实践的脚本。
不要通过明文协议发送身份验证数据。例如,禁用 FTP。如果您通过 Apache 发送身份验证数据,请使用 SSL。
禁用并删除任何不必要的软件,包括 GUI 界面。
审核设置了 SUID 位的所有文件并删除。(这将严重限制非根能力。了解每个变化的影响。)
审计公共可写目录并删除可写位。(别管 /tmp。)
避免以 root 身份运行任何守护进程。
详细研究所有侦听套接字的多用户软件以获取安全最佳实践。
避免将用户添加到系统是最好的方法之一。多用户系统需要更加注意细节。
执行密码标准。例如:最少 10 个字符、非字母数字字符、使用字母和数字。这是为了在密码文件泄露的情况下使暴力破解更加困难。通过系统强制执行此操作。
在 5 次失败的身份验证尝试后锁定用户,锁定时间至少为 10 分钟。保留密码历史记录,以便用户无法使用过去的 5 个密码。
如果您拥有更大的环境,则绝对需要使用具有多个子网的网络隔离来隔离风险。如果环境较小,建议在本地系统上运行防火墙以限制暴露。例如,只允许通过 SSH 访问您的 IP。tcpwrappers 也可以用于额外的层。(/etc/hosts.allow, /etc/hosts.deny)
而且,当然,保持所有软件都是最新的。特别是面向公众的守护进程。
使用 SSH:
without-password(仅密钥对)使用阿帕奇:
使用 MySQL:
我建议专门研究用于安全性的 php.ini 调优。默认情况下,它是风险更高的软件。