Monday, December 26, 2011

代理自动配置脚本――PAC文件

原文:http://yangcheng2503.blogspot.com/2011/12/pac.html

什么是PAC?

A proxy auto-config (PAC) file defines how web browsers and other user agents can automatically choose the appropriate proxy server (access method) for fetching a given URL.(摘自Wikipedia)

正如这句定义,PAC文件被用来决定某一次网络访问所使用的代理。说得通俗点,就是当你访问某个网站时,由PAC文件判断该不该使用代理,或使用哪一个代理。

为什么会用到PAC?

这有什么用?如果你发问,那你要么不懂网络要么肯定没在大陆待过。在大陆的人都知道GFW, 它是互联网上的文字狱,是自由精神的枷锁,是中华名族的樊篱,如果要自由上网就必须"翻墙"。很多翻墙工具都是代理性质的(如Wallproxy、 GoAgent等),但是这些代理在访问大陆网站的时候又会增加延迟、拖慢网速。若能在访问被墙网站(如Facebook、Twitter)时通过代理连 接,在访问其他网站时直接连接,就能实现既"翻墙",又不会因代理拖慢其他网站速度。实现这一想法的最便捷方案就是PAC文件。

还有另一 部分人(包括我在内),使用中国教育网,只能访问极少一部分大陆网站,不能访任何外国站。这部分人对能够自动配置代理的PAC文件有更强烈的需求。因为教 育网要访问外国站就必须加代理,但是通过代理又无法访问教育网网站。如果不能自动配置代理,那么上网过程将会伴随不断的切换代理。而切换代理那繁琐的过程 相信没有任何一个人愿意忍受。

如何构造PAC文件?

PAC文件其实可看作是一个JavaScript脚 本,只不过它仅支持其中一部分命令。PAC文件必须包含一个FindProxyForURL(url, host)函数,这个函数可以看作是PAC文件的主函数,任何网络访问请求都会由系统传给这个函数。参数url就是要访问的URL,host就是要访问的 URL所包含的主机。例如访问http://en.wikipedia.org/wiki/Proxy_auto-config,URL就是它本身,host就是en.wikipedia.org。下面举两个Wikipedia中的例子来说明这个函数的用法:

 function FindProxyForURL(url, host) {
return "PROXY proxy.example.com:8080";
}


上面这两句就可以作为一个PAC文件,它对所有URL都返回同一个代理。也就是说这个PAC会让所有访问都通过proxy.example.com:8080这个代理。


下面这个相对复杂一些:


 function FindProxyForURL(url, host) {
//对于所有.edu.cn域名,直接连接
if (shExpMatch(url,"*.edu.cn/*")) {return "DIRECT";}
//对于10.0.0.0到10.0.0.255之间的IP地址使用代理
if (isInNet(host, "10.0.0.0", "255.255.255.0")) {
return "PROXY proxy.example.com:8080";
}
//其他网站尝试使用代理访问,代理无效时,直接访问
return "PROXY proxy.example.com:8080; DIRECT";
}


这 个例子说明了JavaScript函数在PAC文件中的使用方法。例子中,所有以.edu.cn作为域名的网站都将采用直接连接,所有在10.0.0.0 到10.0.0.255之间的网站都会通过代理服务器proxy.example.com的8080端口连接(即使这个代理不可用)。其他一切网络连接都 将尝试通过proxy.example.com:8080连接,如果代理无响应则直接连接。关于PAC文件更详尽的格式说明请参考《Navigator Proxy Auto-Config File Format》,如果有兴趣你也可以阅读一些扩展内容《Automatic proxy HTTP server configuration in web browsers》。


有一点不得不提到的是:大多数系统和浏览器只支持ANSI编码的PAC文件,如果使用其他编码(如Unicode)将无法识别。


PAC文件怎么用?

对 于Windows系统,直接在"Internet选项"中,"连接"标签,"局域网设置"按钮,选中"使用自动配置脚本",下面的地址栏填写PAC文件的 URL。例如有个auto.pac在你的D盘根目录,则填写"file://d:/auto.pac";如果这个pac在网络主机上,你就需要填成类似 "http://genghis-yang.tk/something/auto.pac"这样。


