centos lamp安全配置有哪些要点
导读:CentOS LAMP 安全配置要点 一 系统与基础防护 保持系统与软件包为最新:执行yum update -y,及时修补漏洞。 最小化安装与清理:仅保留必要软件包,删除无用账户与默认示例内容。 防火墙精细化:启用firewalld,仅放...
CentOS LAMP 安全配置要点
一 系统与基础防护
- 保持系统与软件包为最新:执行yum update -y,及时修补漏洞。
- 最小化安装与清理:仅保留必要软件包,删除无用账户与默认示例内容。
- 防火墙精细化:启用firewalld,仅放行80/443(必要时放行22),数据库端口3306默认仅内网开放。
示例:
sudo systemctl start firewalld
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload - SSH 加固:禁用root远程登录、使用密钥认证、可更改默认端口,降低暴力破解风险。
- SELinux:保持Enforcing并依据应用需求配置策略,避免直接改为Permissive而失去强制访问控制。
- 服务与端口最小化:关闭不需要的服务与端口,减少攻击面。
二 Apache 安全
- 隐藏版本与标识:设置ServerTokens Prod、ServerSignature Off,减少信息泄露。
- 禁止目录列表:在目录配置中使用Options -Indexes,避免暴露目录结构。
- 访问控制:对敏感目录/文件使用Order/Deny/Allow限制来源 IP(如仅内网网段)。
- 限制脚本执行:对上传目录等禁用ExecCGI/Includes,降低代码执行风险。
- 虚拟主机隔离:避免以root或默认目录运行应用,按站点拆分VirtualHost,正确设置DocumentRoot与访问控制。
- 变更校验与重载:修改后用apachectl configtest检查语法,再systemctl reload httpd。
三 MariaDB MySQL 安全
- 运行安全脚本:执行mysql_secure_installation,设置root强密码、移除匿名用户、禁止root远程登录、删除测试库。
- 账户与权限最小化:为应用创建最小权限专用账户,避免使用root连接应用。
- 网络访问控制:默认仅127.0.0.1监听,数据库端口3306仅对受信任网段开放,必要时通过防火墙或安全组限制来源。
- 定期备份与恢复演练:制定定期备份策略并验证可恢复性。
四 PHP 安全
- 关闭错误回显与版本暴露:设置display_errors = Off、expose_php = Off,避免泄露路径与代码细节。
- 限制远程包含与文件读取:关闭allow_url_fopen、allow_url_include,降低远程代码执行风险。
- 禁用危险函数:通过disable_functions禁用如exec、shell_exec、passthru、system等不使用的函数。
- 模块最小化:仅安装应用必需的扩展,移除不必要的PHP模块。
- 性能与安全并重:启用OPcache提升性能;在高并发场景使用PHP-FPM + mod_proxy_fcgi替代嵌入式模式,便于进程隔离与资源控制。
五 运维监控与备份
- 日志与审计:启用并集中rsyslog/journald,重点监控**/var/log/httpd/access_log、error_log**与数据库错误日志,定期审计异常。
- 入侵防护:部署Fail2Ban对SSH/HTTP进行暴力尝试封禁。
- 备份策略:对代码、数据库、配置文件实施定期备份(如脚本打包并配合cron),异地或不同介质保存,定期校验与演练恢复流程。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: centos lamp安全配置有哪些要点
本文地址: https://pptw.com/jishu/747822.html
