制器坊 网络与建站

VPS 入门:连接、账号、防火墙与日常维护

确认登录可恢复,再逐步收紧访问权限。配合操作示例、图解和检查点,完成第一次练习,再逐步排查使用中的问题。

信息层级:【有据可查】= 附官方文档或可信来源链接;【社区共识】= 社区用户普遍经验,未经官方确认;【待考察/推测】= 推测或暂未能核实,请谨慎对待。

🧭 本篇讲 VPS 作为正常服务器的用途:部署自建网关(New API 部署与使用:渠道、令牌、额度和备份)、跑 OpenClaw 这类常驻 Agent(OpenClaw 入门:独立环境、配置与安全边界)、托管网站后端、开发测试环境。不涉及用 VPS 搭建跨境代理或规避地区限制。


1. VPS 是什么?

【社区共识】VPS(Virtual Private Server,虚拟专用服务器)= 云厂商机房里一台分给你的虚拟电脑,有独立公网 IP、可 SSH 登录、按月/按量付费。

图 1

1.1 你真的需要 VPS 吗?

需求 更简单的替代
放个静态网站/博客 静态托管(域名与静态网站:发布、DNS 与 HTTPS),免服务器
只给自己用的 New API 本机运行 + 不暴露公网
让 Agent 跑长任务 Codex Web / 官方云 Agent(Codex 云端任务与 ChatGPT:从需求到代码审查)
7×24 常驻机器人、团队内网关 ✅ VPS 合适

2. 选购要点【社区共识】

维度 怎么看
地区 离用户近、符合数据合规要求;中国大陆机房对外提供网站需 ICP 备案(见 域名与静态网站:发布、DNS 与 HTTPS)
配置 网关/机器人类入门:1–2 核、2–4GB 内存通常够用(Docker + PostgreSQL 建议 ≥2GB)【待考察:视负载】
系统 选 Ubuntu LTS / Debian 稳定版,教程最多
计费 按月 vs 按量;注意流量超额计费
快照/备份 是否支持、是否另收费
厂商条款 允许的用途(多数禁止滥发邮件、挖矿等)

3. 拿到 VPS 后的第一小时:安全加固

图 2

以下以 Ubuntu/Debian 为例【有据可查:Ubuntu Server 文档、UFW】:

# 1. 更新
sudo apt update && sudo apt upgrade -y

# 2. 新建用户
sudo adduser alice
sudo usermod -aG sudo alice

# 3. 在【你自己的电脑】上生成密钥并上传
ssh-keygen -t ed25519
ssh-copy-id alice@你的VPS_IP

# 4. 确认密钥能登录后,再编辑 /etc/ssh/sshd_config:
#    PasswordAuthentication no
#    PermitRootLogin no
# 保存配置后先检查;若有错误或退出码非 0,先修正,不要继续重启
sudo sshd -t
# 仅检查通过后执行;部分发行版服务名为 sshd
sudo systemctl restart ssh
# 保持当前连接;在自己电脑的第二窗口重新用密钥登录 alice,再验证 sudo

# 5. 防火墙(先放行 SSH,再启用!)
sudo ufw allow OpenSSH
sudo ufw allow 80,443/tcp
sudo ufw enable
sudo ufw status

# 6. 自动安全更新
sudo apt install unattended-upgrades -y
sudo dpkg-reconfigure --priority=low unattended-upgrades

⚠️ 最常见的自锁事故:没确认密钥可用就关了密码登录,或启用防火墙前没放行 SSH。保持一个已登录的终端不关,另开一个窗口测试新配置。

【社区共识】也要检查云厂商控制台的安全组——它和系统内防火墙是两层,两边都要放行。


4. 部署服务的原则