Windows代理配置图解


对于Firefox浏览器,"首选项"中"高级选项卡","网络"标签,"设置"按钮,在"自动代理配置URL"中填入你的PAC。


Firefox代理配置图解


对于Linux系统(以ubuntu10.04为例),在"系统设置"里面打开"网络代理首选项",在"自动代理配置"中填入PAC的URL。






ubuntu代理配置图解


其他配置方式也很雷同,这里就不赘述了。



请支持我的GoogleCode项目

我在Google Code上开了一个项目――pac-maker, 做教育网代理自动配置脚本,包括一个按月更新的PAC文件和一个PAC文件自动生成程序。它主要是为教育网这个特殊群体服务的,主要目的就是让教育网不可 访问的IP自动使用代理,而可访问的则直接访问。这个工程刚刚起步,还存在一些问题,期待有人能加入进来,或者提交些Issues,把它做得更好。


用图片隐藏种子文件

原文:http://yangcheng2503.blogspot.com/2011/12/blog-post_17.html

这是很久以前接触的一项技术,没什么大用,就是拿来玩玩而已。具体的由来要从爱情动作片说起……(此处略去1000字)……这一省略也没什么好说的 了。其实就是把不适宜光明正大传播的BT种子变成图片,贴在网上。别人看起来是一张图片,但是右键另存为之后,再用winrar打开就变成了种子,可以下 载了。试试这张图片吧,比特鱼上的《失恋33天》。

《失恋33天》图片失效,请联系博主更新

试试在上面这张图片上点右键,另存为,保存到你自己电脑上。然后把后缀名jpg改成rar,打开看,里面就是电影的BT种子。

那么该怎么制作这么一张暗藏BT种子的图片呢?步骤很简单:

1.准备随意一张图片和一个BT种子文件,假设它们分别叫example.jpg和movie.torrent
2.将种子文件用WinRar压缩,得到一个文件假设叫compression.rar
3.控制台中输入copy /b example.jpg+compression.rar my.jpg

三 步就完成了,那个my.jpg就是暗含BT种子的图片,当然名字可以随便。这么简单?对,就这么简单,这其中的奥妙全在第3步呢。看起来就是用了copy 命令来合并两个文件,但是合并的两个文件顺序一定不能反,一定要图片在前压缩文件在后。为什么这样?这跟图片文件储存格式有关。从二进制的意义上来讲,图 片文件在最开始的一块地方存放着整个图片的颜色宽窄大小等信息。合并文件时如果rar文件在前面,系统在my.jpg最开始的地方找不到图片的信息,就无 法显示图片了。当然/b参数最好也别落下,/b的意思是用二进制方式合并,如果不加上很可能就用ASCII码方式合并,那就很可能失败了。至于为什么图片 文件信息不会影响WinRar识别,那就不得不佩服WinRar的鲁棒性了。其实WinRar并不仅是压缩工具更是一款功能强大的软件,它有很多高级应用 技巧可以在代理商的网站上看到http://www.winrar.com.cn/jq_jcjq.htm.htm

最后再贴两张图片,打开不是种子而是个txt文件,里面是《你看起来好像很好吃》和《时间规划局》的ed2k链接。这样大家就知道怎么隐藏非BT种子文件了 : )

《你看起来好像很好吃》图片失效,请联系博主更新   《时间规划局》图片失效,请联系博主更新


穿墙术:Tenacy/GoAgent

原文:http://horan.cc/fxxk-gfw-tenacy-goagent/

AGONISTICKo - broken wall

其实和上文一样是没有完全的必要写出来的,
低调,务实,闷声发大财才是理性的选择,
但是骆驼内心的冷焰却无法埋藏。
就算顽闹如也有低头的一天两天
作为历来只做事不过问的技术工作者的声音也很简单——解决问题。

洋葱已经过期很久了,无法食用。
近期的尝试了两种方式其它方式的
Tenacy 和 GoAgent。
两者都算不错,各有利弊。

tenacy

和洋葱等通过代理形式的穿墙术不同,
Tenacy 是一款 VPN 形式的穿墙术,
相当于电脑增加一条与境外服务器的连接。

Tenacy 分为免费服务和收费服务,
免费服务是多人共用约半小时的账户,可更新。
如果墙外的需求不多,仅仅偶尔需要,不妨一试。
而收费服务则是月卡/季卡/年卡,一年不过百元。
速度不错,下载可以稳定在 200K,
一般不持续长时间全速下载的话,连接不会重置。

比较悲剧的是,VPN 风声甚紧,
不但淘宝上需要挂羊头卖狗肉,
而且 Tenacy 的主页也不时被和谐。
三种途径获得最新地址:
1、上跟随 @Tenacy_VPN
2、之,一般也能返回最新地址;
3、发邮件至 url@tenacy.com

silence-is-murder

GoAgent 依旧是一款代理型穿墙术,
基于 python 语言(新版 1.7.x 开始为 go 语言)编写,
主要是利用了谷歌的 GAE 搭建。

这是个需要一定 知识、一定 DIY 技能、
升级迅速、功能强大、稳定可靠,
新兴并且免费的穿墙术。
速度可以达到 50k 以上,
最新测试版已经可播放嵌入式 视频。

如何使用的教程网上有很多
我这里只提几个注意事项:
1、现在版本需要先开 GoAgent 程序再上传文件;
2、注意把 改为 8.8.8.8,防止"Errno 10107";
3、可以用 addto-startup.vbs 把 GoAgent 加入服务,开机自动运行;
4、Firefox + AutoProxy 可能需要导入证书。

【相关资料】
1、AGONISTICKo – broken wall
2、silence is murder◃google+
3、Free 30 Mins VPN◃tenacy (随时失效,得闲更新)
4、GoAgent◃gae
5、AutoProxy◃mozilla


KnProxy Lambda 自建结合KnProxy-APJP翻墙代理服务器

原文:http://allinfa.com/knproxy-lambda.html

KnProxy Lambda是KnProxy WEB代理的一个分支,它应用了JAVA和PHP合作的技术,为用户提供全面的平衡的代理。Java客户端和PHP服务端之间的通信通过高级的加密算法加 密,同时流量被分散到多个服务器来避免流量分析。KnProxy Lambda能提供强于KnProxy的全面网络代理服务。可以完美支持POST,GET,和AJAX请求。同时KnProxy Lambda还兼容apjp服务器,可以直接使用已有的APJP服务器并用其分担流量,扩大网络范围,方便用户迁移。

以前的KnProxy代理请参考:自建安全翻墙代理服务器 KnProxy教程

KnProxy Lambda官方项目主页:

http://sourceforge.net/projects/level5/

http://freshmeat.net/projects/knproxy-lambda

官方版本下载:KnProxy Lambda v5

2011-07-18 服务器v5.00 下载:
knproxy_lambda_server_apjp_v5_00.zip

2011-10-26 客户端v5.00RC2 下载:
knproxy_lambda_client_v5_00_RC2.zip

概述:

简单说来,KnProxy Lambda是结合KnProxy和APJP的一个网页代理,先后对而言,因为有客户端图形界面程序,更易操作,设置也比较简单。

步骤就是:第一步,找到一个服务器空间,上传配置好的KnProxy程序;第二步,配置客户端,第三步,浏览器代理设置;

下面介绍详细的使用方法:

(一)搭建KnP V5 服务端:

搭建KnP V5 服务端:

1. 准备工作:
KnP V5需要用到php的sockets和rc4加密模块,所以说并不是所有的服务器都兼容。如果您搭建后无法正常运行,请更换服务器(这里特别推荐 000webhost 这个免费服务器,速度还不错,搭建也比较成功)。

按照上述地址,下载最新版本,将文件解压缩,里面是 4个文件。

因为KnP V5目前使用的APJP服务器程序,搭建KnP V5服务器端与APJP差不多,详细请参考:
安全翻墙APJP:基于PHP和JAVA的代理构建最新版教程

下面是简要的主要步骤介绍,按照这个一步一步配置也行:

2. 配置密码:

