centos 如何做个端口映射?

2022-03-24 20:02:44 +08:00
 dtgxx
我本地访问不到 mongodb ,云服务器的 centos 可以访问到那台 mongodb ( centos 和 mongodb 不是一台机器,但是网络互通),我如何在本地实现通过云服务器 IP+端口,访问 mongodb 呢,在 centos 可以做个端口转发功能吗?
1976 次点击
所在节点    CentOS
10 条回复
ETiV
2022-03-24 20:05:56 +08:00
装一个启用了 stream module 的 nginx ,配置一下反代规则跟 allow 你自己、deny all 的规则
Aixiaoa
2022-03-24 20:15:09 +08:00
iptables ?
felixcode
2022-03-24 20:15:11 +08:00
haproxy
ThirdFlame
2022-03-24 20:19:04 +08:00
iptables 就够了
FreeEx
2022-03-24 20:23:27 +08:00
对 iptables 不熟悉的可以试试我写的这个,可以作为临时访问的一种方案。
https://github.com/dushixiang/4dnat
linglin0924
2022-03-24 20:46:48 +08:00
@FreeEx 厉害,神器
huadi
2022-03-24 20:48:55 +08:00
如果你临时用,最简单的方式是使用 ssh 的本地端口转发:
ssh root@<centos_ip> -LfN 8888:<mongodb_ip>:<mongodb_port>
意思是将本地的 8888 端口映射到 centos 那台机器的 mongodb 上,注意 mongodb_ip 和 mongodb_port 是在 centos 上用于访问 mongodb 的地址和端口
之后,通过访问本地 8888 端口,就可以直接访问 mongodb 了
happyn
2022-03-24 21:59:09 +08:00
用 socat 就可以,在 centos 上运行:

$ sudo socat TCP4-LISTEN:27017,reuseaddr,fork TCP4:<mongodbip 地址>:27017

这样本地就可以通过访问 centos 上的 27017 端口,进而映射访问 mongodb 服务器了;
AllenHua
2022-03-25 09:22:05 +08:00
SSH 加一

ssh -p SERVER_SSH_PORT SERVER_USERNAME@SERVER_IP -fCNL 127.0.0.1:1081:SERVER_IP:SERVER_SERVICE_PORT
mmcloud
2022-03-25 14:34:48 +08:00
socat 比较方便。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://tanronggui.xyz/t/842702

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX