FieryWing 的技术博客

VPS 入门:怎么选、怎么初始化

2026-03-08

VPS(虚拟专用服务器)是把一台物理服务器切成多份出租的云主机。个人搭博客、跑小服务、做学习环境,一台入门配置就够用。

VPS 和其他方案的区别

最早我是用虚拟主机放网页的,后来发现很多事情做不了:不能自己装软件、不能改系统配置、也没法跑常驻的后台程序。VPS 给你的是一个完整的 Linux 系统,拥有 root 权限,你可以自己决定装什么、开哪些端口。代价是安全和维护都要自己负责:系统更新、防火墙、备份,没有人替你做。

和物理独立服务器相比,VPS 价格低、开通快,适合个人使用;和纯托管的静态网站服务相比,VPS 更灵活,但需要你有一点运维基础。如果你只想放几个静态页面,托管服务可能更省事;如果想学习 Linux、折腾服务,VPS 是很好的实验场。

选购时看什么

关于备案

很多人踩过这个坑,所以单独说一下。网站服务器放在中国大陆境内时,需要通过接入服务商(通常就是你购买服务器的云厂商)办理 ICP 备案,备案通过后才能用域名对外提供网站服务。具体材料、流程和审核周期以所购服务商和管理部门的要求为准,请直接查看服务商的备案指引,这里不做展开。备案号需要按规定放在网站页脚,本站页脚就能看到。

如果你选的是境外节点,一般不涉及这一步,但仍然要遵守相关法律法规,也要注意延迟和访问稳定性是否满足你的需要。建议先想清楚网站面向谁,再决定地区,不要买完机器才发现域名用不了。

一个粗略的选配思路

用途内存参考说明
静态博客、个人主页512M 到 1G配合 Caddy 或 Nginx 即可
小型动态网站1G 到 2G数据库会占用不少内存
Docker 多个容器2G 以上容器多了内存最先吃紧
学习实验1G 左右随时可以重装,别放重要数据

以上只是我个人的经验性参考,不同软件差别很大,实际以监控数据为准。内存不够时可以考虑加一点 swap,但 swap 只是应急,不能代替真正的内存。

拿到机器后的第一步

  1. 更新系统:apt update && apt upgrade。
  2. 新建普通用户,不要长期使用 root 登录。
  3. 配置 SSH 密钥登录,并关闭密码登录(详见《SSH 安全加固》一文)。
  4. 开启防火墙,只放行需要的端口(如 80、443 和自己的 SSH 端口)。
  5. 设置时区,确认时间同步正常。

下面把这几步展开成可以直接照着做的命令。以下均以 Debian 或 Ubuntu 为例,请用 root 或有 sudo 权限的账号执行。

更新系统并安装常用工具

apt update
apt upgrade -y
apt install -y sudo curl vim ufw

有些最小化镜像默认没有 sudo,所以顺手装上。如果升级时提示内核更新,通常重启一次即可:reboot。

创建普通用户

adduser deploy
usermod -aG sudo deploy

deploy 只是示例用户名,换成你喜欢的即可。创建后先别急着退出 root 会话,新开一个终端用这个用户登录,并执行 sudo whoami 确认返回 root,说明权限配置没问题。

配置密钥登录

在你自己的电脑上生成密钥,并把公钥传到服务器:

ssh-keygen -t ed25519
ssh-copy-id deploy@203.0.113.10

这里的 203.0.113.10 是文档专用示例地址,请换成你自己的服务器 IP。确认能用密钥登录之后,才可以考虑关闭密码登录,具体步骤和风险我在 SSH 安全加固 里写得更细,请务必先读完再操作。

防火墙:小心把自己锁在外面

Debian 和 Ubuntu 上最容易上手的是 ufw。关键点是:先放行 SSH,再启用防火墙。顺序反了,当前连接可能立刻失效,你就进不去服务器了。

ufw allow 22/tcp
ufw allow 80/tcp
ufw allow 443/tcp
ufw status verbose
ufw enable

如果你改过 SSH 端口,第一条要换成实际端口。启用后再新开一个终端测试能否登录,确认无误再关闭旧会话。另外,很多云厂商还有一层“安全组”,它独立于系统里的防火墙:系统放行了而安全组没放行,外部一样连不上。排查时两边都要看。防火墙更完整的用法可以看 防火墙 一文。

时区与时间同步

timedatectl set-timezone Asia/Shanghai
timedatectl status

输出里如果看到 System clock synchronized: yes,就说明时间同步正常。时间不准会带来很多奇怪的问题,比如证书校验失败、日志时间对不上,所以这一步不要省。

域名、解析与 HTTPS

机器初始化好之后,下一步通常是让别人能通过域名访问。先到域名服务商那里添加一条 A 记录,指向服务器的公网 IP,原理见 DNS 是什么。然后部署 Web 服务并启用 HTTPS,可以参考 HTTPS 与证书 和 Caddy 的相关文章。注意,大陆节点要等备案通过后再对外提供网站服务。

快照与备份习惯

我的习惯是每次做大改动之前先打一个快照,比如升级系统、修改 SSH 配置、迁移数据库。快照适合“回到某个时间点”,但它通常和服务器放在同一个服务商那里,不等于异地备份。重要数据(数据库导出、配置文件、网站内容)最好另存一份到别处,并且偶尔真的试一次恢复,确认备份是可用的。

常见问题与排查

自动安全更新

服务器上线后最容易被忽略的是后续更新。Debian 和 Ubuntu 可以安装 unattended-upgrades,让系统自动安装安全补丁:

sudo apt install -y unattended-upgrades
sudo dpkg-reconfigure -plow unattended-upgrades

它默认只处理安全更新,风险较小。但自动更新不等于可以完全不管,内核更新后仍需要在合适的时间重启,我一般每隔一段时间登录检查一下 /var/run/reboot-required 是否存在。

基本的监控与日常巡检

个人小站不需要复杂的监控系统,但至少要知道机器是否健康。我常用的几个命令如下:

uptime
free -h
df -h
ss -tlnp
systemctl --failed

它们分别告诉你负载、内存、磁盘、正在监听的端口,以及有哪些服务启动失败。其中 ss -tlnp 尤其有用,可以确认有没有不认识的端口暴露在外。发现陌生服务时先弄清楚来历,再决定是关闭还是放行。

几个新手常见误区

总结

选 VPS 时,先想好用途和面向的用户,再决定地区、配置,大陆节点别忘了备案。拿到机器后的顺序是:更新系统、建普通用户、配置密钥、放行端口再开防火墙、校准时间。每一个可能让你被锁在外面的操作,都先开好第二个会话再动手。做完这些,你的服务器就有了一个比较稳的起点。