嵌套隧道
1. 什么是嵌套隧道
嵌套隧道是指某些情况下,需要依次穿越多个同种类型或不同类型的隧道,以访问目标服务的情况。例如:有些内网环境下需要先通过一个HTTPS代理访问外网,然后再通过一个SSH堡垒机访问目标服务。
2. 使用turbo-tunnel建立嵌套隧道
在通常使用场景下,对于这种情况,需要先使用proxifier之类的软件让SSH客户端通过HTTPS代理访问SSH服务器,进去后再使用ssh命令进入目标机器,使用相对较为繁琐。
通过在turbo-tunnel命令行中使用-t/--tunnel参数配置多个隧道,形成嵌套隧道。隧道的嵌套顺序由-t/--tunnel参数的顺序决定。
$ turbo-tunnel -l http://127.0.0.1:8888/ -t http://web-proxy.internal.com:8080/ -t ssh://username:password@1.1.1.1/
该命令可以在本地创建一个HTTPS代理服务,通过该服务可以直接建立与堡垒机内部机器的网络连接。
对于嵌套层数越多的场景,使用turbo-tunnel的优势就越明显,因为所有的访问都会收敛到本地的HTTPS服务中。
turbo-tunnel支持任意层数的隧道嵌套,包括插件中提供的隧道。