Академический Документы
Профессиональный Документы
Культура Документы
Edited by YH Fung
Version 0.02
目录
背景 .................................................................................................................................................. 3
1 “破网”一词是什么? ........................................................................................................... 4
2 怎样才能破网呢?................................................................................................................... 4
2.1 Virtual Private Network ................................................................................................. 4
2.2 懒人方案一:Draytek Vigor 2200E Plus ...................................................................... 4
2.2.1 Draytek Vigor 2200E Plus在香港家里安装程序............................................... 5
2.2.2 PC在大陆安装程序(PPTP VPN Client)......................................................... 7
2.3 懒人方案二:Buffalo WZR-HP-G300NH .................................................................... 13
2.4 为什么VPN后,浏览不到Youtube、Facebook,六合彩网站 ................................. 14
2.5 DDNS是什么和怎样设? ........................................................................................... 14
3 VPN技术应用 .......................................................................................................................... 16
3.1 LAN-to-LAN.................................................................................................................. 16
3.2 Teleworker-to-LAN ...................................................................................................... 16
4 Software VPN Server ............................................................................................................... 16
4.1 PPTP Server ................................................................................................................. 16
4.2 OpenVPN Server.......................................................................................................... 16
5 Hardware VPN Servers ............................................................................................................ 17
5.1 Commercial/Domestic VPN Routers ........................................................................... 17
5.2 DD-WRT Routers.......................................................................................................... 17
5.3 Tomato Routers ........................................................................................................... 17
6 其他破网技术......................................................................................................................... 18
6.1 怎样利用Putty + SSHd 破大陆长城网 (避免网警对PPTP VPN流量控制)......... 18
6.2 Putty + SSHd 破网技术攻略 ...................................................................................... 25
6.3 DD-WRT OpenVPN Static Key 破网攻略 .................................................................... 30
6.4 「白凤」(psiphon) 躲开网络监控工具 ................................................................... 37
6.5 Tomato mod OpenVPN 教学...................................................................................... 44
6.6 使用两台DD-WRT (VPN 版本)Router做Site-to-Site OpenVPN 高度加密的 VPN
tunnel 55
7 Examples of LAN-to-LAN Configuration .................................................................................. 59
7.1 Configuration of two Draytek Vigor 2200E Plus routers using IPSec VPN ................... 59
8 一人一VPN故事 ...................................................................................................................... 64
8.1 Veiver .......................................................................................................................... 64
背景
以前我们不知道什么叫 VPN,但是因为有一天我订购的香港太阳日报突然有一天不能再看了,
主要原因大陆把香港的报纸封了,那么时候没有办法,只有看别的。那个时候信报刚刚有网
上版,于是订购了,它有论坛,偶然我都去看看,偶然发现什么叫“洋葱头”的软件可以用
来看香港的新闻,于是下载了洋葱头,果然真的可以在大陆看到香港的信息。
为什么我们喜欢看香港的信息,因为我们香港人都是从小在香港长大,习惯当地的生活和文
化,所以香港发生什么一举一动都想知道。其实我也不太明白为什么设计这样的软件,可能
都是用来破网用,可能在不同的国家有不同的需要。偶然一天我发现有一个讲技术的网站
HKEPC,里面有个HKPEC论坛在网络宽频板块看到HOMINNS写关于破网的文章,于是开始我
学习VPN技术的历程。因为他写了很多比较启发性的文章,因为没有去跟帖,慢慢帖子就被
锁上,因为论坛资源所限,最后被删掉,我看到这样非常可惜,于是特意起一幅【香港一人
一VPN Server】专帖,专门介绍VPN Server的应用,鼓励香港在大陆工作的网友家里安装一
台VPN Server,用过自己的VPN Server,那么你就可以得到香港的信息,如香港的报刊、论
坛、youtube、facebook,六合彩等等。
由于在V0.01 面世的非常匆忙,只能简单说一下。现在版本是V0.02,内容增添了篇幅,方便
阅读和参考。本册子大约会在一个月更新一次,最新的手册可以在本人的MSN SkyDrive找到。
YH Fung
2009-10-1
1 “破网”一词是什么?
在一般的情况下,你在某处上网连接到另外一边是没用问题,但是可能某些人不让你去浏览
某些网站,所以中间设了一道防火墙,于是大家就看不到外面的网站,而专心工作。但是某
些人却喜欢看外面的网站,于是想尽方法去越过这道墙——爬墙、破网。
2 怎样才能破网呢?
破网方法有很多种,利于我说的“洋葱头”,你下载洋葱头的软件,安装后就可以使用了,
但是下载速度比较慢。其实还有别的方法去破网,但是这里我们不会谈及,我们主要是利用
Virtual Private Network(VPN)技术去破网。
选择“连接到我的工作场所的网络”
选择“虚拟专用网络连接”
在“公司名”输入你容易记的名称。
输入你的 VPN Server Hostname or IP Address
输入用户名和密码,还有在“为下面用户保存用户名和密码”打勾。按连接,如果成功的话,
你可以浏览香港三大网站。
2.3 懒人方案二:Buffalo WZR-HP-G300NH
具体怎样设置,我也很少接触,不过应该也难。如果你有这方面的详细经验,可以说说。
2.4 为什么VPN后,浏览不到Youtube、Facebook,六合彩
网站
2.5 DDNS是什么和怎样设?
如果你在香港 VPN 香港的 VPN server 还可以,如果你在大陆 VPN 香港的 VPN server 问题就
出来了!为什么呢?就是应为大陆把 dyndns.org 这个 domain 封了!所以你不能 VPN 回香港,
那么用什么 domain 呢?这里不能说,因为说了出来,可能又会被封,但是在 DynDNS.org
里有很多其他 domain names 可以让你选择,你可以在里面找找,一定会有些 domain names
没有被 blocked 的。
一般的 router 只有一个 DDNS 你可以设,而听过 Tomato 可以有两个 DDNS 可以设,在 Draytek
Vigor VPN routers 里一般都会有 3 个 DDNS 让你可以设的。如果你用 Draytek Vigor VPN router,
那么你最好设 2 个 DDNS 比较有保险,还有一个用大陆的,另外一个用外海的,如在
DynDNS.org 里找适合的 domain names。
3 VPN技术应用
大部分的 VPN 都是以 Client-to-Server 模式进行,
Client 和 Servr 可以是 PC 或者 router 来实现。
如果公司网络连接,一般都是用 routers,而破网的,大部分都是 Client 是 PC,而 Server 是
router。
3.1 LAN-to-LAN
以前公司小的时候,什么电脑系统都可以放在一起,但是公司大了,分别在不同的地方,那
么两边的网络怎样连在一起呢?以前我们都是租用电话公司的专线连接的。如果地方近也可
以,但是原来很远,哪里有这么长的线给你用,而且费用也非常贵。由于互联网屈起,这些
专线纷纷避互联网取代,利用 VPN 技术,就可以把两边的 Network 连起。一般都是两边都
是采用 routers 来实现。
3.2 Teleworker-to-LAN
(HOMEINNS 在这方面经验)
http://www.draytek.us/pmatrix.html
http://www.draytek.com/user/SupportAppnotes.php
http://www.dd-wrt.com/wiki/index.php/Main_Page
http://www.polarcloud.com/tomato
http://tomatovpn.keithmoyer.com
6 其他破网技术
和大家分享一下,我的经验,我在大陆工作差不多十年,对于”翻墙”的经验也不少,不过很少人
提及我用的方法,我说出来大家研究一下:
4.1 在 Host Name 上填上 HK Router 的 Address (xxxxx.3322.org) 然后在 Saved Sessions 上
填上 Profile 名称 (HK Router) 随便填 , 然后按 Save 你会看到 Profile 以加入,再点一下你刚
加入的 Profile 按 Load , 然后开始设定 SSH
4.2 设定 SSH , 在 SSH \ Tunnels 设定内填上 Source port number (8080) 和选 Dynamic 然后
按 Add
4.3 返回 Sessions 按 Save 储存设定
6. 在 Console Mode Login 去你在 HK 的 Router (User 是 root , password 就是你 Router 的
Password)
应用:
如果你只是上网看看网页的话,我建议你用 Firefox 或 Maxthon ,因为在 Proxy 管理方面比较
容易,切换比较方便,顺带一提 DNS 方面最好改用 OPENDNS 等 DNS Server 因为用自带的 dns
会有很多限制我以下用 Maxthon 为例做设定 Proxy
图一
图二
图三
图四
图五
图六
6、怎样选香港的 ISP 是非常重要,在我们破网经验是,一定要选 PCCW!
!!
6.3 DD-WRT OpenVPN Static Key 破网攻略
1、请看图一,请注意下面的假设:
参考文献:http://www.dd-wrt.com/wiki/index.php/OpenVPN#Server_mode_with_Static_Key
图一(互联网实验室)
2、请看图二,在大陆的 Router 3 里一台电脑 PC 3
从 OpenVPN 官方网站:http://openvpn.net/index.php/downloads.html,
下载 OpenVPN WindowsInstaller program:openvpn-2.1_rc15-install.exe。
图二(OpenVPN 官方网站)
3、然后用默认安装 OpenVPN Client 软件,默认路径是 C:\Program Files\OpenVPN。下一步我
们 generate a static OpenVPN key。
Click on "Start > Programs -> OpenVPN -> Generate a static OpenVPN key" (请看图三)
图四(key.txt)
图五
6、Reboot router (Administration -> Management -> Reboot Router)
7、然后在大陆 Router 3 里的 web administration page,在 Basic Setup -> Advanced Routing 填
下信息:(如果没有这一部,能联通,但是上不了网) (如果上不了才用!现在我已经不用了
也能上网)
Destination LAN NET: 192.168.1.0
Subnet Mask: 255.255.255.0
Gateway: 192.168.1.1
Interface:ANY
remote 192.168.2.14
port 1194
dev tap
secret static.key
proto udp
comp-lzo
route-gateway 192.168.20.1
redirect-gateway
9、在大陆 PC 3,执行 Start -> Programs -> OpenVPN Gui, 然后 right click OpenVPN Gui icon, 选
client -> Connect。
安装「psiphon 白凤」后,他的计算机便自动成为「代理服务器」
(proxy)
。而当专制社会的
网友也安装了「白凤」 ,并取得任何一台代理服务器的登入账号后,便可以安全地通过自由
国家的计算机,顺利转连至世界各地的自由信息。
同时,在网络浏览结束后,「白凤」会自动删除一切网络联机记录,不会在用户计算机中留
下任何相关信息。并且,由于使用者是经由境外的服务器突破封锁,这也使得政府无法一一
追踪、封锁这些联机。(来源:wanchai, 2609#)
针对不同封锁要求限制 通常多配备几种不同的破网程序可以应付不同的需要!!!!
Psiphon(白凤)介绍说明网:http://www.epochtimes.com/b5/6/12/2/n1542425.htm
Psiphon(白凤)特质:轻易连到各网站入口,而且不会在用户的计算机上留下踪迹,能更有效
的规避政府网络监控机制,用户只要透过一个独特的用户名称、密码与网址,就可以连上该
软件,网络浏览结束「白凤」会自动删除一切网络联机记录,不会在用户计算机中留下信息
使用者是经由境外的服务器突破封锁,所以无法一一追踪、封锁这些联机
Psiphon1.6 下载:请择一下载即可
psiphon-1.6.msi
http://psiphon.ca/download/psiphon-1.6.msi
http://www.badongo.com/file/3764818
步骤 1-开启程序:
下载安装后 第一次开启 会出现输入名称 窗口 请自行输入名称
步骤 2-设定选项(建议不要乱更动 会无法正常连结):
点选 setup(设定) 开启设定页面
link 页面信息不需更改
preferences 页面设定 是否 随着 Windows 开机而启动
SSL Certificaation 此页面设定 请在 country 字段中选择国家(随意选取)
例如:
浏览大陆封锁网站就点选 china(中国)
观看日本职棒影片 会封锁非日本区 IP 就点选 Japan (日本)
其余不要更动 会造成连结失败
点选 ok 完成设定
步骤 3-设定 帐密:
回程序接口按 add-输入自行设定的账号密码(自行设定)
步骤 4-联机:
完成设定 程序接口中终会出现属于你的联机 ID
请点选 右侧 start(开启) 再点选 界面中的网址
注意:
毕竟是使用 IP 设定的伪装状态
如果不是浏览或下载被封锁的网站 就关闭此程序
才不会造成网页开启缓慢
(来源:wingchai,916#)
6.5 Tomato mod OpenVPN 教学
(信息来源:阿水, 链接点击)
Install OpenVPN to generate the keys used by tomato & each client:
Initialization 1
Initialization 2
CA signs all keys generated, so that each other can verify them
Note:
Common Name must be unique
Clean up + CA setup 1
CA setup 2
Generating key used by the Tomato Router
Notice:
May provide an extra challenge password for better security (but this must be the same)
generate DH
Generated Files
Before IP
Router Setting
Remember to save the setting + start the VPN server
Feel free to add something in the custom configuration:
# OpenVPN server mode options
client-to-client # tells OpenVPN to internally route client-to-client traffic
duplicate-cn # Allow multiple clients with the same common name
Basic
Advanced
Keys
For each client:
Install the openvpn
##############################################
# Sample client-side OpenVPN 2.0 config file #
# for connecting to multi-client server. #
# #
# This configuration can be used by multiple #
# clients, however each client should have #
# its own cert and key files. #
# #
# On Windows, you might want to rename this #
# file so it has a .ovpn extension #
##############################################
# SSL/TLS parms.
# See the server config file for more
# description. It's best to use
# a separate .crt/.key file pair
# for each client. A single ca
# file can be used for all clients.
ca ca.crt <=== To be replaced
cert client01.crt <=== To be replaced
key client01.key <=== To be replaced
(信息来源:HOMEINNS)
因为这篇文章在网上才刚刚发表了一个月,现在我把这一篇文章Post出来,与大家分
享:http://www.dd-wrt.com/wiki/index.php/OpenVPN_-_Site-to-Site_routed_VPN_between_tw
o_routers
看来,我的问题的根源应该是:-
Most residential network routers prevent you from manually overriding or changing the routing
table. However, business routers typically allow network administrators to manually update or
manipulate routing tables. This so-called static routing can be useful when optimizing for network
performance and reliability.
各位网络的高手,经过这几天的爬文,和不断的实战尝试,上面有颜色的东西,是不是我要
找的答案呢 ?
我知道 Tomato Dualwan mod 的 PPTP VPN 也有 Click 一 Click 就可以把国内所有的 traffic,
驱赶 经过 tunnel 流向香港老家的 Gateway 的功能! 但是我不知道 DD-WRT 有没有!答案很
清楚啦, 穷人的 DD-WRT Router 是没有这个功能的,因为那些 cheap cheap 的家庭用
Router 的 Route table 是 Most residential network routers prevent you from manually
overriding or changing the routing table. However, business routers typically allow network
administrators to manually update or manipulate routing tables. 。
这又是另外的一个 “一分钱,一分货的教训”
。
但从这个过程中,已经学会了哪些极高档次的 Routing 的东西 详见下面的 Link
http://compnetworking.about.com/od/hardwarenetworkgear/f/routing_table.htm
我还有一台旧石器年代的 Linksys WRT54G Version 2.0 (已经 Flash 成 DD-WRT V24 SP1,
VPN Version)
,还在国内的办公室服役, 24 x 7 运行, 设定成为一台 PPTP VPN Client, 一
年 365 日 x 24 小时, 连接回香港老家的 DD-WRT V24 SP1 PPTP VPN server。
(绝对稳定,
绝对可靠)
这条 PPTP VPN Site to Site connection,通过一个 Program Script, 把国内 LAN 后面产生的
的 Web-Browsing Traffic, 驱赶回香港老家的 VPN server 去破网。 (国内的同事就可以
分享我那一条 宝贵的 香港 Wireless VPN tunnel, 他们就可以看到自由世界的大毒草网站。
所有国内的同事们,每一个人都尽可能把他们的 笔记本计算机移到我的 Linksys WRT54G
的有效半径范围内收看大毒草的信息,他们对这些毒草是极度饥渴的.................真是叹为观
止 )
现 在 把 这 个 DD-WRT Client to Server , Site-to-Site VPN connection 的 Gateway
Re-direction 的 Program Script 在这里无偿的公开, 与各位分享一下:-
echo "sleep 40" > /tmp/firewall_script.sh ; echo "gw=\`ip route ls to 0/0|cut -d ' ' -f3\`" >>
/tmp/firewall_script.sh ; echo "vpnsrv=\$(nvram get pptpd_client_srvip)"
>> /tmp/firewall_script.sh ; echo "vpnip=\$(nvram get pptpd_client_srvsub)" >>
/tmp/firewall_script.sh ; echo "route add -host \$vpnsrv gw \$gw" >> /tmp/firewall_script.sh ;
echo "route del default" >> /tmp/firewall_script.sh ; echo "route add default dev ppp1" >>
/tmp/firewall_script.sh ; echo "iptables -t nat -I POSTROUTING -o ppp1 -j SNAT --to-source
\$vpnip" >> /tmp/firewall_script.sh ; echo "for i in \`echo \$(nvram get forward_spec)|sed 's=\
=\n=g'|grep on|grep tcp\` ; do" >> /tmp/firewall_script.sh ; echo "iptables -t nat -A PREROUTING
-p tcp -i ppp1 -d \$vpnip --dport \`echo \$i|cut -d : -f 4|cut -d \> -f 1\` -j DNAT --to \`echo \$i|cut
-d \> -f 2\`" >> /tmp/firewall_script.sh ; echo "iptables -A FORWARD -p tcp -i ppp1 -d \`echo
\$i|cut -d \> -f 2|cut -d : -f 1\` --dport \`echo \$i|cut -d : -f 4|cut -d \> -f 1\` -j ACCEPT" >>
/tmp/firewall_script.sh ; echo "done" >> /tmp/firewall_script.sh ; echo "for i in \`echo \$(nvram
get forward_spec)|sed 's=\ =\n=g'|grep on|grep udp\` ; do" >> /tmp/firewall_script.sh ; echo
"iptables -t nat -A PREROUTING -p udp -i ppp1 -d \$vpnip --dport \`echo \$i|cut -d : -f 4|cut -d \>
-f 1\` -j DNAT --to \`echo \$i|cut -d \> -f 2\`" >> /tmp/firewall_script.sh ; echo "iptables -A
FORWARD -p udp -i ppp1 -d \`echo \$i|cut -d \> -f 2|cut -d : -f 1\` --dport \`echo \$i|cut -d : -f
4|cut -d \> -f 1\` -j ACCEPT" >> /tmp/firewall_script.sh ; echo "done" >> /tmp/firewall_script.sh ;
echo "for i in \`echo \$(nvram get forward_spec)|sed 's=\ =\n=g'|grep on|grep both\` ; do" >>
/tmp/firewall_script.sh ; echo "iptables -t nat -A PREROUTING -p tcp -i ppp1 -d \$vpnip --dport
\`echo \$i|cut -d : -f 4|cut -d \> -f 1\` -j DNAT --to \`echo \$i|cut -d \> -f 2\`" >>
/tmp/firewall_script.sh ; echo "iptables -A FORWARD -p tcp -i ppp1 -d \`echo \$i|cut -d \> -f
2|cut -d : -f 1\` --dport \`echo \$i|cut -d : -f 4|cut -d \> -f 1\` -j ACCEPT" >>
/tmp/firewall_script.sh ; echo "iptables -t nat -A PREROUTING -p udp -i ppp1 -d \$vpnip --dport
\`echo \$i|cut -d : -f 4|cut -d \> -f 1\` -j DNAT --to \`echo \$i|cut -d \> -f 2\`" >>
/tmp/firewall_script.sh ; echo "iptables -A FORWARD -p udp -i ppp1 -d \`echo \$i|cut -d \> -f
2|cut -d : -f 1\` --dport \`echo \$i|cut -d : -f 4|cut -d \> -f 1\` -j ACCEPT" >>
/tmp/firewall_script.sh ; echo "done" >> /tmp/firewall_script.sh ; sh /tmp/firewall_script.sh &
SZ Router Settings:
CW Router Settings:
角色
图一 (SZ and CW Routers are connected using IPSec VPN)
图二(SZ Router Settings )
图三(SZ Router Settings —— Advanced)
图四(CW Router Settings)
8 一人一VPN故事
我估计很多香港人都有在香港老家起一台VPN Server,当中经过的历程是怎样的,希望大家
有空的时候写一写好吗?然后发到【香港一人一VPN Server】里。
8.1 Veiver