我继承了一些devops代码,该代码具有一些端口转发调用,如下所示:
server = 180.10.0.1 # fake IP
ssh ubuntu@' + server + ' -L2222:localhost:2222 -L 27017:some_docker.amazonaws.com:27017'
我真的很难弄清楚这里发生了什么。因此,据我所知,端口2222
或server
上的流量被重定向到本地计算机上的端口2222
。但是,我不确定在27017
上运行的docker镜像的端口server
发生了什么。是否将其重定向到主机的端口27017
?
答案 0 :(得分:1)
端口27017被转发到mongo / document db主机。这样做是为了使mongo驱动程序能够与远程数据库对话。
答案 1 :(得分:1)
-Lport:host:hostport
在本地计算机(已运行ssh命令的位置)上打开侦听套接字。如果打开了连接,它将通过隧道传送到远程端并连接到host:hostport。所以2222是仅侦听远程计算机上的localhost。使用此隧道,即使远程计算机上的套接字仅在本地主机上侦听,也可以从本地计算机通过端口(2222)连接到该隧道。 第二部分是相似的,只是host:hostport是另一台机器,即仅可从您通过SSH连接的主机上访问:
A-[ssh]-> B ---> C
检查联机帮助页:https://linux.die.net/man/1/ssh