为了保证传输不被 a)第三方盗用 b)GFW阻挡,建议你不要用默认的密码。
打开压缩文件的 HTTP.properties.php 里面只有一行:

$APJP_KEY = 'MisakaMikoto';

把这个改成你自己的密码即可(长度在 5-16 个字符即可,由于美国对强加密算法出口规制,超过16位的RC4加密需要安装特殊JAVA配置文件,为了避免客户端不能解密,建议密码短些,我们的目标不是搞的多安全而是能PASS掉GFW)。

3. 架设

超简单,请在服务器新建文件夹,上传即可!

4.常见问题
有的时候架设后客户端也配置正确可能无法使用,这些情况下可能是
a) 您的服务器供应商不允许使用php sockets或者加密(能用KnP V4de 服务器不一定能支持v5)
b) 您的密码太长,JAVA客户端不能解析
c) 页面可以出现,底部有乱码:您的服务器可能会自动追加广告信息等,请忽略掉就是了…后续版本会致力解决这个问题

在上面配置好服务器端后,再配置好客户端就可以使用自建的安全代理服务器了。

(二)KnProxy Lambda 客户端使用说明

1. 预备工作

KnProxy V5的客户端基于Java编写,电脑上必须安装有足够新的 Java 虚拟机。
最新的Java虚拟机可以在:http://www.java.com/zh_CN/download/ 获得。

2. 客户端的图形界面程序与添加服务器

作者设计了客户端的图形界面程序,相当的方便。 在自己的电脑上解压最新的客户端程序后,双击运行其中的 KnProxyV5.exe 即可。
如果不是 Windows系统,请打开终端,输入 java -jar KnProxyV5.jar 也可以。如果您的Java版本不够高,Windows用户会得到提示。

运行KnProxyV5.exe后的 KnProxy V5 运行界面如图所示:

KnProxy的用户界面很直观,分为菜单、启动状态、服务器列表,操作按钮。

默认的KnProxy带有2个供测试用的服务器,为了安全起见,可以删除之,然后通过左下角的"添加服务器"按钮来添加自己的服务器。

请注意:服务器删除会立即生效,但是添加服务器需要重新启动代理软件。

其实客户端配置也就这一步,把自己的服务器添加上去就好,不需要更多设置,然后,点右下角的"启动"按钮,你会看到服务器状态变为 "已启动(监听 127.0.0.1:5000)" 。

请记住KnProxy的代理是:127.0.0.1:5000,余下的就是在浏览器中设置代理。

4. 浏览器代理设置

如上所述,我们要使用KnProxy代理,在自己的浏览器中要设置"代理服务器":127.0.0.1 "端口":5000

有关代理的设置,我们推荐使用firefox+gproxy来设置,相当的方便。请参考:

GProxy:调度代理的火狐firefox扩展(v1.67)

http://allinfa.com/gproxy.html

如果要缩小KnProxy的窗口,请打开点"文件"� "收缩到任务栏"。收缩后,双击任务栏图标即可还原。

5.在上述所有配置完成后,与平时一样,在浏览器中输入网页地址就可以代理上网了。

上网的代理ip情况可以打开美博园ip查询页检测:美博园 上网IP地址参数 检测

最后补充官方介绍的特点:

KnProxy Lambda 基于KnProxy的浏览内核 KnHTTP 模块的改进版,KnProxy V5 将会让更多的免费空间也能够使用高级的代理服务。

KnProxy V5的处理引擎将参考 APJP( A PHP/Java Proxy)的运行模式,采取客户+服务器端双处理的模式。客户端由Java编写的Proxy将会对浏览器请求捕捉,处理,加密,测速并发送到指定的的服 务器列表中的服务器上。服务器则将请求传达,获取结果,加密,传回KnProxy客户端。

增强的RC4加密:相比于KnProxy那幼稚的"地址混乱化"KNEN加密,RC4加密大大提升了传输的安全程度,而且请求和回应双向加密,很安 全。群过程采取了 RC4 或 KNEN 加密,动态密钥,保证数据不会被劫持。同时用cURL 模块部分解决了 APJP 的 HTTPS 问题。

