VPS 知识库

从选购、部署、安全加固到网络检测和备份恢复,用真实命令和完整步骤帮助你管理自己的云服务器。

开始部署网站 查看安全加固
选购指南

VPS挑选指南:如何判断一台机器是否值得买?

VPS 选购不能只看价格,应该同时关注 CPU、内存、硬盘、带宽、流量、线路、IP质量和商家稳定性。 如果只是部署个人博客、导航页或轻量服务,1 核 1G 内存基本够用;如果要运行 Docker、数据库、监控面板,建议至少 2 核 2G。

实际操作 1:购买前测试商家提供的测试 IP

在本地电脑执行下面的命令,把 测试IP地址 换成商家给你的测试 IP。

# Windows
ping 测试IP地址
tracert 测试IP地址

# Linux / macOS
ping 测试IP地址
traceroute 测试IP地址

如果延迟很高、路由绕路严重、晚高峰丢包明显,就不建议购买。面向国内用户的网站,晚高峰体验比白天测试更重要。

实际操作 2:VPS 到手后查看基础配置

# 查看 CPU 信息
lscpu

# 查看内存
free -h

# 查看硬盘空间
df -h

# 查看系统版本
cat /etc/os-release

# 查看公网 IP
curl ip.sb

实际操作 3:测试硬盘写入速度

# 写入 1G 测试文件
dd if=/dev/zero of=testfile bs=1G count=1 oflag=direct

# 删除测试文件
rm -f testfile
注意:硬盘测速只能作为参考,不要在生产环境频繁执行大文件写入测试。

实际操作 4:检测 IP 纯净度

VPS 的 IP 质量很关键,部分 IP 可能被搜索引擎、邮件系统、流媒体平台或风控系统标记。 你可以参考这篇教程: 如何检测 IP 纯净度

延伸阅读: 如果你正在纠结 VPS 商家、线路、价格和配置,可以继续阅读: VPS 选购经验与避坑参考
部署教程

VPS部署教程:从零部署一个 Nginx 静态网站

下面以 Ubuntu / Debian 系统为例,从初始化服务器开始,部署一个可以通过浏览器访问的网站。

第一步:更新系统

apt update && apt upgrade -y

第二步:安装常用工具和 Nginx

apt install -y curl wget vim git unzip ufw nginx

第三步:创建网站目录

mkdir -p /var/www/vpsblog
cd /var/www/vpsblog

第四步:创建首页文件

cat > /var/www/vpsblog/index.html <<'EOF'
<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
  <title>我的 VPS 博客</title>
</head>
<body>
  <h1>我的 VPS 博客已经部署成功</h1>
  <p>这是运行在 VPS 上的第一个网页。</p>
</body>
</html>
EOF

第五步:配置 Nginx 站点

cat > /etc/nginx/sites-available/vpsblog <<'EOF'
server {
    listen 80;
    server_name your-domain.com;

    root /var/www/vpsblog;
    index index.html;

    location / {
        try_files $uri $uri/ =404;
    }
}
EOF

your-domain.com 改成你的域名。如果暂时没有域名,也可以先用服务器 IP 访问。

第六步:启用站点并重载 Nginx

ln -s /etc/nginx/sites-available/vpsblog /etc/nginx/sites-enabled/vpsblog

nginx -t
systemctl reload nginx

第七步:访问网站

http://你的服务器IP
如果页面能打开,说明 Nginx 静态网站部署成功。
安全加固

VPS安全相关:上线前必须完成的安全配置

VPS 暴露在公网后,会持续收到扫描和 SSH 爆破请求。上线前建议完成普通用户、SSH 密钥、防火墙和 Fail2ban 配置。

第一步:创建普通用户

adduser deploy
usermod -aG sudo deploy

第二步:在本地电脑生成 SSH 密钥

ssh-keygen -t ed25519 -C "vps-login"

第三步:上传公钥到服务器

ssh-copy-id deploy@你的服务器IP

第四步:修改 SSH 配置

vim /etc/ssh/sshd_config

找到或添加以下配置:

Port 2222
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes

第五步:重启 SSH 服务

systemctl restart ssh
重启 SSH 后不要立刻关闭当前连接。先新开一个终端测试新端口是否能登录,确认无误后再关闭旧连接。

第六步:配置防火墙

ufw allow 2222/tcp
ufw allow 80/tcp
ufw allow 443/tcp
ufw enable
ufw status

第七步:安装 Fail2ban 防爆破

apt install -y fail2ban