原则 例子
管理界面不直接暴露公网 New API 后台、OpenClaw 网关(OpenClaw 入门:独立环境、配置与安全边界 建议 gateway.bind: "loopback")、数据库端口
用 SSH 隧道访问内部服务 ssh -L 3000:127.0.0.1:3000 alice@VPS 然后本机打开 localhost:3000
对外服务走 HTTPS 反代 Caddy 可自动申请 Let's Encrypt 证书【有据可查:Caddy Automatic HTTPS】
Docker 端口映射注意 【有据可查:Docker 官方】发布端口的流量可能绕过 UFW 常规规则;只需本机访问时映射为 127.0.0.1:3000:3000,并核对实际绑定与当前版本
秘密信息放 .env 并限制权限 chmod 600 .env

5. 日常运维

频率 做什么
每周 sudo apt update && sudo apt upgrade(若未开自动更新);看磁盘 df -h
每月 检查登录日志 last、journalctl -u ssh;更新 Docker 镜像
每次大改前 打快照
定期 备份数据库到另一个地方(不要只存同一台 VPS)

6. 让 Agent 帮你运维?

AI Agent 下载与安装:从第一个工具开始的思路同样适用:"先装好 Agent,再让 Agent 帮你配置"。但请注意:


7. 本篇无法核实/需谨慎的点

  • 不同负载下的最低配置需求。
  • 各云厂商安全组/快照的具体操作界面。
  • Docker 与 UFW 交互的细节因版本与配置而异。

小白练习:把本文流程逐项走通

练习目标:确认登录可恢复,再逐步收紧访问权限。

上文已介绍概念、配置和操作示例。下面侧重第一次实际操作时的顺序、检查点和结果核对;需要查具体参数时回到对应小节。命令逐条输入,看到上一条的结果后再继续。

  1. 先在云控制台确认公网 IP、SSH 端口和救援登录入口,再保存初始登录方式。

  2. 在自己的电脑准备 SSH 密钥;已存在的密钥不要覆盖。上传公钥后,从第二个终端测试普通用户登录与管理员权限。

  3. 保持原有连接窗口打开。更改 SSH 配置前备份文件,更改后先检查配置语法,再按系统文档 reload。

  4. 从第二个窗口重新测试登录;确认密钥登录可用后,再关闭密码与 root 直登。

  5. 防火墙先放行真实 SSH 端口,核对云安全组,再启用规则。非 22 端口不要照抄 OpenSSH 预设。

  6. 开网页服务后分别检查应用回环端口、HTTP 或 HTTPS 入口与备份;每次只调整一层,保留故障回退路径。

SSH 防止锁在门外:按顺序验收

【操作补充;配置检查有官方依据】第一,保留已经连上的终端,并确认云控制台的恢复入口可用;按原步骤创建普通用户、加入 sudo、生成并上传密钥。在自己的第二个终端先以该普通用户密钥登录,并验证 sudo 可用。

第二,备份要修改的 SSH 配置,再编辑禁用密码登录与 root 直登的设置。Ubuntu 默认还会读取 /etc/ssh/sshd_config.d/*.conf,较早取得的值可能优先,不能仅凭主文件里写了 no 就断言已经生效。保存后在服务器运行 sudo sshd -t;它检查语法与主机密钥,不会证明你能登录。报错时先修正。

第三,检查通过后按原步骤重启服务,保持旧终端,再从自己的第二窗口建立一次新的普通用户密钥连接并验证 sudo。随后按原顺序先放行实际 SSH 端口,再启用防火墙,并再次建立新连接验证;实际 SSH 端口不是 22 时,OpenSSH 预设未必适用。

【核对边界】第二窗口验证是防锁操作建议;sshd -t 和配置片段的优先规则已由 Ubuntu 官方文档确认。云安全组、系统防火墙和 Docker 端口发布仍要分别检查。

核对来源:Ubuntu 官方:OpenSSH server · Configure OpenSSH;OpenSSH 官方:sshd(8) 的 -t 与 -T;Docker 官方:Port publishing and mapping;Docker 官方:Packet filtering and firewalls · Docker and ufw。

继续浏览制器坊 返回顶部 ↑
教程图解100%
教程图解
灵犀台