1
Tink 2021-02-14 21:11:30 +08:00 via Android
502
|
2
pems002 2021-02-14 21:23:28 +08:00 via iPhone
star 了
|
3
hundan 2021-02-14 21:23:40 +08:00 via iPhone
折腾了一天 有点不舍得 吗...
|
4
freakxx 2021-02-14 22:14:42 +08:00 2
。。。。这跟 php 有啥关系,就是做个 nginx 反代而已
|
5
qanniu 2021-02-14 22:45:30 +08:00
Google 可以登录吗?
|
6
Ranying 2021-02-14 23:04:09 +08:00
纯 php 才有可能在虚拟主机等环境大规模应用。
个人要用还是在首页加个登录验证比较好。 |
7
ferock 2021-02-14 23:16:32 +08:00 via iPhone
晚点看看
|
8
terranboy 2021-02-15 00:08:58 +08:00
这东西 10 年前就有了吧 还不如 nginx
|
9
yitalin OP |
10
chinvo 2021-02-15 00:22:23 +08:00 via iPhone 5
关键字 www proxy
确实是十年甚至二十年前就有的东西 不过确实是单 Nginx 实现不了 |
11
lijialong1313 2021-02-15 00:52:22 +08:00
我记得有人用 php 做 ngrok……要不 LZ 考虑考虑,搞个完整替换?
|
12
caola 2021-02-15 00:55:12 +08:00
不用说功能上,就拿你的代码来说,就是不严谨的,
比如:不检查参数就直接用、单双引号不规范使用 |
13
NSAgold 2021-02-15 01:06:12 +08:00 via Android
让我想起了上古时代的 PHPProxy 和 webproxy 类软件
|
16
jinliming2 2021-02-15 02:20:52 +08:00
@yitalin #9 还真不是张口就来,十年前我就用类似的东西上 FB 来着,登录肯定是 Post+Cookie 都有的吧
|
17
binux 2021-02-15 02:35:56 +08:00 via Android
想当年 GFW 还没有关键词匹配。。。可见这个技术有多古老
|
18
justyy 2021-02-15 03:04:57 +08:00 1
|
19
lmmortal 2021-02-15 07:53:38 +08:00 via iPhone
挺不错的 支持
|
20
Ptu2sha 2021-02-15 08:04:46 +08:00 1
9 楼 十年前是 2011 年啊 人人网都挂了
|
21
Seanfuck 2021-02-15 11:44:43 +08:00 via iPhone
用 socks 弄更好点
|
22
systemcall 2021-02-15 12:16:07 +08:00
以前的梯子就是这个样子,一些网站的样式会乱套
连 Flash 这种毒瘤都能跑,post cookies 之类的想必是支持的 那个时候墙的工作原理很简单,一般的也就是 DNS 污染,定期更新 hosts 就可以看油管。那个时候 Google 还可以直接上 |
23
agdhole 2021-02-15 13:45:58 +08:00 1
|
24
hefish 2021-02-15 14:59:08 +08:00
我记得 20 年前,我们翻墙就用一个 perl 写的 cgi,架设在台湾的服务器上,首页就是一个输入框,输入地址,然后点击 go,就访问了那个地址。 这个 cgi 还能替换<form 里面的 action,当然那时候没有啥 ajax,所以肯定是不支持 ajax 里的替换的。
|
25
AstroProfundis 2021-02-15 15:44:13 +08:00
|
26
ladypxy 2021-02-15 16:08:23 +08:00 via iPhone
这玩意确实 10 多年前就有……后来发现 goagent 就换了。还有人记得 goagent 不
|
27
abcd191898105 2021-02-15 17:09:13 +08:00
如果不配置 https 那就好了,you2 替代可以
|
28
mscb 2021-02-15 17:22:38 +08:00 via Android
确实是 10 年前流行的东西
|
29
BingoXuan 2021-02-15 18:48:34 +08:00 via Android
当年很流行的在线代理,大概真的就是十年前
|
30
rekulas 2021-02-15 19:46:20 +08:00 1
思路没问题,但是太简陋了,随便一测就出问题,想做完善的可以参考下 glype proxy, 10 年前同事就基于这个框架实现了极其完善的网页代理,不过现在都没什么用了代理方式变了
|
31
yitalin OP @abcd191898105 如你所愿。已经可以 http 了
|
33
Lemeng 2021-02-15 21:51:02 +08:00
给你个 star
|
34
yitalin OP @AstroProfundis 这东西到目前都不支持 cookie
|
36
0x0F 2021-02-16 02:21:52 +08:00 3
讲道理,什么玩意就十年前写不出来了,就不支持 cookie 不支持 post 的了,合着十年前的程序员都是傻子到你这突然灵光了?我寻思十年前 nginx+php5.3 的流行阶段这样的玩意不知道多少人造过这种轮子了,别说 php 了,啥语言不就是实现个 curl 么,还整的是到目前都不支持 cookie,用 socket 不香实属掩耳盗铃井底观天,我看不到就是没有呗,我没用过就是不行呗?
我是 13 年注册的 V2EX,偶尔上来看个帖,自学自学来跟人讨论没啥问题,别人说啥自己听有意见说就完了,搞得自己是真多厉害,实在是忍不住了,阿弥陀佛。 |
37
yitalin OP @0x0F 真不得了呢?以前有谁不知道似的?你找一个功能跟我这个一样的来?搁这找存在感来了? 13 年注册不得了?还特意说明?笑死 d 了
|
38
yitalin OP @0x0F 你先给我找一个 cookie 存需要代理 host 的、链接添加指定字符即清除 cookie 返回首页的反向代理出来再 bb ?我寻思这个思路这么多年也没有人做出来啊。你在这打这么多字来叫显得你有文化?你现在去试试市面上 php 的反代,浏览大一点的网页看看是不是很卡?我寻思十年前有人做手机了,十年后就不能有人做智能手机了?真是有 bing
|
39
KasuganoSoras 2021-02-16 05:57:09 +08:00 2
楼主,想的还是太简单了,你考虑过一个问题么
如果我访问 https://turl.chat/https://turl.chat/ 会发生什么? 如果我访问 https://turl.chat/https://turl.chat/https://turl.chat/https://turl.chat/ 又会发生什么?如果我频繁请求会发生什么? 所以你这只能算个玩具,连基本的请求控制都没有 你的代码非常多地方都不严谨,变量类型没有任何判断,肉眼能看到的问题就好几处。 还有,如果这玩意搭在能访问内网的机器上,我是不是还能通过 https://turl.chat/http://192.168.1.1/ 这样的方式去扫你的内网?如果内网机器有弱密码情况,分分钟整台服务器就给拿下了,真不是开玩笑 所以 LZ 还是虚心一点吧,不要刚学会点入门级 PHP 就这么飘了,戾气别这么重,多学点不是什么坏事 |
40
yitalin OP @KasuganoSoras 你说的第一种情况不会发生,有判断,第二个问题但是值得考虑,学习了
|
41
blless 2021-02-16 08:25:11 +08:00 via Android
中间人嘛,说得好听是代理。说得难听那就是中间人了。不是针对楼主啊,网上发的链接大家还是留个心眼不要点,尤其还登陆点啥来着
|
42
bao3 2021-02-16 08:33:02 +08:00 via iPhone
突然,就觉得自己是互联网老毒物了……2009 年,还自己搭建过 php proxy,上各种网站……一晃好久了。
|
43
baoshuo 2021-02-16 08:33:08 +08:00
|
44
systemcall 2021-02-16 09:04:18 +08:00 via Android
@ladypxy #26
Google 中国的那些服务器停了就没法用了。以前 Google 中国的那些服务器还是开的的时候,可以白嫖 Google 的国际专线,北京-美国的专线 |
45
markgor 2021-02-16 09:39:49 +08:00
要不考虑下替换插入下<base>标签?
|
48
nalzok 2021-02-16 10:48:53 +08:00 1
@KasuganoSoras 其实我觉得问题不是楼主不虚心,你看八楼说的 “这东西 10 年前就有了吧 还不如 nginx”。从这句话里我没看出有什么有建设性的意见(哪个十年前的仓库值得楼主学习呢? NGINX 相比楼主的项目又有什么优越性呢?),完全就是在 bully 罢了。楼主写的东西再粗糙,他也是想和大家分享自己的作品,结果这么多人都在说 “你写的就是个没用的垃圾”,换作谁会高兴啊。我觉得你的评论就很好,人家的代码有什么问题直接提出就行了,讲那些没用的干嘛 = =
|
50
Tining 2021-02-16 22:22:52 +08:00
本来想部署一下。。感觉要不等大佬更新
|
52
KasuganoSoras 2021-02-17 11:08:53 +08:00
看到你今天更新了,顺带回一下
https://github.com/yitd/Any-Proxy/blob/main/index.php#L53 虽然你做了对内网的判断,判断 host 是否是内网地址,但是,你没有对 host 进行解析操作,也就是说,如果我随便找个域名解析到 192.168.1.1 这样的地址去,还是可以继续扫内网。 另外 https://github.com/yitd/Any-Proxy/blob/main/index.php#L3 不应该去判断是否有 X-Forward-For Header,因为可以随意伪造,只要我每次伪造随机的 Header,就可以无限刷,无视掉你这一部分的判断,并且因为你这一部分还会把请求的 IP 写入 Redis,所以我甚至还可以通过给 Header 塞超长的数据 + 大量请求塞爆 Redis,让主机内存爆满。 继续改进吧 |
53
KasuganoSoras 2021-02-17 11:16:38 +08:00
当你试着去解决了域名解析,Header 伪造这些问题后,你就会发现,其实你写的东西和你所说市面上那些慢的要死、浏览网页一卡一卡的代理软件的速度差不到哪去。之所以那些软件速度不快,是因为人家的软件在设计的时候就考虑到了加密、安全以及各种各样的问题,而不是单纯的就做个转发。因为没人愿意把一套不安全的软件部署在自己的生产服务器上。
|
54
yitalin OP @KasuganoSoras 那是我测试站点用的判断代码,忘了删除。域名解析速度的影响可以忽略不计吧,另外 X-Forward-For Header 是针对 cdn 的,加了 cdn 只有这个才能拿到客户端 IP
|
55
yitalin OP @KasuganoSoras 感谢指点。
|
56
ywisax 2021-02-17 17:09:09 +08:00 1
差不多十年前,我有个朋友就是做这种项目的,wap 浏览器,wml to html 部分还是我写的。。。
挺好玩的,深入搞这个项目对于 HTTP 的细节了解程度应该会提升很大。 |
57
aoerboquartz 2021-02-17 17:15:37 +08:00
楼主做的挺好的,楼主自己都说了,他是自学,不是科班出身,语言符号不规范等等都是正常的,大家就不要嘲讽。楼主 继续完善好代码。
|
58
whoami9894 2021-02-17 18:19:54 +08:00
@yitalin #38
态度还挺冲,逗笑我了 |
59
KasuganoSoras 2021-02-17 18:34:00 +08:00
今天下午没事干,重新整理了一遍你的代码,把发现的几个问题都修复了,另外规范了一下命名,已经给你提 PR 了,有空去看看吧
|
60
gtchan13579 2021-02-18 09:06:28 +08:00
无法访问域名+端口号的,感觉用处不大
|
61
q1angch0u 2021-02-18 14:07:50 +08:00
https://github.com/yitd/Any-Proxy/blob/cebd9c5949f2cebae69223140c570d115a562b33/index.php#L53 这还有一波 dns rebinding 攻击- -
|
63
huobazi 2021-02-20 15:47:22 +08:00
十五六年前,全胜同学拿 1bu.com 这个玉米玩了一次超级反代,强奸了 google baidu 数以万万计的收录,反代出的江湖啊、论坛啊也是可以登陆发帖的。
|
64
t6attack 2021-10-08 10:31:16 +08:00
搜索时索引到了这个帖子,该说的楼上都已经说了。
目前最先进的在线代理技术是 jsproxy,同样出自 v 友之手。楼上已经有人提到了。 原帖: https://www.v2ex.com/t/551536 项目地址: https://github.com/EtherDream/jsproxy |
65
lijiangang886 337 天前
艹,楼主直接 github 账号都删掉了
|