CentOS系统LAMP环境安全漏洞修复全面详细步骤教程
谈到CentOS LAMP环境的安全加固,这实际上是一项系统工程,无法一蹴而就。从系统更新到日志监控,每个环节都潜藏着不少挑战。以下这份指南系统梳理了从基础到进阶的加固步骤,覆盖了Apache、MySQL、PHP以及操作系统层面的安全配置,旨在帮助你高效规避常见风险。 1 系统及软件更新(基础且关
谈到CentOS LAMP环境的安全加固,这实际上是一项系统工程,无法一蹴而就。从系统更新到日志监控,每个环节都潜藏着不少挑战。以下这份指南系统梳理了从基础到进阶的加固步骤,覆盖了Apache、MySQL、PHP以及操作系统层面的安全配置,旨在帮助你高效规避常见风险。
1. 系统及软件更新(基础且关键)
更新系统、Apache、MySQL、PHP及其依赖包,是堵住已知漏洞最直接的手段。别嫌麻烦,这一步省不了。执行下面命令就能一次性搞定:
sudo yum update -y # CentOS 7
# 或者(CentOS 8及以上)
sudo dnf update -y
不过动手之前,最好把数据库和重要配置文件备份一下。更新过程中万一出了幺蛾子,还能兜底。
2. Apache安全配置(Web服务防护)
- 砍掉多余模块:编辑
httpd.conf,把不用的模块(如mod_status、mod_info)注释掉,攻击面就能小一圈:sudo vi /etc/httpd/conf/httpd.conf # 找到 LoadModule status_module modules/mod_status.so 并在前面加# - 藏好版本信息:关闭Apache的版本号和服务器签名,不让攻击者轻易摸清你的底牌:
sudo sed -i 's/ServerSignature On/ServerSignature Off/' /etc/httpd/conf/httpd.conf sudo sed -i 's/ServerTokens OS/ServerTokens Prod/' /etc/httpd/conf/httpd.conf - 收紧端口,限制访问:用
firewalld只开放80和443端口,把非法IP挡在门外:sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=https sudo firewall-cmd --reload - 控制并发,别让资源被吃光:调整
MaxClients和MaxRequestsPerChild,避免连接风暴把进程池撑爆:
改完别忘了重启Apache:sudo sed -i 's/MaxClients 150/MaxClients 100/' /etc/httpd/conf/httpd.conf sudo sed -i 's/MaxRequestsPerChild 4000/MaxRequestsPerChild 2000/' /etc/httpd/conf/httpd.confsudo systemctl restart httpd
3. MySQL/MariaDB安全配置(数据库防护)
- 跑一遍安全脚本:
mysql_secure_installation能帮你一键完成设置root密码、删除匿名用户、禁止root远程登录等操作:sudo mysql_secure_installation - 强制用强密码:在
my.cnf(或/etc/mysql/mariadb.conf.d/50-server.cnf)里加入密码策略,让弱密码无处遁形:sudo vi /etc/my.cnf # 添加以下内容 [mysqld] validate_password_policy=STRONG validate_password_length=12 - 限制远程访问:只给应用服务器的IP授权,别把数据库直接暴露在公网上:
GRANT ALL PRIVILEGES ON *.* TO 'username'@'allowed_ip' IDENTIFIED BY 'strong_password'; FLUSH PRIVILEGES;
4. PHP安全配置(脚本环境防护)
- 禁用危险函数:在
php.ini里把exec、system、eval这些可能被恶意利用的函数拉黑:sudo vi /etc/php.ini # 找到 disable_functions 并添加 disable_functions = exec, system, eval, passthru, shell_exec - 关掉错误显示:把
display_errors设为Off,免得数据库路径、结构信息被直接怼到用户脸上:sudo sed -i 's/display_errors = On/display_errors = Off/' /etc/php.ini - 限制文件上传:设定好
upload_max_filesize和upload_tmp_dir,防止恶意文件混进服务器:
改完还是要重启Apache:sudo sed -i 's/upload_max_filesize = 2M/upload_max_filesize = 5M/' /etc/php.ini sudo sed -i 's/upload_tmp_dir = .*/upload_tmp_dir = \/var\/tmp/' /etc/php.inisudo systemctl restart httpd
5. 系统级安全加固(底层防护)
- SELinux别闲着:确认它处于
enforcing模式,给文件系统和进程权限再加一把锁:sudo getenforce # 检查状态 sudo sed -i 's/SELINUX=permissive/SELINUX=enforcing/' /etc/selinux/config - SSH加固三板斧:禁止root直接登录、改掉默认端口(比如从22改成2222)、用密钥认证替代密码:
sudo sed -i 's/PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config sudo sed -i 's/#Port 22/Port 2222/' /etc/ssh/sshd_config ssh-keygen -t rsa -b 4096 # 生成密钥对 ssh-copy-id username@server_ip # 复制公钥到服务器 sudo systemctl restart sshd - 防火墙规则再细一点:用
firewalld的富规则,只让运维IP访问SSH端口:sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port port="2222" protocol="tcp" accept' sudo firewall-cmd --reload
6. 日志监控与应急响应
- 开启审计服务:装好
auditd,记录用户登录、文件修改等关键行为,方便事后追溯:sudo yum install audit -y sudo systemctl start auditd sudo systemctl enable auditd - 定期翻日志:重点关注
/var/log/secure(SSH登录日志)、/var/log/httpd/error_log(Apache错误日志)、/var/log/mariadb/mariadb.log(MySQL日志)。暴力破解、SQL注入的痕迹往往就藏在这里。 - 做好备份:数据库用
mysqldump定期导出,配置文件(httpd.conf、php.ini、my.cnf)打包存档,最好存到离线介质或异地云存储:sudo mysqldump -u root -p --all-databases > /backup/all_databases.sql sudo tar -czvf /backup/lamp_config_$(date +%F).tar.gz /etc/httpd /etc/php.ini /etc/my.cnf
7. 漏洞扫描与补丁管理
- 用工具摸个底:定期跑OpenVAS、Nessus这类扫描器,查出未修复的CVE漏洞,然后对症下药:
# 示例:启动OpenVAS扫描(需提前安装) sudo openvas-start - 盯紧安全公告:订阅CentOS官方邮件列表和安全公告(CentOS Security Advisories),第一时间拿到新漏洞及补丁信息。
整完这一套,CentOS LAMP环境的常见安全漏洞基本就能被堵得七七八八了。不过安全是持续博弈的过程——系统更新最好每周来一遍,日志也得月月查,才能及时应对新冒出来的威胁。
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
同类文章
Debian最新系统安全漏洞影响版本详细列表查询
安全这事儿,永远是防大于治。今天把Debian近两年的几个关键安全漏洞梳理了一遍。先划几个重点——这些漏洞覆盖面不小,从内核到常见工具链都有涉及,很多Debian的老版本用户,如果一直没做升级,很可能现在就暴露在风险里。先从影响最广的CVE-2024-1086说起吧。这算得上是一个“核弹级”的内核漏
Linux环境下Hadoop数据加密实现方法
在Linux环境中部署Hadoop集群时,数据加密已成为满足安全合规要求的必要环节。无论应对内部审计还是防范外部攻击,加密都不再是可选功能,而是必须落地的基础安全能力。下面从几种主流方案入手,详细介绍具体配置流程与常见踩坑要点。 1 HDFS原生透明数据加密(TDE) HDFS从2 7 0版本开始
Ubuntu下readdir文件加密实现方法
在 Ubuntu 系统下使用 readdir 函数遍历目录时,若需要对文件进行加密处理,一种常见做法是获取文件名后,直接借助加密库(如 OpenSSL)对文件名本身执行加密操作。这里提供了一份可直接运行的 C 语言示例代码,清晰展示了如何将 readdir 与 OpenSSL 结合来实现文件名的 A
Debian SFTP防止攻击的安全配置
保护Debian系统上的SFTP服务,核心目标就是阻止未经授权的访问与恶意攻击。别把这件事想得过于复杂,真正落到实处,关键在于把基础配置做扎实。下面这十项要点,是业内部署高安全性SFTP环境的“保命清单”,每一条都值得仔细落实。 系统更新必须及时 Debian的包管理机制相当成熟,千万别闲置不用。定
Linux驱动安全漏洞防范指南
针对Linux驱动安全漏洞的防范,已经有许多经过验证的成熟方案可供参考。以下从开发到运维的多个维度,系统性地列出了关键防护措施。 1 及时更新系统和驱动 保持系统和驱动处于最新状态是防御的基石。使用包管理器(如apt、yum)定期检查更新,能够有效封堵大量已知安全漏洞。此外,建议订阅主流安全机构的
- 热门数据榜
1
2
3
4
5
6
7
8
9
10
1
2
3
4
5
6
7
8
9
10
1
2
3
4
5
6
7
8
9
10
相关攻略
2026-07-18 19:39
2026-07-18 19:39
2026-07-18 19:39
2026-07-18 19:39
2026-07-18 19:09
2026-07-18 19:09
2026-07-18 19:08
2026-07-18 19:08
热门教程
- 游戏攻略
- 安卓教程
- 苹果教程
- 电脑教程

