代码如下 | 复制代码 |
现在有两台服务器,SERVER A 可通过外网访问,SERVER B (linux/mac/windows)通过局域网与A连接,由于种种原因(防火墙啊、外网限制啊),我们(client)无法直接登录B 或 访问B上的业务系统。 |
代码如下 | 复制代码 |
那么问题来了,怎样才能通过 A 来访问 B ? |
SSH 是一个很好的工具,我们可以通过 SSH 的本地端口映射功能,将远程 B 的端口,映射至本地端口,来实现通过 A 间接访问 B 。
具体命令:
具体命令:
ssh USER@HOST_A -P HOST_A_SSH_PORT -L 127.0.0.1:LOCAL_PORT:HOST_B:HOST_B_PORT
#USER A 服务器 ssh用户名,如:root
#HOST_A 服务器A IP地址(域),如:1.2.3.4
#HOST_A_SSH_PORT 服务器A ssh端口,如:22
#LOCAL_PORT 映射到本地的端口,如:13306
#HOST_B 服务器B IP地址,和A同一内网的内网IP地址,如10.0.0.102)
#HOST_B_PORT 服务器B上需要被外网访问到的端口,如3306
EG.
ssh root@1.2.3.4 -P 22 -L 127.0.0.1:13389:10.0.0.102:3389
#通过 1.2.3.4 的 ssh 用户 root,将 10.0.0.102服务器的 3389 端口映射到本地的13389端口,从来实现,通过127.0.0.1:13389连接远程win server
ssh root@1.2.3.4 -P 22 -L 127.0.0.1:13306:10.0.0.102:3306
#映射远程 MySQL端口至本地 端口 13306
工具:
1、windows 下 putty
保存此窗口一直打开,使用完成后 exit 退出关闭。
2、linux、mac 直接输入命令即可,当然,也可以使用其它的工具,如vssh、zoc等
以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索linux
, ssh
, 服务器
, 代码
端口
内网服务器映射到公网、公网ip映射内网服务器、内网服务器映射到外网、内网 vpn 服务器 映射、域名映射到内网服务器,以便于您获取更多的相关知识。
时间: 2024-09-18 03:28:02