简单的SSH代理如何实现

axing
2022-08-25 / 0 评论 / 14 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2024年09月29日,已超过115天没有更新,若内容或图片失效,请留言反馈。

需求场景
m09os0eo.png
如上图所示

只有 主机A 可以访问 目标主机, 主机B 或者其他外来主机都是无法访问目标主机的,而 主机B 是可以访问 主机A 的

造成这种问题的原因有很多中,例如 防火墙设置了策略

现在无法对目标主机的防火墙做策略更改,那要如何实现 主机B 对 目标主机 的ssh远程登录呢

解决办法
做ssh代理,通过主机A,访问目标主机

配置
前提
各个主机都需要安装openssh的客户端

主机B需要配置基于key的免密访问主机A

主机B配置


# 生成密钥
ssh-keygen

# copy公钥给主机A的admin用户
ssh-copy-id admin@10.0.0.2

ssh 方面的配置
在当前用户下的 .ssh 目录下创建 config 文件

vim .ssh/config

# 下面两个IP都是目标主机的IP
Host 192.168.1.2
HostName 192.168.1.2
# user也是目标主机的user
User root
# 端口是目标主机的端口
Port 22
# 下面是通过主机A的admin用户代理ssh命令
ProxyCommand ssh -q admin@10.0.0.2 -W [%h]:%p

多个IP就配置多组就好了

然后尝试使用ssh连接目标主机,就可以正常访问了

0

评论 (0)

取消