【问题标题】:Use ssh over port forwarded connection通过端口转发连接使用 ssh
【发布时间】:2024-01-24 05:00:01
【问题描述】:

我的组织让我们使用“堡垒”主机连接到 AWS 环境,因此我的 openssl .ssh 配置文件看起来有点像这样:

Host bastion.*.c1.some.com
User bastionuser
ProxyCommand none
StrictHostKeyChecking no
ForwardAgent yes

Host *.c1.some.com 12.345.* 456.12.1.*
User awsuser
StrictHostKeyChecking no
ForwardAgent yes
ProxyCommand ~/.ssh/proxy_command.sh %h %p 

我想使用 CLion IDE 中内置的 ssh 客户端连接到我的 AWS 环境,但它不支持这种配置。

我可以使用 openssl 设置端口转发,然后在 CLion 内通过该隧道建立 ssh 连接吗?

【问题讨论】:

  • 您显示的配置和目录 ~/.ssh 用于 OpenSSH 而不是 OpenSSL。 OpenSSH 是一个独立于 OpenSSL 的项目,它实现了 SSH,这是与 OpenSSL 实现的 SSL/TLS(和其他一些)完全不同的协议。尽管这些协议中的一些加密操作是相似的,但 OpenSSH 确实使用了 OpenSSL(或 LibreSSL)的 libcrypto part。是的,如果服务器(这里是堡垒)允许,OpenSSH 客户端程序ssh 可以进行转发。显示 ~/.ssh/proxy_command.sh 的作用和/或阅读手册页。

标签: ssh portforwarding openssh


【解决方案1】:

我能够使用 PuTTY 设置端口转发,之后我能够使用 Intellij 通过端口转发建立第二个 ssh 连接。由于某种原因,我无法通过 OpenSSH 端口转发建立第二个 ssh 连接,可能是因为 Git Bash 环境是沙盒或其他什么?

大概这也适用于任何其他不支持开箱即用隧道的 SSH 客户端。

【讨论】: