VPS 新手教程:从零开始选购、连接并部署自己的服务器
为什么你需要一台 VPS
很多人第一次接触服务器,是从一个很具体的麻烦开始的。比如你想把自己的小工具放到网上给朋友用,结果发现共享主机不支持你需要的运行环境;比如你写了个爬虫或者数据处理脚本,本地电脑一关机任务就断了;再比如你希望有个属于自己的空间,能随意装软件、开端口、调配置,不用担心隔壁邻居把你的资源挤光。
虚拟专用服务器(VPS,Virtual Private Server)正好解决这类问题。它本质上是把一台物理服务器通过虚拟化技术切成若干个互相隔离的小服务器,每个小服务器有自己的 CPU、内存、硬盘和独立操作系统。你拿到的是一个 root 权限的完整系统,想装什么装什么,想怎么改怎么改,同时又比租用一台独立物理服务器便宜得多。
对个人开发者和小团队来说,VPS 的价值在于三点:可控、可预期、可迁移。可控是指你有完整权限,不被面板限制;可预期是指资源独享,不会因为别人的流量暴涨而卡死;可迁移是指数据都在自己手里,换服务商时打包带走即可,不会被平台锁死。
这篇教程不聊虚的,直接带你走一遍完整的流程:从想清楚用途,到买机器、连上去、加固安全、装环境、部署第一个站点,再到做备份和监控。跟着做一遍,你手上就会多一台真正能用的服务器。
准备工作与前置条件
先想清楚用它做什么
这一步最容易被跳过,却最影响后续体验。用途大致分几类:跑网站或博客、跑 API 服务、做定时任务与数据采集、当远程开发环境、做对象存储的中转或备份节点。不同用途对配置的要求差别很大。
- 纯静态站点或轻量博客:1 核 1G 内存就够,硬盘 20G 足够。
- 带数据库的动态站点、小型 API:建议 2 核 2G 起步,硬盘 40G。
- 编译构建、跑容器、多服务共存:4 核 4G 以上会更舒服。
记住一个经验:内存比 CPU 更容易成为瓶颈。很多服务在 1G 内存机器上跑着跑着就被系统杀掉进程,加内存往往比加核心更有效。
选操作系统与机房位置
操作系统建议在 Ubuntu LTS、Debian、AlmaLinux 这类主流发行版里选。它们的软件源更新及时,遇到问题时能搜到的解决方案也最多。如果你更习惯图形化和宝塔类面板,也可以先用 Debian 或 Ubuntu,兼容性最好。
机房位置影响延迟。你的用户主要在哪里,机器就尽量部署在哪里。一般来说,国内用户访问可以选择国内或亚太节点,海外用户则选就近区域。不要只看价格,先看线路和延迟。
准备好本地工具
- 一个 SSH 客户端:Windows 可以用系统自带终端或 PuTTY,macOS 和 Linux 直接用终端。
- 一个文本编辑器:VS Code、Notepad++ 都行,用来改配置文件。
- 一个密码管理器:把 root 密码、数据库密码、私钥密码都存好,别写在便签上。
- 一个域名(可选):想让别人用网址访问,就需要它。
分步骤操作指南
第一步:购买与初始化
下单时留意几个选项。付款周期上,月付灵活、年付便宜但绑定时间长,新手建议先月付试一个月。系统镜像选纯净版,别选自带一堆面板的版本,否则你会搞不清哪些是系统的、哪些是面板装上去的。
如果你需要保存私钥或验证身份,建议直接生成 SSH 密钥对,而不是依赖密码登录。生成密钥的命令如下:
ssh-keygen -t ed25519 -C "my-vps-key"
执行后会在用户目录的 .ssh 文件夹里生成两个文件,id_ed25519 是私钥,绝不能外传;id_ed25519.pub 是公钥,下单时粘贴到服务商的后台即可。
第二步:首次登录服务器
等机器开通后,你会拿到 IP 地址和初始密码。打开终端,输入:
ssh root@你的服务器IP
第一次连接会提示是否信任该主机,输入 yes 回车即可。如果是密码登录,粘贴密码时屏幕上不会显示任何字符,这是正常现象,粘贴完直接回车。
登录成功后,先做三件小事:更新系统、查看资源、确认时区。
apt update && apt upgrade -y
free -h && df -h
timedatectl
时区如果能设置成你所在地区的时区,日志时间会更好读,命令是 timedatectl set-timezone Asia/Shanghai。
第三步:安全加固,别省这一步
一台公网 IP 的服务器上线后,几分钟内就会有人尝试暴力破解 SSH,这不是危言耸听。加固的核心是四件事。
- 创建普通用户并授予 sudo 权限,日常操作不用 root:
adduser deploy,然后usermod -aG sudo deploy。 - 把公钥写入普通用户的
~/.ssh/authorized_keys,并设置权限chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys。 - 编辑
/etc/ssh/sshd_config,把PasswordAuthentication改成no,再重启 SSH 服务。改之前务必确认密钥登录已经能成功,否则你会把自己锁在外面。 - 配置防火墙,只放行必要端口:
ufw allow 22/tcp、ufw allow 80/tcp、ufw allow 443/tcp,然后ufw enable。
如果还想更进一步,可以装 fail2ban,它会在检测到多次登录失败后自动封禁来源 IP,对自动化扫描非常有效。
第四步:安装运行环境
环境怎么装取决于你要跑什么。跑静态站点只需要 Nginx;跑动态应用再按需加数据库和语言运行时。建议优先使用系统包管理器,稳定且好维护。
apt install nginx -y
apt install mysql-server -y
如果你更喜欢用容器,可以装 Docker,把每个服务装进独立容器,环境隔离更干净,迁移也方便。装完后执行 systemctl enable --now nginx,这样服务器重启后服务会自动拉起。
装完在浏览器里访问你的服务器 IP,如果看到 Nginx 的默认欢迎页,说明 Web 服务已经正常工作。
第五步:部署你的第一个站点
先在 /var/www 下建目录,放一个简单的 HTML 文件测试:
mkdir -p /var/www/mysite && echo "<h1>Hello VPS</h1>" > /var/www/mysite/index.html
接着在 /etc/nginx/sites-available/ 新建一个配置文件,把 root 指向上面的目录,再用 ln -s 链接到 sites-enabled,最后 nginx -t 检查语法,systemctl reload nginx 生效。
如果部署的是一套应用而不是静态文件,思路是让应用监听一个本地端口,比如 3000,然后让 Nginx 做反向代理,把外部请求转发过去。这样你既能用 Nginx 处理证书和压缩,又不用把应用端口直接暴露在公网上。
第六步:绑定域名并开启 HTTPS
先到域名解析后台添加一条 A 记录,把域名指向你的服务器 IP。解析生效需要一点时间,可以用 ping 你的域名 验证是否已经指向正确。
然后安装证书工具:
apt install certbot python3-certbot-nginx -y
certbot --nginx -d example.com -d www.example.com
按提示填写邮箱并同意条款,证书会自动申请并写入 Nginx 配置。之后 certbot 会注册一个定时任务自动续期,你可以用 certbot renew --dry-run 演练一次,确认续期流程没问题。这一步做完,浏览器地址栏就会显示安全锁标志。
第七步:备份与监控
没有备份的服务器等于没有服务器。备份分两层:一是把重要数据定时同步到别的地方,二是给系统盘做快照。
数据同步可以用 rsync 配合定时任务,把网站目录和数据库导出文件推到另一台机器或对象存储上。数据库不要直接复制文件,应该用导出命令生成 SQL 文件再做传输,这样才保证一致性。
监控方面,先用最简单的办法:装个 htop 看实时负载,配置一个定时脚本检查服务是否存活,或者用一个外部监控服务定期访问你的站点,一旦失败就发通知。磁盘使用率尤其要盯紧,日志文件把磁盘写满是新手最常见的故障原因之一。
常见问题与避坑提示
下面这些坑,几乎每个新手都会踩一两个。
- 把快照当备份。快照和服务器在同一套基础设施里,如果你的账号出问题,两者可能一起丢。重要数据一定要异地备份。
- 只改 SSH 端口就以为安全了。换端口能减少扫描噪音,但不能替代密钥登录和防火墙,两者要一起做。
- 忘记开启开机自启。手动跑起来的服务,重启后会消失。用
systemctl enable固化下来。 - 内存太小又不开 swap。1G 内存的机器建议配一小块 swap,能显著减少进程被系统杀掉的概率。
- 防火墙开了却忘了放行新端口。部署新服务后访问不通,先查防火墙,再查服务本身是否在监听。
- 只看价格不管超售。极低价套餐往往 CPU 和磁盘 IO 被严重超卖,白天卡顿、晚上更卡,体验很差。
- 密码到处复用。数据库密码、面板密码、SSH 密码至少不要互相复用,一台被攻破不至于全线失守。
- 删除文件却不看磁盘。日志、缓存、旧版本备份会慢慢吃满空间,定期清理并设置日志轮转。
另外提醒一句,无论用 VPS 做什么,都要遵守所在地法律法规和服务商的使用条款。不要用它发起攻击、扫描他人网络、传播恶意程序或托管侵权内容,这些行为不仅会导致机器被封,还可能承担法律责任。把自己的项目做好,才是这台机器最大的价值。
总结
回头看,VPS 的入门路径其实很清晰:明确用途、选对配置与系统、用 SSH 连上去、把安全基础打牢、装好运行环境、部署应用、绑域名开 HTTPS、最后补上备份和监控。这八步走完,你就拥有了一个真正属于自己、可以长期使用的线上环境。
刚开始不必追求一步到位的架构。先用最小可用配置跑起来,遇到问题再逐步优化,比一开始就设计一套复杂方案要有效得多。建议你今天就动手,买一台最便宜的机器,完成从登录到部署静态页面的全流程。这个过程里学到的命令和思路,会一直用得上。