通过单个命令通过 SSH 隧道建立 SSH 连接

通过单个命令通过 SSH 隧道建立 SSH 连接

我正在尝试使用互联网上的 SSH 连接到我的一台内部计算机(私有 IP)。该计算机的 SSH 端口未公开,因此我首先通过公共资源(公共 IP)创建隧道。

ssh <public ip> -p 2022 -l root -L 127.1.1.1:2222:<private ip>:22

之后,我可以像这样创建 SSH 连接:

ssh [email protected] -p 2222

是否可以使用单个命令来执行该操作?

答案1

您可以随时依次运行命令:

ssh root@<public ip> -p 2022 -L 127.1.1.1:2222:<private ip>:22 && 
    ssh [email protected] -p 2222

为了避免大量不必要的输入,请使用 bash 别名。将如下行添加到您的$HOME/.bashrc

alias ssh_tunnel='ssh <public ip> -p 2022 -l root -L 127.1.1.1:2222:<private ip>:22 && ssh [email protected] -p 2222'

现在,打开一个新终端,您可以通过运行启动隧道并进行连接

ssh_tunnel

相关内容