新闻资讯
领先云端方案商,专注云桌面、云手机研发,凭核心虚拟化技术与云端算力,打造安全高效数字化平台,提供全周期支持。
分类
相关文章
热门标签

crt登陆跳板机详尽教程含证书配置与故障排除步骤

2026年9月17日

1. 概述与准备工作

- 目标:使用 SecureCRT(简称 CRT)通过跳板机安全登录内网主机,采用证书/公钥认证并配置代理转发以实现链路穿透。
- 准备:本地电脑安装 SecureCRT、OpenSSH(或 PuTTY/PuTTYgen)、能访问跳板机的账号、跳板机与目标主机的 SSH 服务开启。
- 注意:本文以 OpenSSH 密钥与 CA 签发的 SSH 证书为主,也覆盖 ppk 转换等常见情形。

2. 在本地生成 SSH 密钥对

- 步骤1:打开终端(Linux/macOS)执行:ssh-keygen -t rsa -b 4096 -C "your_email" -f ~/.ssh/id_rsa_jump;按提示设置密码。
- 步骤2:确认生成两个文件:~/.ssh/id_rsa(私钥)与~/.ssh/id_rsa.pub(公钥)。Windows 可用 Git Bash 或 Puttygen 生成,并导出 OpenSSH 格式或 ppk。

3. 将公钥部署到跳板机

- 步骤1:使用密码登录跳板机,执行:mkdir -p ~/.ssh && chmod 700 ~/.ssh。
- 步骤2:将本地 id_rsa.pub 内容追加到跳板机的 ~/.ssh/authorized_keys:echo "公钥内容" >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys。
- 步骤3:验证:从本地执行 ssh -i ~/.ssh/id_rsa user@jump_host 来确认公钥认证可用。

4. 如果使用 SSH 证书(CA 签发)

- 步骤1:在 CA 环境下用 ssh-keygen -s ca_key -I id -n username -V +52w id_rsa.pub 签发证书,得到 id_rsa-cert.pub。
- 步骤2:把 id_rsa-cert.pub 与 id_rsa 一并传到本地 SecureCRT 使用的私钥目录。
- 步骤3:在跳板机或 sshd 配置中通过 TrustedUserCAKeys 指向 CA 公钥以接受证书登录(/etc/ssh/sshd_config 中设置并重启 sshd)。

5. 在 SecureCRT 中配置私钥与会话

- 步骤1:打开 SecureCRT,新建会话,填写跳板机 IP、端口与用户名。
- 步骤2:Session Options -> SSH2 -> Authentication 中取消 Password,选择 PublicKey。点击 Properties 指定私钥文件(OpenSSH 私钥或 PPK)。若是 OpenSSH 格式但 SecureCRT 不识别,使用 PuTTYgen 转换为 PPK。
- 步骤3:如果使用证书,确保私钥文件与相应的 -cert.pub 文件放在同一目录,SecureCRT 会自动加载或通过高级选项指定证书文件。

6. 配置代理转发(Port/Agent Forwarding)

- 步骤1:如果需要从跳板机进一步 SSH 到内网主机,建议开启 SSH agent 转发:在 SecureCRT 的 Session Options -> Connection -> SSH2 勾选 “Forward agent”。
- 步骤2:本地启用 ssh-agent:eval "$(ssh-agent -s)"; ssh-add ~/.ssh/id_rsa。然后通过 SecureCRT 登录跳板机,跳板机上 ssh-add -l 应显示密钥。
- 步骤3:也可使用本地端口转发(Local port forwarding)将内网服务映射到本地端口,在 SecureCRT 的 Tunneling/Port Forwarding 中设置。

7. 使用 ProxyCommand 或 ProxyJump 简化多跳

- 步骤1:在本地 ~/.ssh/config 中添加条目:Host target HostName target_ip User target_user ProxyJump jump_user@jump_ip。
- 步骤2:SecureCRT 中可在会话的 Port Forwarding 里配合本地 ssh config 使用,也可通过在跳板机会话上开启 Remote command 来实现。
- 步骤3:测试:ssh target(如果配置了 Host 别名),确认直接通过跳板机到达目标。

8. 常见故障与排查步骤(权限与认证)

- 问题1:登录提示“Permission denied (publickey)”。排查:确认公钥已正确追加到 authorized_keys、权限为 700/600;在跳板机查看 /var/log/auth.log 或 journalctl -u sshd。
- 问题2:证书无效或过期:用 ssh -vvv 查看是否加载了 -cert.pub,检查证书有效期(-V 参数签发时设定)。
- 小提示:使用 ssh -vvv user@host 能得到详细的验证链路信息,定位是密钥未发送、SSH 算法不支持还是权限问题。

9. 兼容性问题与常用解决方案

- 问题:SecureCRT 不识别新型密钥算法(例如 ed25519)或私钥格式。解决:将私钥转换为兼容格式(ssh-keygen -p -m PEM -f id_rsa 或通过 PuTTYgen 导出 PPK)。
- 问题:Agent forwarding 不生效:确保本地 ssh-agent 正在运行并已添加私钥,SecureCRT 勾选了 Forward agent,且跳板机 sshd 配置允许 AllowAgentForwarding yes。
- 建议:在生产环境启用并强制使用证书签名的密钥以便集中管理与撤销。

10. 常见网络级故障排除问答(Q1)

- 问:如果登录时出现网络超时或无法连接跳板机,我该如何排查?

11. 回答(A1)

- 答:先用 ping/jump_host_port 检查网络连通性,确认目标端口(通常 22)对外开放;用 telnet jump_ip 22 或 nc -vz jump_ip 22 测试端口;检查防火墙(本地、云安全组、跳板机)是否阻断;若为 VPN/内网访问,确认 VPN 已建立并路由配置正确;最后看跳板机 sshd 是否启动(systemctl status sshd)。

12. 证书与密钥相关问答(Q2)

- 问:如何判断是私钥错误还是证书过期导致无法认证?

13. 回答(A2)

- 答:使用 ssh -vvv 登录可看到认证过程的详细日志:若看到 “Offering public key” 并被拒绝,可能是密钥不匹配或权限问题;若日志里提到 certificate expired 或 certificate not yet valid,则是证书时间问题;同时检查服务器端 /var/log/auth.log 中的原因提示。

14. 部署与安全策略问答(Q3)

- 问:在团队环境下,如何管理私钥与证书以保证安全且便于审计?

15. 回答(A3)

- 答:建议使用集中式 CA 签发短期 SSH 证书(例如 1-4 周),并结合自动化签发流程;私钥应由用户保管且启用密码保护,使用硬件密钥(YubiKey)或 SSH agent 管理;配合日志审计、Jump server 的会话录制与 MFA(二步验证)来提升安全性;发生人员变动时撤销证书比更换密钥更便捷。


来源:crt登陆跳板机详尽教程含证书配置与故障排除步骤