在阿里云 ECS 实例上搭建 LAMP(Linux + Apache + MySQL/MariaDB + PHP)环境,需从系统层面做好基础配置以确保安全性、稳定性与可维护性。以下是关键的基础系统配置建议(以主流 CentOS 7/8 或 Alibaba Cloud Linux 3 / Ubuntu 20.04+ 为例):
✅ 一、实例选择与初始化配置
-
ECS 实例规格
- 推荐:2核4GB 起(轻量级网站),生产环境根据并发/数据量按需升级(如4核8GB+)。
- 系统镜像:优先选用 Alibaba Cloud Linux 3(兼容 RHEL 8/CentOS 8) 或 Ubuntu 22.04 LTS(长期支持、安全更新及时);避免使用已停止维护的 CentOS 6/7(EOL)或 Ubuntu 18.04(2023年已 EOL)。
-
安全组(Security Group)配置(⚠️ 必须设置!)
- 允许入方向:
HTTP (80)—— Web 访问HTTPS (443)—— 启用 SSL 后必需SSH (22)—— 强烈建议修改默认端口 + 限制来源 IP(如仅允许公司/办公IP)- (可选)
MySQL (3306)—— 生产环境禁止对公网开放! 若需远程管理,应通过跳板机、白名单内网IP或阿里云DMS访问。
- 拒绝所有其他端口(最小权限原则)。
- 允许入方向:
✅ 二、系统基础安全加固
-
创建非 root 管理用户并禁用 root 远程登录
# 创建用户(如 lampadmin) sudo useradd -m -s /bin/bash lampadmin sudo passwd lampadmin sudo usermod -aG wheel lampadmin # CentOS/Alibaba Cloud Linux # 或 sudo usermod -aG sudo lampadmin # Ubuntu # 禁用 root SSH 登录(编辑 /etc/ssh/sshd_config) PermitRootLogin no PasswordAuthentication no # 强烈推荐仅用密钥认证✅ 重启 SSH:
sudo systemctl restart sshd -
配置 SSH 密钥登录(替代密码)
- 本地生成密钥对(
ssh-keygen -t ed25519),上传公钥到/home/lampadmin/.ssh/authorized_keys,权限设为600。
- 本地生成密钥对(
-
启用防火墙(推荐 firewalld 或 ufw)
# Alibaba Cloud Linux/CentOS sudo systemctl enable --now firewalld sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=https sudo firewall-cmd --reload -
更新系统 & 安装基础工具
# Alibaba Cloud Linux/CentOS sudo dnf update -y # 或 yum update -y(旧版) sudo dnf install -y epel-release vim wget curl git bash-completion # Ubuntu sudo apt update && sudo apt upgrade -y sudo apt install -y vim wget curl git net-tools
✅ 三、时间同步与日志管理
-
启用 NTP 时间同步(防止证书/会话异常)
sudo timedatectl set-ntp true sudo timedatectl status # 验证是否同步成功 -
配置日志轮转(避免磁盘爆满)
- 默认
logrotate已启用,检查/etc/logrotate.d/下相关配置(如 httpd、mysql、php-fpm); - 可自定义
/etc/logrotate.conf增加maxsize 100M或rotate 12。
- 默认
✅ 四、磁盘与文件系统优化(可选但推荐)
- 挂载独立云盘 存放网站数据(
/var/www)和数据库(/var/lib/mysql),提升 I/O 性能与备份灵活性; - 格式化为
xfs(高并发写入更优)或ext4; - 添加
noatime挂载选项减少元数据写入(如/etc/fstab中添加defaults,noatime 0 0)。
✅ 五、SELinux / AppArmor(根据发行版启用)
- Alibaba Cloud Linux/CentOS:默认启用 SELinux,建议保持
enforcing模式,安装setroubleshoot辅助排错; - Ubuntu:默认启用 AppArmor,无需额外操作。
✅ 六、其他最佳实践
- ✅ 定期备份:使用阿里云快照(系统盘+数据盘)、
mysqldump+tar脚本自动备份至 OSS; - ✅ 监控告警:开通云监控(CPU/内存/磁盘/网络),设置阈值告警;
- ✅ Web 目录权限最小化:
sudo chown -R lampadmin:apache /var/www/html # CentOS/Alibaba Cloud sudo chmod -R 755 /var/www/html && chmod 644 /var/www/html/*.php
📌 补充说明:
- MySQL 替代方案:推荐 AliSQL(阿里云深度优化的 MySQL 分支)或 MariaDB 10.6+(开源替代),避免使用过时的 MySQL 5.6;
- PHP 版本:建议 ≥ 8.0(PHP 7.4 已 EOL),使用
remi(CentOS)或ondrej/php(Ubuntu)仓库安装; - Apache 替代:高并发场景可考虑 Nginx + PHP-FPM(性能更优),但 LAMP 架构仍以 Apache 为标准。
如需具体某一步的详细命令(如一键部署脚本、SSL 证书申请、MySQL 安全初始化),欢迎继续提问,我可提供分步实操指南 👇
是否需要我为你生成一个 Alibaba Cloud Linux 3 + LAMP(Apache 2.4 + MariaDB 10.11 + PHP 8.2)的一键安装脚本?
轻量云Cloud