1. ProxyJump
的作用
- 作用: 指定一个跳板机,通过它访问目标主机。
- 语法简洁:
ProxyJump
是OpenSSH 7.3
引入的功能,语法更加简洁,推荐在较新版本的 OpenSSH 中使用。
Host Lab3HostName 192.168.20.56User kkkProxyJump 192.168.25.7
- 当你通过
ssh
访问 192.168.20.56 时,会先通过跳板机 192.168.25.7 连接,再转发到目标主机。 - 在这种配置下,客户端会自动使用跳板机登录,简化命令流程。
2. ProxyCommand
的作用
- 作用: 配置一个代理命令,用于自定义如何通过跳板机访问目标主机。
- 灵活性更高: 它允许通过任意自定义命令实现复杂代理(如
netcat
或其他工具),适合老版本或需要定制功能的场景。
Host PCLab1HostName 192.168.52.3User kkkProxyCommand ssh -q TencentCloud nc -x localhost:1080 %h %p
解释:
ProxyCommand
执行的命令是:通过主机TencentCloud
,使用netcat
转发连接到目标主机%h
和端口%p
。-x localhost:1080
表示使用 SOCKS5 代理(例如通过localhost:1080
提供的代理服务访问目标主机)。
如何选择?
- 如果你使用的是较新版本的 OpenSSH:
- 优先选择
ProxyJump
,因为它简洁且易维护。
- 优先选择
- 如果需要复杂的代理设置或使用老版本的 OpenSSH:
- 使用
ProxyCommand
,它提供灵活的代理机制。
- 使用