OffVPSVPS OFFSHORESoporte

入门指南

你的首次 SSH 会话,并保留返回途径。

在更改新 VPS 上的任何内容之前,确认你正在连接哪台服务器、你可以使用哪个账户,以及如果下一次登录失败你将如何恢复。

Guida sul campo OffVPS · Revisionato · 5 min di lettura

收集访问详细信息和恢复路径

你需要实际的服务器地址、SSH 端口、登录用户名、初始认证方法,以及服务器主机密钥指纹的可信来源。在配置器中选择的主机名不会建立 DNS 或创建账户。请从实际的服务设置中获取这些详细信息,而不是根据对 Linux 镜像的假设。

确认如何访问控制台或救援环境,以及谁可以恢复访问权限。检查你现在是否可以打开该恢复路径;不要在遭遇锁定期间才发现你没有权限或恢复凭据。如果没有独立的恢复路径可用,请保持访问设置不变,直到安排出一条路径。

示例使用你自己计算机上的 Bash 客户端终端,以及 Ubuntu/Debian 服务器。请将真实详细信息替换为 builder、端口 22 y 192.0.2.10,这是一个保留的示例地址。命令供你根据自身环境审查;本指南没有连接或配置过 OffVPS 服务器。

在不替换现有密钥的情况下创建客户端密钥

你的私钥保留在客户端计算机上。匹配的公钥可以安装到服务器账户的授权密钥中。两者都不是服务器的主机密钥:那个单独的密钥有助于识别你正在联系的机器。请将私钥及其口令短语排除在支持消息、仓库和服务器上传之外。

ssh -V
ls -ld "$HOME/.ssh"
ls "$HOME/.ssh/offvps_first_vps" "$HOME/.ssh/offvps_first_vps.pub"

先检查路径。如果 SSH 目录不存在,请以权限 700 创建它。如果任一命名密钥文件已存在,请选择其他名称,或有意识地复用现有密钥;不要覆盖它。生成一个带口令短语的专用密钥:

ssh-keygen -t ed25519 -f "$HOME/.ssh/offvps_first_vps" -C "first-vps"
ssh-keygen -lf "$HOME/.ssh/offvps_first_vps.pub" -E sha256

第二条命令显示公钥指纹,而不是私钥材料。 ssh-keygen 手册 记录了密钥类型、输出文件和指纹。如果受管设备要求不同的密钥策略,请遵循该策略并验证服务器支持。如果你的恢复计划依赖私钥,请保留一份得到适当保护的恢复副本。

在认证之前验证服务器

通过受信任的控制台或其他经过认证的设置通道,获取服务器 Ed25519 主机密钥的指纹。在使用标准 OpenSSH 路径的服务器上,管理员可以检查公钥文件:

ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub -E sha256

将完整的 SHA256 指纹和算法与首次 SSH 连接提示进行比较。仅通过同一条未经验证网络连接获取的指纹不是独立验证。如果服务器提供另一种主机密钥算法,请获取该密钥的指纹,而不是比较不同的值。 OpenSSH 的主机密钥验证指南 解释了这种比较。

如果密钥在之后访问时意外更改,请停止。重建可能会合理地替换主机密钥,但请通过恢复通道验证该事件和新指纹。不要仅仅为了让连接成功而消除警告或删除旧的已知主机条目。

仅安装公钥并打开第一个会话

如果你的公钥已经通过授权的设置过程安装,请直接连接。否则,请使用现有的已验证访问方法将公钥添加到目标账户。在包含 ssh-copy-id的客户端上,并且仅当该初始登录方法有效时,此命令会追加所选公钥:

ssh-copy-id -i "$HOME/.ssh/offvps_first_vps.pub" -p 22 [email protected]

Ubuntu 的 OpenSSH 指南 描述了公钥安装和权限要求。不要替换整个 authorized_keys 文件或更改其他管理员的条目。然后打开基于密钥的会话:

ssh -o IdentitiesOnly=yes -i "$HOME/.ssh/offvps_first_vps" \
  -p 22 [email protected]

登录后,检查 id y hostname。确认账户与设置详细信息匹配;仅凭主机名不是主机密钥验证。如果你的任务需要管理权限,请运行 sudo -v 并确认此账户具有预期的权限路径。保持这个第一个会话打开。

证明存在真正独立的第二次登录

打开另一个客户端终端,并请求一个无法复用 SSH 连接共享套接字的新连接。将此测试限制为公钥认证,以免密码回退掩盖损坏的密钥设置:

ssh -o ControlMaster=no -o ControlPath=none \
  -o IdentitiesOnly=yes -o PreferredAuthentications=publickey \
  -i "$HOME/.ssh/offvps_first_vps" -p 22 [email protected]

检查 id, hostname 以及,在需要时, sudo -v 也在这个第二个会话中。如果客户端复用现有连接,仅打开一个新终端是不够的。 ControlPath=none 禁用该共享;请参阅 OpenSSH 客户端配置。只有在此独立连接成功且恢复路径仍然可用后,才关闭原始会话。

在之后任何访问更改之前

对于这个第一个会话,请让 SSH 端口、认证方法和防火墙规则保持原样。以后更改它们之前,请保存当前配置并记录如何通过受信任的控制台恢复它。在禁用另一种方法之前,确认基于密钥的登录可用。在进行一次经过审查的更改时,保持第一个会话打开。

sudo /usr/sbin/sshd -t
sudo /usr/sbin/sshd -T

在具有此 OpenSSH 可执行文件路径的系统上, -t 检查配置语法和主机密钥合理性; -T 还会报告有效设置。连接特定的 Match 规则可能需要 -C 针对正在测试的账户和地址的参数。这些检查不会测试防火墙可达性,也不能证明新登录可用。请参阅 sshd 测试模式。在应用或重新加载服务配置之前解决错误,然后重复独立登录检查。

利用失败来选择下一步检查

  • 超时:通过恢复路径确认地址、端口、提供商规则和主机防火墙。
  • 连接被拒绝:检查 SSH 是否正在预期的地址和端口上监听。
  • 权限被拒绝:从仍然打开的会话中检查用户名、所选公钥和账户密钥文件权限。
  • 主机标识已更改:在继续之前,独立验证该机器和新指纹。

在你的操作笔记中记录已验证的主机密钥指纹、账户、端口和恢复过程。对密钥材料保密。一旦访问可以重复,继续前往 你的第一次 API 发布 или 应用程序的资源预算.

使用的文档

本页的主要参考。请核对您自己环境中安装版本对应的文档。