轻松上手centos vps建站教程包括环境配置和安全加固
2026年06月02日

本文适用于想在 CentOS VPS 上快速搭建网站的开发者与站长,覆盖从基础环境安装到常见安全加固的实用步骤与命令(适配 CentOS 7/8,部分命令在不同版本稍有差异)。
准备工作
- 获取 VPS(Root 权限或 sudo 权限)并绑定域名。
- 本教程假设使用 SSH 连接:ssh root@your_server_ip
- 推荐先备份重要数据并测试环境。
1. 系统更新与基础软件
yum update -y
yum install -y epel-release wget curl vim unzip policycoreutils-python-utils
注意:CentOS 8/Stream 可能使用 dnf,但大多数 yum 命令可兼容。
2. 创建非 root 用户并加固 SSH
adduser deploy
passwd deploy
usermod -aG wheel deploy
mkdir /home/deploy/.ssh
chmod 700 /home/deploy/.ssh
# 将本地公钥上传到 /home/deploy/.ssh/authorized_keys
chown -R deploy:deploy /home/deploy/.ssh
chmod 600 /home/deploy/.ssh/authorized_keys
修改 /etc/ssh/sshd_config:禁用 PermitRootLogin、启用 PubkeyAuthentication、可考虑更换 Port。修改后重启 sshd:systemctl restart sshd
3. 安装 LEMP(Nginx + MariaDB + PHP-FPM)
yum install -y nginx
yum install -y mariadb-server mariadb
# 安装 PHP(根据需求选择版本)
yum install -y php php-fpm php-mysqlnd php-opcache php-cli
启动并配置开机自启:
systemctl enable --now nginx
systemctl enable --now mariadb
systemctl enable --now php-fpm
运行 mysql_secure_installation 完成 MariaDB 初始安全设置。
4. 配置 Nginx 虚拟主机与权限
在 /etc/nginx/conf.d/ 下创建站点配置,例如 example.com.conf:
server {
listen 80;
server_name example.com www.example.com;
root /var/www/example.com/html;
index index.php index.html;
location / { try_files $uri $uri/ /index.php?$args; }
location ~ \.php$ { include fastcgi_params; fastcgi_pass unix:/run/php-fpm/www.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; }
access_log /var/log/nginx/example.access.log;
error_log /var/log/nginx/example.error.log;
}
创建网站目录并设置 SELinux 与权限:
mkdir -p /var/www/example.com/html
chown -R deploy:deploy /var/www/example.com
# 若启用 SELinux
semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/example.com(/.*)?"
restorecon -Rv /var/www/example.com
5. 免费 SSL(Let's Encrypt)
推荐使用 certbot 或 acme.sh 申请证书:
yum install -y certbot python3-certbot-nginx
certbot --nginx -d example.com -d www.example.com
证书续期可通过 cron 或 systemd 定期运行 certbot renew。
6. 防火墙与安全加固
- 使用 firewalld 管理端口:
firewall-cmd --permanent --add-service=http --add-service=https --add-service=ssh; firewall-cmd --reload - 安装 fail2ban 防止暴力破解:
yum install -y fail2ban; systemctl enable --now fail2ban,配置 /etc/fail2ban/jail.local 监控 ssh/nginx - 启用 SELinux(建议保持 Enforcing),并针对 web 目录设置正确上下文
- 限制 sudo 权限、定期更新(yum update)与备份
7. 日常维护与备份
- 配置定期备份网站文件与数据库(rsync + mysqldump 或第三方备份工具)。
- 开启自动安全更新(yum-cron 或 dnf-automatic),并在非高峰时段测试更新。
- 监控:使用简单的监控(Prometheus、Zabbix 或第三方服务)检查可用性与资源。
测试与上线
完成以上步骤后,确保域名解析生效,访问 http(s) 检查页面、PHP 运行与数据库连接。上线前在不同设备与网络下测试性能与安全。
总结
以上为在 CentOS VPS 上从零搭建网站的常见流程:系统更新、非 root 用户、LEMP 环境、虚拟主机配置、TLS 部署与多项安全加固措施。实际项目可能根据应用(WordPress、框架站点、静态站点)有所调整,建议在生产环境上线前先在测试机上验证配置。
- 最新文章
-
行业门户选择云建站需要多少钱 服务商报价和合同注意事项2026-06-02
-
南平小程序开发多少钱 从设计到上线全流程成本解析2026-06-02
-
衡水网站建设公司怎么选 实战指南包含报价参考项目周期与交付标准2026-06-02
- 相关文章
-
面向新手的景安vps建站教程常见问题汇总与实用解决步骤2026-06-02
-
企业搭建站点的香港云服务器建站流程图全流程实操手册2026-06-02
-
新手必看香港云服务器建站流程图详细步骤与图示讲解2026-06-02