请问如何中转一个没有控制台权限的服务器的 TCP 流量?

2019-06-13 23:10:45 +08:00
 ae3803

我想用 A 服务器(端口 25565)来中转 B 服务器(原端口 30525,其中 B 服务器没有控制台权限)的流量 A 服务器系统:Debian9 方案大概是这样:我—— A 服务器(端口 25565)—— B 服务器(原端口 30525)

3859 次点击
所在节点    宽带症候群
37 条回复
billlee
2019-06-13 23:23:07 +08:00
路由劫持?
unixeno
2019-06-13 23:37:02 +08:00
你在 a 上跑一个 tcp 转发的不就好了
然后连 a 服务器的 25565 端口
ae3803
2019-06-13 23:44:28 +08:00
@unixeno 用什么程序?没有 B 服务器的控制台权限
Tink
2019-06-13 23:48:49 +08:00
这 iptables 转发就行了啊
Tink
2019-06-13 23:49:47 +08:00
iptables -t nat -A PREROUTING -p tcp --dport 25565 -j DN AT --to-destination ip:30525
ae3803
2019-06-13 23:50:26 +08:00
@Tink iptables 转发详细命令是什么?不会用 iptables
ae3803
2019-06-13 23:50:40 +08:00
@Tink 哦,我试试
ae3803
2019-06-13 23:51:29 +08:00
@Tink 直接执行这个命令就可以了?
ae3803
2019-06-13 23:57:36 +08:00
@Tink 为什么我试了没有用啊
MonoLogueChi
2019-06-13 23:59:37 +08:00
在 A 服务器上跑个 Nginx,监听 25565 端口的 TCP,然后转发到 B 服务器的 30525 端口上,类似于反向代理
unixeno
2019-06-14 00:02:17 +08:00
@ae3803 你 ip 改了吗。。。
ae3803
2019-06-14 00:03:31 +08:00
ip 肯定改了啊
ae3803
2019-06-14 00:06:00 +08:00
我是要用 A 服务器的 25565 端口来转发 B 服务器的 30525 端口的 TCP
ae3803
2019-06-14 00:12:39 +08:00
这是我用的命令 iptables -t nat -A PREROUTING -p tcp --dport 25565 -j DNAT --to-destination 222.187.xxx.xxx:30525
@Tink @unixeno 试了没反应,iptables -L 也查不到
ae3803
2019-06-14 00:13:14 +08:00
系统是 Debian9
Hardrain
2019-06-14 00:35:15 +08:00
在 A 上使用 /运行
1. iptables
如果需要更复杂的功能,比如 filter/load-balancing 等
2. haproxy
3. 简单的 TCP 转发似乎也可以靠 nginx 的 stream module
ae3803
2019-06-14 00:37:42 +08:00
@Hardrain 有没有详细的方法?
wtks1
2019-06-14 00:38:07 +08:00
如果只是 tcp,可以在别的设备上编译一个 rinetd,然后传到目标设备上使用
hlz0812
2019-06-14 00:41:19 +08:00
iptables 转发,不会命令自己查一键脚本,脚本都不会用就没办法了
unknowncheater
2019-06-14 00:59:24 +08:00
回去补充 iptables 知识后再来发帖

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

https://www.v2ex.com/t/573728

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

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

© 2021 V2EX