https://github.com/fffonion/lua-resty-multiplexer
实现了一个端口服务复用的透明代理,可以在同一个端口上运行多个协议。根据每次连接中客户端发起的首个请求检测协议,根据协议或各种条件选择代理的上游。
需要打一个补丁。由@fcicq在这个讨论中贡献。这个补丁实现了 BSD 的 socket recv()语义。目前官方也有这个 feature 的PR。
欢迎讨论和拍砖: )
1
fffonion OP 测试 ip
```shell curl https://104.140.14.46:19999 -H "host:www.google.com" -k curl 104.140.14.46:19999 ssh 104.140.14.46 -p19999 -v dig www.google.com +tcp @104.140.14.46 -p19999 ``` |
2
fffonion OP 做这个的目的是想要骗过一些主动探测的机制( https://ensa.fi/active-probing/imc2015.pdf ),但是如果某 IDS 用重放的方法来检测协议的话,所有特征都是一样的。所以这个模块可以让你根据时间来选择不同的行为,比如奇数分钟选择 tls 协议后端,偶数分钟选择 http 协议后端。
|
3
jinhan13789991 2018-04-13 13:59:32 +08:00
顶一下,虽然看不懂。但是感觉很高达上的样子。
|
4
BOYPT 2018-04-13 14:01:18 +08:00 1
有用,其实 nginx 自己能检测到 http 发了到 https 端口,也有提示的,但是没留出 api 可配置而已。
|
5
jeffson 2018-04-13 14:23:56 +08:00
Mark
|
6
est 2018-04-13 14:28:22 +08:00
|
7
qnnnnez 2018-04-13 14:30:25 +08:00 via Android
peek?
|
8
lieh222 2018-04-13 14:59:47 +08:00
ssh 不是服务端先发消息的吗。。
|
9
lfzyx 2018-04-13 15:31:00 +08:00
然后用这个反向代理 ss?
|
10
Tokin 2018-04-13 15:46:59 +08:00
我第一个想到的就是反代。。。A 端口代理 B 端口,这样用户访问的时候完全感受不到 B 端口。
|
11
lbp0200 2018-04-13 15:47:38 +08:00
|
12
chairuosen 2018-04-13 15:48:19 +08:00
我有一个大胆的想法
|
13
wxl1380610 2018-04-13 16:34:23 +08:00
mark
|
14
frostnotfall 2018-04-13 16:50:20 +08:00
Mark
|
15
wildcat007 2018-04-13 17:16:25 +08:00
@chairuosen 收起你的大胆想法~其实我也有个大胆想法··
|
16
hard2reg 2018-04-13 17:26:52 +08:00
不就是这个吗? https://doub.io/ss-jc48/
|
20
xseven007 2018-06-05 15:13:39 +08:00
如果能够实现 sni 就好啦
|
21
godblessumilk 2021-10-27 14:17:08 +08:00
我有个大胆的想法,内网穿透一下下
|