ssh端口转发语法说明

时间:2019-11-10 19:41:37

标签: docker ssh portforwarding

我继承了一些devops代码,该代码具有一些端口转发调用,如下所示:

server = 180.10.0.1   # fake  IP
ssh ubuntu@' + server + ' -L2222:localhost:2222 -L 27017:some_docker.amazonaws.com:27017'

我真的很难弄清楚这里发生了什么。因此,据我所知,端口2222server上的流量被重定向到本地计算机上的端口2222。但是,我不确定在27017上运行的docker镜像的端口server发生了什么。是否将其重定向到主机的端口27017

2 个答案:

答案 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