EC2 公网直连、跳板机与堡垒机说明
现在是“你电脑直接 SSH 到 EC2”,后续会改成 “你电脑先 SSH 到堡垒机,再从堡垒机跳到目标 EC2”。
1. 现在:公网直连 EC2
你的电脑
│ SSH
▼
目标 EC2 公网 IP
特点:
- 目标 EC2 有 公网 IP / Elastic IP
- 安全组通常需要开放 22 端口给你的办公网络或固定 IP
- 连接方式简单,例如:
ssh -i key.pem ec2-user@目标EC2公网IP
优点:
- 配置简单
- 连接链路短
- 排查问题容易
缺点:
- 每台 EC2 都暴露在公网,攻击面更大
- 如果机器多,每台都要维护公网 IP、安全组规则、SSH 权限
- 后续安全合规上通常不推荐所有业务机器都公网可达
---
2. 后续:通过堡垒机访问 EC2
你的电脑
│ SSH
▼
堡垒机 公网 IP:18.17.17.5
│ SSH,走内网
▼
目标 EC2 内网 IP
特点:
- 只有 堡垒机有公网 IP
- 目标 EC2 不再允许公网直连,甚至可以没有公网 IP
- 目标 EC2 的安全组只允许来自堡垒机的 SSH 访问
- 连接目标 EC2 时,通常使用 内网 IP,例如 10.x.x.x / 172.31.x.x
优点:
- 更安全,公网入口集中到堡垒机
- 目标 EC2 不暴露公网
- 权限、审计、登录入口更容易统一管理
- 适合生产环境、多台服务器场景
缺点:
- 配置稍微复杂
- 如果堡垒机不可用,会影响访问后端 EC2
- SSH 客户端需要配置跳板链路
---
3. Termius 里面的 Host Chaining 是什么?
截图里的 Host Chaining 就是 Termius 的“跳板机连接”功能。
它的作用是:
先连接 A 机器,再通过 A 连接 B 机器
在你的场景里:
Termius
-> 堡垒机 18.17.17.5
-> 目标 EC2 内网 IP
也就是说,Termius 会帮你自动完成类似下面这个命令的效果:
ssh -J user@18.17.17.5 ec2-user@目标EC2内网IP
其中:
- 18.17.17.5 是堡垒机公网 IP
- 目标EC2内网IP 是业务 EC2 的私有 IP
- -J 表示 ProxyJump,也就是通过跳板机连接
---
4. Host Chaining 和 Proxy 的区别
Termius 里你看到的两个功能:
- Host Chaining
- Proxy
它们容易混淆,但用途不同。
Host Chaining:SSH 跳板机
适合这种场景:
本地电脑 -> 堡垒机 -> 内网 EC2
它是 SSH 层面的跳转。
你连接的最终目标还是 SSH 服务器,只是中间经过一个 SSH 跳板。
典型用途:
- 访问没有公网 IP 的 EC2
- 访问 VPC 内部机器
- 生产服务器 SSH 管理
推荐你们后续访问 EC2 用这个。
---
Proxy:网络代理
Proxy 更像是:
本地电脑 -> HTTP/SOCKS 代理 -> 目标
它通常用于网络代理,而不是标准的 SSH 跳板链。
典型用途:
- 通过 SOCKS5 / HTTP proxy 上网
- 某些网络环境下绕过网络限制
- 代理 TCP 连接
如果你们只是通过堡垒机 SSH 到内网 EC2,通常不需要用 Proxy,直接用 Host Chaining 更合适。
---
5. 对比总结
┌──────────────────────────┬─────────────────────────┬─────────────────────────────────────┐
│ 项目 │ 公网直连 EC2 │ 通过堡垒机 │
├──────────────────────────┼─────────────────────────┼─────────────────────────────────────┤
│ 连接方式 │ 本地直接 SSH 到目标 EC2 │ 本地先 SSH 到堡垒机,再跳到目标 EC2 │
├──────────────────────────┼─────────────────────────┼─────────────────────────────────────┤
│ 目标 EC2 是否需要公网 IP │ 需要 │ 不需要 │
├──────────────────────────┼─────────────────────────┼─────────────────────────────────────┤
│ 暴露面 │ 每台 EC2 都可能暴露公网 │ 只有堡垒机暴露公网 │
├──────────────────────────┼─────────────────────────┼─────────────────────────────────────┤
├──────────────────────────┼─────────────────────────┼─────────────────────────────────────┤
│ 安全性 │ 较低 │ 更高 │
├──────────────────────────┼─────────────────────────┼─────────────────────────────────────┤
│ 运维复杂度 │ 简单 │ 稍复杂 │
├──────────────────────────┼─────────────────────────┼─────────────────────────────────────┤
│ 适合场景 │ 测试环境、临时机器 │ 生产环境、内网服务器 │
├──────────────────────────┼─────────────────────────┼─────────────────────────────────────┤
│ Termius 配置 │ 普通 Host │ Host Chaining │
├──────────────────────────┼─────────────────────────┼─────────────────────────────────────┤
│ 目标 EC2 地址 │ 公网 IP │ 内网 IP │
└──────────────────────────┴─────────────────────────┴─────────────────────────────────────┘
---
6. 后续 Termius 大概这样配
第一步:配置堡垒机 Host
Host 名称可以叫:
堡垒机
Host/IP:
18.17.17.5
用户名根据 AMI 可能是:
ubuntu
或:
ec2-user
认证方式使用对应 SSH key。
---
第二步:配置目标 EC2 Host
目标 EC2 的 Host/IP 不再填公网 IP,而是填 内网 IP,例如:
172.31.x.x
然后在这个目标 Host 里设置:
Host Chaining -> 选择堡垒机
这样以后连接目标 EC2 时,Termius 会自动:
先连堡垒机,再通过堡垒机连目标 EC2
---
一句话总结:
▎ 现在是每台 EC2 都可以被你从公网直接 SSH;后续是只有堡垒机能从公网 SSH,其他 EC2 只能通过堡垒机走内网访问。Termius 里的 Host Chaining 就是用来配置这种跳板机访问方式的。
更多推荐
所有评论(0)