入门服务器搭建免费
2024年最值钱的VPS:Hetzner搭建个人网站完整指南
12 分钟阅读2.3k 人已读
4.9(186 人评分)
更新于 2024-11-20为什么选Hetzner
在众多海外VPS提供商中,Hetzner凭借极高的性价比脱颖而出。以最常用的CX22套餐为例: 2核CPU、4GB内存、40GB SSD,月费仅约€3.9(约¥30),比同规格的DigitalOcean便宜40%, 比AWS Lightsail便宜60%。
数据中心位于德国和芬兰,对欧美用户延迟极低。国内访问需要配合Cloudflare CDN,延迟可控制在200ms以内,完全满足个人网站需求。
Hetzner Cloud 控制台截图
注册与选配置
访问 console.hetzner.cloud, 用邮箱注册后需完成身份验证(护照或驾照照片),审核通常在30分钟内完成。
创建新项目后点击「Add Server」,按以下参数选择:
- Location:Nuremberg(欧洲延迟较低)或 Helsinki
- Image:Ubuntu 22.04 LTS(稳定,社区资源丰富)
- Type:Shared vCPU → CX22(入门首选)
- Networking:同时勾选 IPv4 和 IPv6
基础安全加固
新服务器上线后,默认只有 root 账号且密码登录开启,必须立刻完成以下加固步骤,否则几分钟内就会被扫描器攻击。
SSH密钥登录配置
本地生成密钥对(如已有可跳过),然后将公钥上传到服务器:
# 本地生成密钥 ssh-keygen -t ed25519 -C "your@email.com" # 将公钥复制到服务器(替换为你的服务器IP) ssh-copy-id -i ~/.ssh/id_ed25519.pub root@<YOUR_SERVER_IP> # 验证密钥登录成功后,禁用密码登录 sudo nano /etc/ssh/sshd_config # 修改以下两行: # PasswordAuthentication no # PermitRootLogin prohibit-password sudo systemctl restart sshd
UFW防火墙规则
# 安装并配置UFW sudo apt update && sudo apt install ufw -y # 默认拒绝所有入站,允许所有出站 sudo ufw default deny incoming sudo ufw default allow outgoing # 允许SSH、HTTP、HTTPS sudo ufw allow 22/tcp sudo ufw allow 80/tcp sudo ufw allow 443/tcp # 启用防火墙 sudo ufw enable # 查看状态 sudo ufw status verbose
Nginx安装与配置
sudo apt install nginx -y sudo systemctl enable nginx sudo systemctl start nginx # 创建站点配置(替换 yourdomain.com) sudo nano /etc/nginx/sites-available/yourdomain.com
Nginx配置文件内容如下:
server {
listen 80;
server_name yourdomain.com www.yourdomain.com;
root /var/www/yourdomain.com;
index index.html;
location / {
try_files $uri $uri/ =404;
}
# 开启gzip压缩
gzip on;
gzip_types text/plain application/json application/javascript text/css;
}Let's Encrypt SSL证书
sudo apt install certbot python3-certbot-nginx -y sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com # 证书90天自动续期(certbot已自动配置cron,验证) sudo certbot renew --dry-run
部署第一个网站
将本地构建好的静态文件上传到服务器:
# 本地构建(以Next.js为例) npm run build && npm run export # 上传到服务器 rsync -avz --delete ./out/ root@<YOUR_IP>:/var/www/yourdomain.com/ # 重载Nginx配置 sudo nginx -t && sudo systemctl reload nginx
定时备份方案
Hetzner控制台提供快照功能(按需收费,每GB约€0.011/月),但更推荐用脚本自动备份到对象存储:
# 安装rclone连接Backblaze B2(免费10GB) curl https://rclone.org/install.sh | sudo bash rclone config # 每天凌晨3点备份 /var/www 到 B2 echo "0 3 * * * root rclone sync /var/www remote:my-backup/www" | sudo tee /etc/cron.d/daily-backup
至此,你的VPS已完成基础配置并成功上线第一个网站。下一步推荐阅读「Docker化部署」进一步提升运维效率。
为本文评分
点击星星评分
评论 (3)
A
Alex_Chen2024-11-22
照着这篇文章操作,不到一小时就把VPS跑起来了,Nginx配置那部分讲得特别清楚,省了我好多踩坑时间。
独
独立开发小白2024-11-28
请问SSL证书配置那一步报错 'connection refused',是不是防火墙的问题?文章里的解决方案我试了还是不行。
M
Monica_Zhu2024-12-03
Hetzner性价比真的高,同配置比DO便宜差不多40%,现在我所有项目都迁过去了。文章最后那段关于备份的内容非常实用。
登录 后发表评论
