CentOS Apache安全配置的要点主要包括以下几个方面:
禁用非必要的超级用户:
强化用户口令:
保护口令文件:
chattr
命令给/etc/passwd
、/etc/shadow
、/etc/group
和/etc/gshadow
文件加上不可更改属性。设置root账户自动注销时限:
/etc/profile
文件中的TMOUT
参数,设置root账户的自动注销时限。限制su命令:
/etc/pam.d/su
文件,限制只有特定组的用户才能使用su命令切换为root。隐藏Apache版本信息:
httpd.conf
)中设置ServerSignature Off
和ServerTokens Prod
,以隐藏服务器的版本信息和操作系统信息。禁用目录列表:
禁用不必要的模块:
限制访问Web根目录之外的文件:
使用mod_evasive防范DoS攻击:
定期更新软件版本:
配置日志记录和监控系统:
用户权限配置:
选择性访问控制和强制性访问控制:
安全模块配置:
日志配置:
防范跨站脚本攻击(XSS):
防范SQL注入攻击:
防范恶意文件上传:
防范目录遍历攻击:
启用HTTPS:
限制HTTP方法:
Limit
或LimitExcept
指令限制不必要的HTTP方法,如PUT、DELETE等。限制POST数据大小:
LimitRequestBody
指令限制POST请求的数据大小,防止DDoS攻击。配置访问控制和认证:
.htaccess
文件或全局配置中的AuthType
、AuthName
、AuthUserFile
和Require
指令实施认证。错误页面定制:
日志监控和审计:
禁用服务器签名:
ServerSignature Off
和ServerTokens Prod
以隐藏服务器的版本信息。优化文件和目录权限:
防火墙规则:
禁用或限制使用.htaccess
文件:
AllowOverride None
,以提高性能并减少潜在的安全风险。使用ModSecurity或其他WAF:
通过这些配置要点,可以显著提高CentOS上Apache服务器的安全性。