手把手教你用VPS搭建网站环境从零到部署的完整指南
卡尔云官网
www.kaeryun.com
作为一名网络安全从业者,我经常被问到:“怎么用VPS搭建一个安全又稳定的网站环境?”今天我就用最通俗的大白话,结合10年实战经验,带你彻底搞懂VPS建站的完整流程,包括那些新手最容易踩的坑和必须注意的安全细节。
一、VPS建站的核心四件套
想象VPS就像毛坯房,要让它变成能住人的网站,需要四个基础装修(以最常用的LNMP环境为例):
1. Linux系统:推荐Ubuntu/CentOS
- 举例:Ubuntu 22.04 LTS就像精装房交付版,长期支持更新
- 避坑:千万别选已停止维护的CentOS 8(2021年底就凉了)
2. Nginx/Apache:网站的门卫兼快递员
- Nginx优势:处理高并发像开了外挂(比如抗住每秒5000请求)
- 真实案例:某客户用Apache被CC攻击打崩,换Nginx后CPU直降80%
3. MySQL/MariaDB:网站的记事本
- MariaDB是MySQL亲兄弟,性能提升还免费(Oracle收购MySQL后部分功能开始收费)
4. PHP/Python:网站的翻译官
- PHP 8.0比7.4性能提升20%,就像手机系统升级后更流畅
二、详细搭建步骤(附安全加固技巧)
▶️ 阶段1:SSH远程登录防暴破
```bash
修改默认22端口(黑客扫描工具第一攻击目标)
sudo nano /etc/ssh/sshd_config
Port 59283
改成5位数随机端口
禁止root直接登录
PermitRootLogin no
重启生效
systemctl restart sshd
```
⚠️ 血泪教训:去年有个客户没改端口,被自动化工具爆破成功,服务器变成肉鸡
▶️ 阶段2:安装LNMP环境(宝塔面板 vs 手动安装)
方案A:懒人版(宝塔面板)
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh
✅ 优点:图形化操作像玩手机APP
❌ 缺点:默认开放8888端口需立即修改,曾有漏洞导致批量入侵事件
方案B:硬核手动版
Nginx安装
sudo apt install nginx -y
MySQL安全初始化(重点!)
sudo mysql_secure_installation
一定要设置root密码并移除测试数据库
PHP安装(根据需求选版本)
sudo apt install php8.0-fpm php8.0-mysql -y
▶️ 阶段3:防火墙配置(必做!)
Ubuntu自带ufw防火墙
sudo ufw allow 59283/tcp
放行SSH新端口
sudo ufw allow 80,443/tcp
HTTP/HTTPS必须
sudo ufw enable
CentOS用firewalld:
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --reload
三、新手常见翻车现场
1. 数据库裸奔
- ❌错误做法:root密码设为"123456"或留空
- ✅正确姿势:使用16位混合密码+定期更换
2. 文件权限失控
```bash
WordPress典型错误配置:
chmod -R 777 /var/www/html/
⚠️这相当于把家门钥匙插在门上
正确做法:
chown -R www-data:www-data /var/www/html/
find /var/www/html/ -type d -exec chmod 755 {} \;
find /var/www/html/ -type f -exec chmod 644 {} \;
```
3. 忘记备份
MySQL自动备份脚本示例(每天3点执行)
0 3 * * * mysqldump -u root -p密码 数据库名 > /backups/db_$(date +\%Y\%m\%d).sql
四、高阶安全锦囊
1. SSL证书免费方案
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d yourdomain.com
Let's Encrypt证书自动续期:
0 */12 * * * certbot renew --quiet --post-hook "systemctl reload nginx"
2. 防爬虫/CC攻击配置
在Nginx配置中添加:
```nginx
limit_req_zone $binary_remote_addr zone=anti_flood:10m rate=30r/m;
location / {
limit_req zone=anti_flood burst=50 nodelay;
...
}
3. 服务器监控三板斧
CPU监控神器htop:
sudo apt install htop && htop
网络连接检查:
ss -tulnp | grep 'nginx\|mysql'
内存泄漏检测:
free -h && vmstat
```
五、成本优化小技巧
1️⃣ 选VPS厂商要看隐藏参数
- BandwagonHost便宜但超售严重(晚高峰卡成PPT)
- AWS Lightsail首年$3.5/月但流量超额贵到肉疼
-良心推荐:腾讯云轻量服务器香港节点,30M带宽真香
2️⃣ 资源占用对比表
|软件|内存占用|适合场景|
|---|---|---|
|OpenLiteSpeed|150MB|流量型站点|
|MySQL8.0|300MB+|大型数据库|
|SQLite|<50MB|个人博客|
最后提醒大家:建站只是开始,维护才是持久战。建议每月做一次安全体检,关注CVE漏洞公告。遇到问题欢迎评论区交流——毕竟在网络安全领域,最危险的不是黑客,而是迷之自信的配置!
TAG:vps搭建网站环境,vps 建站,vps建站图文教程,vps搭建ip卡尔云官网
www.kaeryun.com