cat > /etc/fail2ban/jail.local <<'EOF'
[sshd]
enabled = true
port = 2222
maxretry = 5
findtime = 10m
bantime = 1h
EOF

systemctl enable fail2ban
systemctl restart fail2ban
fail2ban-client status sshd
推荐阅读: 想继续了解 VPS 防护、风险点和加固思路,可以查看: VPS 安全防护与服务器加固实践
网络检测

VPS网络检测:延迟、路由、丢包和带宽怎么看?

VPS 网络质量不能只看商家宣传。建议从公网 IP、延迟、路由、丢包、下载速度和晚高峰稳定性几个方面综合判断。

实际操作 1:查看公网 IP 和归属信息

curl ip.sb
curl ipinfo.io

实际操作 2:测试延迟

ping 8.8.8.8
ping 1.1.1.1

实际操作 3:安装 MTR 查看路由和丢包

apt install -y mtr
mtr -rw 8.8.8.8

如果中间节点偶尔丢包但最终节点不丢包,通常问题不大;如果最终节点持续丢包,说明网络质量可能有问题。

实际操作 4:安装 Speedtest 测速

curl -s https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.deb.sh | bash
apt install -y speedtest

speedtest

实际操作 5:使用 iperf3 测试带宽

apt install -y iperf3

# 示例公开节点
iperf3 -c ping.online.net
Docker部署

使用 Docker 部署常见服务

Docker 适合在 VPS 上部署应用。它的优点是环境隔离、迁移方便、卸载干净,非常适合部署博客、面板、监控、文件服务等。

第一步:安装 Docker

curl -fsSL https://get.docker.com | bash

systemctl enable docker
systemctl start docker

docker version

第二步:安装 Docker Compose 插件

apt install -y docker-compose-plugin
docker compose version

第三步:部署一个 Nginx 容器

mkdir -p /opt/nginx-demo
cd /opt/nginx-demo

cat > docker-compose.yml <<'EOF'
services:
  nginx:
    image: nginx:latest
    container_name: nginx-demo
    ports:
      - "8080:80"
    restart: always
EOF

docker compose up -d

第四步:查看容器状态

docker ps
docker logs nginx-demo

第五步:访问服务

http://你的服务器IP:8080

第六步:停止和删除容器

cd /opt/nginx-demo
docker compose down
HTTPS证书

给网站配置 HTTPS:使用 Certbot 申请免费证书

网站上线后建议配置 HTTPS。下面以 Nginx + Let’s Encrypt 为例,演示如何申请和自动续期证书。

第一步:确认域名解析到服务器

# 在本地电脑或服务器上执行
ping your-domain.com

返回的 IP 应该是你的 VPS 公网 IP。

第二步:安装 Certbot

apt install -y certbot python3-certbot-nginx

第三步:申请证书

certbot --nginx -d your-domain.com

第四步:测试自动续期

certbot renew --dry-run

第五步:查看证书定时任务

systemctl list-timers | grep certbot
证书申请成功后,访问地址会从 http://your-domain.com 变成 https://your-domain.com。
备份恢复

VPS数据备份:网站和数据库怎么备份?

VPS 一定要定期备份,避免误删、磁盘损坏、服务商故障或被攻击后无法恢复。

实际操作 1:备份网站目录

mkdir -p /backup

tar -czvf /backup/www-$(date +%F).tar.gz /var/www

实际操作 2:备份 MySQL 数据库

mysqldump -u root -p 数据库名 > /backup/db-$(date +%F).sql

实际操作 3:创建自动备份脚本

cat > /root/backup.sh <<'EOF'
#!/bin/bash

BACKUP_DIR="/backup"
DATE=$(date +%F)

mkdir -p $BACKUP_DIR

tar -czf $BACKUP_DIR/www-$DATE.tar.gz /var/www

# 如需备份数据库,取消下面一行注释并修改数据库名
# mysqldump -u root -p'你的数据库密码' 数据库名 > $BACKUP_DIR/db-$DATE.sql

find $BACKUP_DIR -type f -mtime +7 -delete
EOF

chmod +x /root/backup.sh

实际操作 4:添加定时任务

crontab -e

加入下面一行,表示每天凌晨 3 点执行备份:

0 3 * * * /root/backup.sh

实际操作 5:恢复网站文件

tar -xzvf /backup/www-2026-06-09.tar.gz -C /

实际操作 6:恢复数据库

mysql -u root -p 数据库名 < /backup/db-2026-06-09.sql
备份不要只放在 VPS 本机。建议同步到对象存储、另一台服务器或本地电脑。