自建加密翻墙代理服务器 KnProxy教程说明

来源:http://allinfa.com/knproxy-web-proxy.html

最近几年随着Web代理大头PHProxy系列停止了研发,Web代理软件出现了比较大的空档。目前市面上的诸多代理网站都在使用非开源的Glype或者旧版本的PHProxy等。apjp和 phpsocks5 最近升级了好几个版本,也越来越好用。KnProxy,一个适用于免费 Web空间的低压力代理服务器,一直在不断更新,最近作者又更新了效果不错的新版,经美博园测试,显然改�很大,可以访问绝大多数被墙网站,可以登陆facebook,但youtube视频没法播放,也不能登陆twitter。在此,美博园推荐大家多多建立自己的翻墙服务器,让GFW防不胜防。

一 KnProxy简介:

KnProxy是一个基于PHP的网页代理系统。它应用了PHP内置的cURL模块进行HTTP请求。在使用最有限的服务器资源的前提 下,KnProxy会尽量大的实现高效。KnProxy设计用于简单的日常代理,并不将信息(如广告、JS、CSS)注入特定页面/位置。对于页面的改动 会尽可能控制在仅仅改变页面的链接使其继续被KnProxy代理。当然URL会被加密来避免不和谐的第三方试图追踪访问纪录或是对特定关键字进行筛查什么 的。KnProxy可以用于那些网络并不完全开放的位置,比如:单位、学校、中国GFW的封锁。

KnProxy的几点优势:

1. 采用PHP内置的cURL模块:传统Web代理系统多数使用SOCKET或者file函数来获取远程文件,但是许多免费Web空间禁止了这些函数的远程访 问或者完全禁用了SOCKET之类底层操作。KnProxy使用了PHP自带的cURL模块,针对性的解决了这个问题。
2. 模块封装:传统代理脚本采取的都是单文件或者为了避免代码抄袭,无规则分块(Glype)。KnProxy则有别于这些代理服务把内部模块拆成了如若干功能:
module_parser : 用于将现在的WEB页面解析/分析并把链接改掉
module_url : 用于将相对地址处理成绝对地址(进行简单的URL加和)
module_http : 用于发送HTTP请求
module_encoder : 用于实现地址加密
用户可以根据自己的需求来更改或者重新编写各个模块,而无需将整个脚本阅读明白。我们可以通过替换 module_http 来在不支持cURL的空间上,使用file_get_contents等命令获取文件。这样大大降低了修正的难度。
3. 无需配置:直接上传就能用
4. 无识别性特征:网站无法判断访问请求来自代理
5. 调试模式:如果访问失败,用户可以在地址中加入 debug=true的 GET请求,这样就能获取一个HTTP对象的dump来分析错误产生的部位
6. 不设繁琐复杂的检查机制:KnProxy是轻量级的代理,没有设置用户验证和滚动地址等模块,减轻服务器负担同时加快请求。
7. 可以在很多免费空间自建代理。让GFW去死吧!

二 项目主页及下载:

工程地址:http://sourceforge.net/projects/knproxy
Freshmeat下的该工程:http://freshmeat.net/projects/knproxy
OSChina下的这个工程:http://www.oschina.net/p/knproxy

最新版本下载:
2011年6月22日更新   knproxy theta v4.19

V4.19更新:
-解决了一些在PHP使用严格模式下,显示WARNING导致 HEADER无法发送、文件下载坏掉的问题。
-允许在conf.php设置一个加密SALT,来让服务器有自己独特的地址加密,防止侦破
-根据设置,在传输 text/* 的类型时,自动采取GZIP压缩模式,节约带宽
-检测页面编码,如果不是UTF-8转成UTF-8再加密页面

别着急,最精彩的内容在下面

三 自建 KnProxy 服务器教程:

要自己建立一个KnProxy代理服务器十分简单,因为KnProxy的轻量级,不需要设置,在很多的免费空间上都可以使用。简单来说,就是只要上传KnProxy到主机空间上,马上就可以使用,就这么简单。

1. 寻找有效的WEB空间及要求

这一步是关系到代理是否能成功的最终要因素,能成功搭建KnProxy,服务器需要下面的几个必要条件:
a) 是PHP服务器(支持动态的)。
b) 应该支持PHP自带的cURL模块。
你要是不确定的话,可以尝试将

写到一个脚本里,看看运行后结果如何。如果是 cURL Installed 则表示有cURL的支持能力。

c) 应该允许访问外网。光有cURL,要是服务器不允许你的脚本进行联网也是不行的。你也可以尝试用KnProxy随便访问一个有效地址,选中“直接进入调试模式”。如果看到返回信息都是空的,而网站你能访问,那么估计就是服务器禁止访问外网。
d) 服务器在墙外。这个不用说了,必须的啊~

2. 架设代理服务器
实在是超级简单,把下载到的KnProxy上传,不需要任何设置

3. 自己的代理网址
不管是自己的域名或者是免费空间的二级域名,都可以,只要将KnProxy上传后就可以用自己的域名访问代理网站了。
比如,域名是: abcd.com ,上传的目录是KnProxy
那么,在浏览器输入地址就OK了,怎么输入 abcd.com/KnProxy

四 常见问题与解决

a)大白页(什么都没有):用浏览器查看页面源代码,如果返回 进行调试。
b)只有试图代理时才大白页,墙内网站也无法代理:可能是您的服务器不支持cURL,你可以尝试 debug 一下(调试模式)。如果空白的话,估计服务器不支持cURL的。
c)代理访问墙内网站没事,墙外则白页或连接被重置:可以试试页面加密。
d)出现PHP的WARNING或/ERROR:可以根据内容自己尝试调试,或者检察是否上传完整


—————————————————————————————————————————

需要翻墙利器? 请安装Wuala,查找和添加gfwblog为好友,就可高速下载翻墙软件,或访问http://tinyurl.com/gfwblog直接下载。

推特用户请点击这里免翻墙上推特

请点击这里下载翻墙软件

更多翻墙方法请发电邮(最好用Gmail)到:fanqiang70ma@gmail.com

请阅读和关注中国数字时代、翻墙技术博客GFW BLOG(免翻墙)

请使用Google Reader订阅中国数字时代中文版http://chinadigitaltimes.net/chinese/feed),阅读最有价值的中文信息;以及GFW BLOG(功夫网与翻墙)http://feeds2.feedburner.com/chinagfwblog,获取最新翻墙工具和翻墙技巧信息。


发表评论