Scert/doc/SSH密钥配置指南.md
xuans b9ee3898e9 补回服务器指纹配置教程
在服务器配置页面增加可见的主机指纹获取教程和安全提示,并同步完善 SSH 配置说明。
2026-10-15 23:33:03 +08:00

3.1 KiB
Raw Permalink Blame History

SSH 登录配置说明

本说明用于明确当前产品的安全边界。Scert 远程服务器连接仅支持 SSH 密码认证,不提供、不生成、不读取、不保存、不上传 SSH 私钥或公钥,也不会写入远程 authorized_keys。

当前配置流程

在服务器配置页面填写以下内容:

  • 服务器地址和 SSH 端口,默认端口为 22。
  • SSH 用户名。
  • SSH 登录密码。
  • SSH 主机 SHA256 指纹。
  • 远程证书、完整证书链和证书私钥路径。

保存服务器配置后,Scert 只使用受保护的密码凭据建立 SSH 连接,并校验服务器主机指纹。密码不会在页面回显、日志中输出或作为命令参数写入。

主机指纹获取教程

服务器配置页面的“服务器 SHA256 指纹”用于校验 SSH 主机身份。它不是 HTTPS 证书指纹、SSH 登录密码或 SSH 公钥文件内容,只填写命令输出中以 SHA256: 开头的完整值。

通过服务器控制台获取

优先在云厂商控制台、物理控制台或已经通过可信渠道核验的 SSH 会话中执行:

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

如果服务器没有 ED25519 主机密钥,再执行:

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

复制输出中以 SHA256: 开头的完整值,例如 SHA256:AbCdEfGhIjKlMnOpQrStUvWxYz0123456789abcd。不要复制算法名称、服务器地址或括号中的说明。

通过已核验的管理机查看

管理机可以使用以下命令查看当前 SSH 服务提供的 ED25519 指纹:

ssh-keyscan -t ed25519 -p 22 服务器地址 2>/dev/null | ssh-keygen -lf - -E sha256

ssh-keyscan 的结果只能作为查找工具,不能单独作为信任依据。首次配置或指纹发生变化时,必须再通过云厂商控制台、服务器本地控制台或其他可信运维渠道核对;核对不一致时应停止配置,不要关闭主机指纹校验或直接重试连接。

明确禁止的操作

  • 不要在 Scert 中录入 SSH 私钥或公钥。
  • 不要在 Scert 中生成 SSH 密钥对。
  • 不要使用 ssh-keygen、ssh-copy-id 或其他方式为 Scert 部署登录密钥。
  • 不要由 Scert 创建或修改远程 authorized_keys。
  • 不要为了绕过密码认证失败而开启 PubkeyAuthentication。

页面中出现的“证书私钥路径”仅用于目标 Web 服务器的 TLS 证书部署,与 SSH 登录认证完全不同,不能用于 SSH 登录。

连接失败处理

如果连接失败,请核对服务器地址、端口、用户名、密码、主机指纹和远程账号权限。不要删除主机指纹校验,也不要切换为密钥认证。需要调整服务器 SSH 策略时,应通过服务器控制台或可信的系统维护流程完成,并保持密码认证要求。

安全要求

  • 服务器密码只通过受保护的凭据存储保存,不提交到 Git、脚本、日志或工单。
  • 生产服务器应关闭 SSH 公钥认证,使用密码唯一认证策略。
  • Scert 管理服务和数据库不直接暴露公网,远程管理入口应通过 Nginx 的 80/443 反代访问。