跳到主要内容

多跳代理

多跳代理(Proxy Jump)允许通过一台或多台跳板机连接到目标服务器,常用于访问内网服务器或增强安全性。

使用场景​

典型场景​

本地电脑 → 跳板机(公网) → 目标服务器(内网)
  • 内网访问:目标服务器没有公网 IP,只能通过跳板机访问
  • 安全合规:企业要求所有 SSH 访问必须经过堡垒机
  • 审计追踪:通过跳板机记录所有操作日志
  • 网络隔离:生产环境与办公网络隔离

多跳场景​

本地电脑 → 跳板机 A → 跳板机 B → 目标服务器

某些复杂网络环境需要经过多台跳板机才能到达目标服务器。

配置跳板机​

准备工作​

首先需要将跳板机作为普通 SSH 连接添加到 XTerminal:

  1. 创建跳板机连接,配置好认证方式
  2. 测试跳板机连接正常
  3. 保存跳板机连接

配置目标服务器​

  1. 创建或编辑目标服务器连接
  2. 点击左侧 跳板机 选项卡
  3. 点击 添加跳板机
  4. 从下拉列表选择跳板机

跳板机配置

界面说明​

  • 跳板机链路:显示当前配置的跳板机列表
  • 拖拽排序:拖动左侧把手可调整跳板机顺序
  • 删除按钮:点击右侧删除按钮移除跳板机
  • 提示信息:列表顶部为第一跳,依次转发到下一跳直至目标主机

代理链(多跳)​

添加多个跳板机​

  1. 点击 添加跳板机 添加第一台跳板机
  2. 再次点击 添加跳板机 添加第二台
  3. 根据需要继续添加

调整顺序​

跳板机顺序决定连接路径:

  • 列表第一项:本地直接连接的第一跳
  • 列表最后一项:连接目标服务器的最后一跳

拖拽跳板机项目可以调整顺序。

示例​

跳板机链路:
1. Bastion-A(公网)
2. Bastion-B(DMZ)

连接路径:
本地 → Bastion-A → Bastion-B → 目标服务器

连接流程​

当发起连接时,XTerminal 执行以下步骤:

  1. 连接第一台跳板机
  2. 通过第一台跳板机的端口转发连接第二台
  3. 依此类推,直到连接到目标服务器
  4. 最终在目标服务器上打开终端

整个过程自动完成,用户只需等待连接成功。

认证处理​

  • 每台跳板机使用各自配置的认证方式
  • 如果跳板机使用交互认证,会依次弹出输入对话框
  • 交互认证的跳板机会自动延长超时时间(至少 120 秒)

注意事项​

连接限制​

  • 不能循环引用:跳板机链不能形成环路
  • 跳板机不能有跳板机:已配置跳板机的服务器不能作为其他服务器的跳板机

性能考虑​

  • 每增加一跳会增加延迟
  • 数据需要经过每台跳板机转发
  • 建议跳板机数量不超过 3 台

跳数限制​

XTerminal 对代理链的最大跳数没有硬性限制,但需要考虑:

跳数建议
1-2 跳推荐,延迟可控
3-4 跳可用,可能有明显延迟
5+ 跳不推荐,连接稳定性下降

延迟计算​

代理链的总延迟约等于各跳延迟之和:

总延迟 ≈ 本地→跳板机A + 跳板机A→跳板机B + 跳板机B→目标服务器

例如:本地到 A 延迟 50ms,A 到 B 延迟 30ms,B 到目标 20ms,则总延迟约 100ms。

连接稳定性​

  • 任一跳板机断开会导致整个连接断开
  • 建议为跳板机配置合适的心跳时间
  • 网络不稳定时可能需要重新连接

故障排查​

跳板机连接失败​

  1. 单独测试跳板机连接是否正常
  2. 检查跳板机的认证配置
  3. 确认跳板机有权限转发连接

目标服务器连接失败​

  1. 确认从跳板机可以访问目标服务器
  2. 检查目标服务器的防火墙规则
  3. 验证目标服务器的 SSH 服务正常

连接超时​

  1. 增加连接超时时间
  2. 检查网络延迟
  3. 如果跳板机使用 2FA,确保有足够时间输入验证码

连接中断​

  1. 检查各跳板机的心跳配置
  2. 查看跳板机的 SSH 配置(ClientAliveInterval 等)
  3. 考虑网络稳定性问题

与代理设置的区别​

XTerminal 同时支持 跳板机 和 代理设置,两者可以组合使用:

特性跳板机代理设置
协议SSHSOCKS5/HTTP
认证SSH 认证代理认证(如有)
加密SSH 加密依赖代理
典型用途访问内网服务器翻墙、企业代理

当同时配置时,代理优先于跳板机:

本地 → 代理服务器 → 跳板机 → 目标服务器

下一步​