温馨提示×

Debian LAMP更新维护指南

小樊
39
2025-12-24 15:20:01
栏目: 智能运维

Debian LAMP更新维护指南

一 日常更新与补丁管理

  • 刷新索引与执行升级:执行sudo apt updatesudo apt upgrade,必要时使用sudo apt full-upgrade处理依赖变化;完成后按需重启相关服务或系统。
  • 清理与维护:执行sudo apt autoremove移除无用依赖,sudo apt clean清理本地缓存,保持系统整洁与可回滚空间。
  • 自动安全更新:安装并启用unattended-upgrades,配置为仅安装安全更新;启用APT定时任务并验证。示例:
    • 安装与启用:sudo apt install unattended-upgrades -y && sudo dpkg-reconfigure unattended-upgrades
    • 定时任务:sudo systemctl enable --now apt-daily.timer && sudo systemctl enable --now apt-daily-upgrade.timer
    • 验证与日志:sudo unattended-upgrade --dry-run,查看**/var/log/unattended-upgrades/unattended-upgrades.log**
  • 变更控制:升级前确保有可用的备份回滚方案,并在非生产环境先行验证。

二 组件级更新步骤

  • 通用流程:先apt update,再对各组件执行升级,最后重启服务并检查运行状态。
  • Apache:
    • 升级:sudo apt install --only-upgrade apache2
    • 重启:sudo systemctl restart apache2
    • 验证:apache2 -v
  • MariaDB/MySQL:
    • MariaDB:sudo apt install --only-upgrade mariadb-server && sudo systemctl restart mariadb
    • MySQL:sudo apt install --only-upgrade mysql-server && sudo systemctl restart mysql
    • 验证:mysql --version
  • PHP(按实际版本调整):
    • 升级全部PHP包:sudo apt install --only-upgrade php*
    • 或仅升级某版本(如PHP 8.2):sudo apt install --only-upgrade php8.2*
    • 如使用PHP-FPM:sudo systemctl restart php8.2-fpm
    • 重启Web服务:sudo systemctl restart apache2
    • 验证:php -v
  • 运行状况检查:sudo systemctl status apache2sudo systemctl status mariadb/mysqlsudo systemctl status php-fpm*。

三 跨版本升级与重大变更

  • 准备与评估:完整备份(数据、配置、证书),确认磁盘空间网络稳定,先在测试环境演练。
  • 调整软件源:编辑**/etc/apt/sources.list**,将旧的代号(如bullseye)替换为新代号(如bookworm),保存后执行sudo apt update
  • 执行升级:依次执行sudo apt updatesudo apt upgradesudo apt full-upgrade;处理可能的保留包apt-mark showhold / unhold)。
  • 重启与验证:执行sudo systemctl reboot,使用lsb_release -acat /etc/debian_version确认版本;随后按“组件级更新步骤”逐一验证服务。

四 安全加固与访问控制

  • 基础安全:
    • 创建普通用户并加入sudo组,避免使用root进行日常操作。
    • 强化SSH:启用密钥认证,设置PermitRootLogin no,禁用密码登录。
    • 防火墙:使用ufw仅放行SSH/HTTP/HTTPS,如sudo ufw allow 'Apache Full’sudo ufw enable
  • 数据库安全:运行sudo mysql_secure_installation,设置强口令,删除匿名用户与测试库,限制远程访问。
  • Web与PHP:
    • 启用SSL/TLS,为虚拟主机配置有效证书。
    • php.ini中限制危险函数(如exec、system),仅启用必要模块,使用**.htaccess**进行访问控制。
  • 入侵防护与审计:部署fail2ban,定期审计日志,使用Lynis进行安全基线扫描。

五 备份恢复与监控日志

  • 备份策略:定期备份网站文件数据库配置文件证书;可使用Timeshift进行系统级快照,确保可快速回滚。
  • 恢复演练:定期在测试环境验证备份可用性与恢复流程,缩短故障恢复时间(RTO)。
  • 监控与日志:
    • 资源与可用性监控:使用Prometheus + GrafanaNagios/Zabbix监控CPU、内存、连接数、磁盘IO与关键进程状态。
    • 日志管理:集中收集与轮转Apache、MariaDB/MySQL、PHP-FPM与系统日志,使用logwatch进行日报分析,异常时结合fail2ban与防火墙处置。

0