允许把压力分担到多个服务器:在原来的情况下,如果连续访问国外主机,往往会出现被 Connection Reset 的危险,不管是不是传输比较敏感的信息。KnProxy V5 客户端将允许设立服务器列表,访问网站会根据用户设定的优先级,服务器速度综合选择合适的服务器。新的模式允许在你设定的代理服务器之间随机跳动,不是对 一个服务器使劲用,所以大大减小了被流量监测的危险,请求被分担到了多个服务器,所以大大降低了服务器的负担,增加了隐私度。

新的客户端模式还会允许用户在服务器列表枯竭时,从一个指定的服务器获取新的服务器更新,时时保持代理畅通。全线突破GFW的阻碍。列表每次获取有限,而且不允许直接获取,避免GFW 内部人士借以嗅探 KnProxy 服务器。

兼容APJP:服务器使用的是APJP的服务器端,KnProxy V5将全线兼容 APJP 服务器,允许用户使用已经架设好的 APJP服务器与优化的服务器选择规划算法结合,得到理想的速度。

缩到任务栏:避免代理窗口妨碍视线,所以可以缩到任务栏。双击就可以打开了。

以上根据官方介绍和自己的使用情况整理。如有什么问题,请使用者反馈,以便反馈作者改�。谢谢作者jabbany为大家提供好的翻墙工具。


推荐LastPass保护你的密码安全

原文:http://www.liuyucheng.me/lastpass.html

CSDN的密码事件已经演变成一连串的大规模密码泄露。这不但是冰山一角,而且甚至整个冰山都在为之动摇,那就是,你不能再忽视甚至无视密码短短的一行字符串了。保护密码意识必须增强。

废话就不多说了,现在我推荐一款保护密码安全的利器——LastPass

最后的密码

LastPass是一款出色的密码管理工具,从英文字面理解就是最后的密码,工具的使用也非常的简单,而且它的算法使本地无法获取到密码,采用256的加密更加安全。重要的是你只有记住你最后的密码就可以了,这个密码可要保护好。其他的东西就交给云来处理了。

官网的下载地址:https://lastpass.com/misc_download.php  如何使用可以看官网的指南。

当然,我更加强力推荐的是谷歌浏览器+LastPass的组合,现在演示一下:

1.首先,在谷歌应用商店下载LastPass的扩展程序。谷歌商店地址:https://chrome.google.com/webstore/category/home?hl=zh-CN

lastpass扩展

2.安装好后,可以看到

lastpass-chrome

安装好在谷歌浏览器上显示图标

3.首先点击图标,开始创建一个最后的密码的账户:这个账户非常重要,建议好好保存!!

创建lastpass账户

创建lastpass账户

 

4.安装好lastpass后,每当注册网站的账户的时候,都会弹出一个生成密码的选项,可以选择让lastpass生成复杂的密码

生成lastpass密码

生成lastpass密码

5.注册好后,lastpass会提示是否保存站点的账户信息

确认保存密码

6.记住的密码在下次登录时会提示是否自动登录,自动填写

自动lastpass

 

使用LastPass登录,只需要在登录页面,点击图标,再输入lastpass的特定密码就可以。密码安全可以得到很好的保证。

最后:其实类似的软件扩展还有很多,大家可以根据自己的要求和喜好来选择。而且经过这次的密码泄露事件,业界定会发起一场密码保卫战,商家又要有的忙了。


freesmVPN - 提供美国免费VPN

原文:http://qiong.info/archives/6189

null

连接到VPN服务器,相当于构建一个虚拟专用网络

让你轻松访问facebook,twitter,youtube..带你畅游全球任意网站

比代理更稳定快速安全。使用简单,无需安装任何程序,注册成功即可使用

神马VPN的优势1、支持IPhone,Android,Win 7,Win xp 2、

同时支持PPTP和L2TP/IPSec 3、美国专线服务器,专业\稳定\快速4、数据加密,保护您的真实IP地址

网站地址:http://205.164.14.243/home.sm

需要代理访问:http://freesmVPN.com/home.sm在其网站注册一个ID。