多台云服务器只开一个 SSH 入口:跳板机 + ProxyJump 实战

举报
yd_266847877 发表于 2026/10/24 09:35:53 2026/10/24
【摘要】 手里云服务器一多,SSH 就成了麻烦事:每台都开公网 22 端口、每台都要记 IP 和端口,时间一长,自己都记不清哪台是哪台。上周把几台机器整理了一遍,方案很简单——只留一台机器暴露 SSH 做跳板,其他机器全部走内网,用 ProxyJump 一跳直达。本文记录完整配置过程和几个坑。 一、先定拓扑跳板机 bastion:公网可达,只开 22 端口内网机 node-01 / node-02:只...

手里云服务器一多,SSH 就成了麻烦事:每台都开公网 22 端口、每台都要记 IP 和端口,时间一长,自己都记不清哪台是哪台。上周把几台机器整理了一遍,方案很简单——只留一台机器暴露 SSH 做跳板,其他机器全部走内网,用 ProxyJump 一跳直达。本文记录完整配置过程和几个坑。

一、先定拓扑

  • 跳板机 bastion:公网可达,只开 22 端口
  • 内网机 node-01 / node-02:只有内网 IP(比如 192.168.x.x),安全组里只放行来自跳板机的 22
  • 本地笔记本:保存所有私钥

好处很直接:公网攻击面只剩一台;内网机基本不会被公网扫描到;以后加机器只改本地一份 config,不用再记新 IP。

二、本地 ~/.ssh/config 配置

关键就是 ProxyJump,一份配置搞定多级跳转:

# 跳板机
Host bastion
    HostName 203.0.113.10
    User ubuntu
    Port 22
    IdentityFile ~/.ssh/id_ed25519_bastion

# 内网机,经跳板机中转
Host node-01
    HostName 192.168.10.11
    User ubuntu
    ProxyJump bastion
    IdentityFile ~/.ssh/id_ed25519_nodes

Host node-02
    HostName 192.168.10.12
    User ubuntu
    ProxyJump bastion
    IdentityFile ~/.ssh/id_ed25519_nodes

之后 ssh node-01 直接登录,中间经过跳板机自动转发,不用手动两步跳。scp 照常用:scp backup.tar.gz node-01:/tmp/。

多级跳板也支持,逗号分隔按顺序跳:ProxyJump bastion,node-01。

三、跳板机自身的加固(不能省)

跳板机是唯一暴露面,基础加固必须做:

  1. 禁密码登录:/etc/ssh/sshd_config 里 PasswordAuthentication no,只留公钥。
  2. 换默认端口:改成 Port 2222 之类,减少被扫描的噪音(这是降噪手段,不是安全手段)。
  3. 装 fail2ban:apt install fail2ban,默认规则就能挡掉大部分爆破。
  4. 禁 root 登录:PermitRootLogin no,用普通用户 + sudo。

改完 systemctl reload sshd。注意:改 sshd 配置之前,先保持一个已连接的会话不断开,配错了还有机会救回来。

四、内网机的安全组

内网机安全组入方向只放一行:来源填跳板机的内网 IP(或跳板机所在安全组),协议 TCP,端口 22。出方向保持默认。这样即使有人拿到内网机 IP,没有跳板机也连不上。

五、踩过的三个坑

  1. ProxyJump 要求 OpenSSH ≥ 7.3。老系统(比如 CentOS 7 自带的)不支持,要改用 ProxyCommand ssh -W %h:%p bastion 写法。
  2. 每台机器的 ~/.ssh 权限必须是 700、authorized_keys 必须是 600,否则密钥登录会静默失败,排错能排半天。
  3. 不要在跳板机上存放内网机的私钥。正确做法是本地直连、跳板机只做 TCP 转发;临时要在跳板机上再跳,用 ssh -A 做 agent 转发,用完即走。

六、小结

一台跳板机 + 一份 config,解决多机器 SSH 管理混乱。攻击面收敛到一个入口,加固也只需要认真做一台。适合机器数量在个位数的个人和小团队场景。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。