想用 php 访问别的网页, 但被限制了, 请问有什么绕过限制的办法?

2014-07-30 08:59:49 +08:00
 adkudao
我现在开发并维护一个学校网站,这个学校网站的空间就放在学校内部的服务器上,但是有点奇葩,它是在一个服务器上划分一个虚拟机给我,装的CentOS, 我有root账号;

服务器跟外网之间有一个类似于防火墙的设备 or 软件,导致我在虚拟机里做的任何安全设置都形同虚设,完全得按着这个"防火墙"的规则来,打个比方:

1.不管我在虚拟机中打开多少端口,外部都只能访问虚拟机的80端口,导致我的虚拟机没办法发送邮件,因为邮件端口被屏蔽;

-- 也就是说,外部只能访问我的网站,而我却没办法给网站会员发送邮件(找回密码的邮件);


2.在虚拟机中访问Localhost,几乎可以使用任何函数,但是与外界通信时,就会被屏蔽掉一部分他们认为危险的函数,比如我在虚拟机中访问Localhost, 可以查看phpinfo(),但是外网访问时, phpinfo()里的服务器信息,全部都被拦截;
-- 也就是说, 我在外网访问含有phpinfo()的网页时,只能看到空白页;


3.最恼人的就是第三点,虚拟机的php,和外部服务器通信几乎都被隔断,我用root账号登录虚拟机后,可以发现php的curl函数没有被禁用,系统本身的curl也没有被禁用, 都可以curl本地的网站,比如127.0.0.1,但是,无法curl外部的网站(虚拟机的DNS是没有问题的,可以nslookup);


所以我的问题来了,我开发的这个网站,需要使用到百度的云推送,需要和百度的服务器通过curl通信,可是现在被屏蔽了,好吧,然后我又想了一个办法:

1.我在外部建立一个网站: abc.com, 可以接受GET参数;
2.当我从任何地方访问abc.com/index.php/tit/hello/content/nihao时,我就可以获取"tit"和"content"两个参数值;
3.获取到参数后,我通过abc.com与百度的服务器进行通信,把参数发给百度,就OK了;

这样通过abc.com做中转,就不需要通过虚拟机使用curl操作了,可以在abc.com中使用任何函数,打开任何端口;


可是!

尼玛!

我现在在虚拟机中,连访问abc.com都做不到哇!

我试过了种种办法,fopen, file_get_contents, curl, fsockopen, 都不可以了,我现在只需要访问一下abc.com/参数/xx这个网址,就能把参数传过去,可是,始终没办法访问,请问大家,有什么办法可以让我在虚拟机中访问abc.com吗(虚拟机的DNS是没有问题的,可以nslookup)?
5417 次点击
所在节点    问与答
33 条回复
arnofeng
2014-07-30 12:50:06 +08:00
@oott123 我也在csu维护一台虚拟机- -爆麻烦
adkudao
2014-07-30 12:56:26 +08:00
@RemRain 感谢提供方案,可我打算还是申请白名单算了,没那么麻烦
adkudao
2014-07-30 12:57:50 +08:00
@arnofeng
哈哈,没错,看来都是csu的,真是没想到v2ex居然能碰到这么多csu,而且维护csu虚拟机的;
我也烦死了,这也限制那也限制~
arnofeng
2014-07-30 12:59:07 +08:00
@adkudao 我遇到 这种情况直接让系里在万网买机器
adkudao
2014-07-30 13:00:00 +08:00
@arnofeng 我申请过,但是机房方面回复,edu.cn的域名不准指向外网,你们怎么可以指向阿里云?
arnofeng
2014-07-30 13:03:01 +08:00
@adkudao 用了别的域名- - 这个学校方案 是今年花了一千多万在VMware公司买的服务好像。。信息网络中心那块管的总共一百多台虚拟机。是好事也是坏事。
adkudao
2014-07-30 13:08:05 +08:00
@arnofeng 呵呵,花了这么多钱,照样也被黑过,还被公安局责令整改;
你们好幸福,可以换域名指向别的空间商
arnofeng
2014-07-30 13:19:25 +08:00
@adkudao 你不是也准备用abc.com做跳板吗?哎,看起来你要做的网站很牛啊。可以交流。
duzhe0
2014-07-30 13:26:04 +08:00
楼主思路错了。魔高一尺道高一丈,你这次就算用技术手段绕过了限制,被发现后照样能给你堵上。
楼主说的这些限制, 都是很常用的服务器安全策略。正确的方法是联系管理员问问有没有白名单, 或者能不能解除部分限制。如果都不行, 那就只能放弃用百度云,想想其它解决方案了。
adkudao
2014-07-30 13:30:32 +08:00
@arnofeng 不敢说牛,因为涉及到手机APP推送消息, 需要和百度的推送服务器建立通信,所以逼不得已才用跳板,这差不多就意味着双倍的工作量,还是杯具~
我好想跟你们一样可以正常做网站, 多多交流~
adkudao
2014-07-30 13:31:22 +08:00
@ejin 多谢提供思路~
adkudao
2014-07-30 13:33:45 +08:00
@duzhe0 这个就算放弃了百度的服务,也没办法正常使用别的服务,那堵神奇的"墙",不是针对百度的,而是针对所有外网; 如你所说,还是要白名单~
oott123
2014-07-30 23:13:24 +08:00
@arnofeng
@adkudao
看来大家都是苦逼运维啊哈哈哈

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

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

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

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

© 2021 V2EX