补回服务器指纹配置教程
在服务器配置页面增加可见的主机指纹获取教程和安全提示,并同步完善 SSH 配置说明。
This commit is contained in:
parent
01d9b43178
commit
b9ee3898e9
@ -14,6 +14,36 @@
|
||||
|
||||
保存服务器配置后,Scert 只使用受保护的密码凭据建立 SSH 连接,并校验服务器主机指纹。密码不会在页面回显、日志中输出或作为命令参数写入。
|
||||
|
||||
## 主机指纹获取教程
|
||||
|
||||
服务器配置页面的“服务器 SHA256 指纹”用于校验 SSH 主机身份。它不是 HTTPS 证书指纹、SSH 登录密码或 SSH 公钥文件内容,只填写命令输出中以 `SHA256:` 开头的完整值。
|
||||
|
||||
### 通过服务器控制台获取
|
||||
|
||||
优先在云厂商控制台、物理控制台或已经通过可信渠道核验的 SSH 会话中执行:
|
||||
|
||||
```bash
|
||||
ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub -E sha256
|
||||
```
|
||||
|
||||
如果服务器没有 ED25519 主机密钥,再执行:
|
||||
|
||||
```bash
|
||||
ssh-keygen -lf /etc/ssh/ssh_host_rsa_key.pub -E sha256
|
||||
```
|
||||
|
||||
复制输出中以 `SHA256:` 开头的完整值,例如 `SHA256:AbCdEfGhIjKlMnOpQrStUvWxYz0123456789abcd`。不要复制算法名称、服务器地址或括号中的说明。
|
||||
|
||||
### 通过已核验的管理机查看
|
||||
|
||||
管理机可以使用以下命令查看当前 SSH 服务提供的 ED25519 指纹:
|
||||
|
||||
```bash
|
||||
ssh-keyscan -t ed25519 -p 22 服务器地址 2>/dev/null | ssh-keygen -lf - -E sha256
|
||||
```
|
||||
|
||||
`ssh-keyscan` 的结果只能作为查找工具,不能单独作为信任依据。首次配置或指纹发生变化时,必须再通过云厂商控制台、服务器本地控制台或其他可信运维渠道核对;核对不一致时应停止配置,不要关闭主机指纹校验或直接重试连接。
|
||||
|
||||
## 明确禁止的操作
|
||||
|
||||
- 不要在 Scert 中录入 SSH 私钥或公钥。
|
||||
@ -32,4 +62,4 @@
|
||||
|
||||
- 服务器密码只通过受保护的凭据存储保存,不提交到 Git、脚本、日志或工单。
|
||||
- 生产服务器应关闭 SSH 公钥认证,使用密码唯一认证策略。
|
||||
- Scert 管理服务和数据库不直接暴露公网,远程管理入口应通过 Nginx 的 `80/443` 反代访问。
|
||||
- Scert 管理服务和数据库不直接暴露公网,远程管理入口应通过 Nginx 的 `80/443` 反代访问。
|
||||
|
||||
@ -116,6 +116,65 @@
|
||||
min-height: 82px;
|
||||
}
|
||||
|
||||
.server-modal .fingerprint-guide {
|
||||
grid-column: 1 / -1;
|
||||
margin: 2px 0 10px;
|
||||
padding: 12px 14px;
|
||||
border: 1px solid #d8e4f2;
|
||||
border-radius: 12px;
|
||||
color: #40526d;
|
||||
background: #f7faff;
|
||||
font-size: 12px;
|
||||
line-height: 1.65;
|
||||
}
|
||||
|
||||
.server-modal .fingerprint-guide summary {
|
||||
color: #234f89;
|
||||
font-size: 13px;
|
||||
font-weight: 800;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.server-modal .fingerprint-guide summary::marker {
|
||||
color: #315faa;
|
||||
}
|
||||
|
||||
.server-modal .fingerprint-guide-body {
|
||||
padding-top: 8px;
|
||||
}
|
||||
|
||||
.server-modal .fingerprint-guide-body p {
|
||||
margin: 0 0 8px;
|
||||
}
|
||||
|
||||
.server-modal .fingerprint-guide-body ol {
|
||||
margin: 0 0 8px;
|
||||
padding-left: 20px;
|
||||
}
|
||||
|
||||
.server-modal .fingerprint-guide-body li {
|
||||
margin: 4px 0;
|
||||
}
|
||||
|
||||
.server-modal .fingerprint-guide code {
|
||||
display: inline-block;
|
||||
margin: 2px 3px;
|
||||
padding: 1px 5px;
|
||||
border-radius: 5px;
|
||||
color: #1f477e;
|
||||
background: #eaf1fb;
|
||||
font-family: Consolas, "SFMono-Regular", monospace;
|
||||
font-size: 11px;
|
||||
overflow-wrap: anywhere;
|
||||
}
|
||||
|
||||
.server-modal .fingerprint-guide-warning {
|
||||
padding: 8px 10px;
|
||||
border-left: 3px solid #d48b32;
|
||||
color: #77551f;
|
||||
background: #fff8eb;
|
||||
}
|
||||
|
||||
@media (max-width: 900px) {
|
||||
.server-modal form {
|
||||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||||
|
||||
@ -116,6 +116,31 @@ const {
|
||||
type="text"
|
||||
placeholder="SHA256:..."
|
||||
/>
|
||||
<details class="fingerprint-guide" open>
|
||||
<summary>指纹配置教程</summary>
|
||||
<div class="fingerprint-guide-body">
|
||||
<p>
|
||||
这里填写的是 <strong>SSH 主机密钥指纹</strong>,不是 HTTPS 证书指纹,也不是 SSH 登录密码。保存后,Scert 只会连接指纹匹配的服务器。
|
||||
</p>
|
||||
<ol>
|
||||
<li>
|
||||
优先在服务器控制台或已核验的 SSH 会话中执行:
|
||||
<code>ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub -E sha256</code>
|
||||
</li>
|
||||
<li>
|
||||
如果服务器没有 ED25519 主机密钥,再执行:
|
||||
<code>ssh-keygen -lf /etc/ssh/ssh_host_rsa_key.pub -E sha256</code>
|
||||
</li>
|
||||
<li>
|
||||
复制输出中以 <code>SHA256:</code> 开头的完整值,例如
|
||||
<code>SHA256:AbCdEfGhIjKlMnOpQrStUvWxYz0123456789abcd</code>,不要复制算法名称、主机地址或括号。
|
||||
</li>
|
||||
</ol>
|
||||
<p class="fingerprint-guide-warning">
|
||||
不要只相信网络扫描结果:请通过云厂商控制台、服务器本地控制台或其他可信渠道核对。指纹不一致时停止配置,不要关闭主机指纹校验或直接重试连接。
|
||||
</p>
|
||||
</div>
|
||||
</details>
|
||||
</label>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user