Wednesday, January 16, 2013

美博园翻墙:“autoddvpn:路由器級別智能翻牆解決方案”

美博园翻墙:“autoddvpn:路由器級別智能翻牆解決方案”


autoddvpn:路由器級別智能翻牆解決方案

Posted: 14 Jan 2013 08:24 AM PST

http://feeds.feedburner.com/allinfa/据该项目官方介绍這個項目源於路由器自動智能翻牆解決方案autoddvpn。 项目地址:https://code.google.com/p/autoddvpn-beta/ 下载地址:https://code.google.com/p/autoddvpn-beta/downloads/list 这里只是简介,详细的请查阅项目wiki说明。 個人在使用autoddvpn的腳本時發現存在一些不足,比如每次執行vpnup、vpndown都會增刪路由表,對於不穩定的VPN來說很浪費時間,實際 路由表只需執行1次就行了;還有就是final check處有個死循環,有時在vpnup執行過程中VPN斷線就會卡在那裡,導致vpndown也無法執行;以及沒有VPN檢查程式,有時VPN斷線路 由器無法自動重連的時候不能強制重連等等。所以我對autoddvpn-beta的代碼進行了一些優化和改良,最開始在autoddvpn項目上提交了一 些修改後的patch,但是被無視,也許是就原來的腳本改動太大。於是索性自己新建了一個project,來發佈我的改良版本。 因為這個程式是在autoddvpn上改良、完善而成,同時也為了表達對autoddvpn原作者啓發的感謝,因此將此項目命名為autoddvpn-beta。 另 外,還計劃在原先autoddvpn的基礎上除了改善這些不足之外,再增加一些新的功能,比如手動連接PPTP(這樣可以自定義許多參數,同時又可以解決 某些dd-wrt中自帶的PPTP配置檔案option.vpn存在bug等問題),以及多個VPN隨機連接(或根據ping值取最小的連接)或同時在後 台連接多個VPN後根據時時速度自動切換等功能,以及研究對P2P的支持。autoddvpn項目的wiki上說「autoddvpn的目標不是發揮ddwrt的功能極致,而是讓家家戶戶都可以直接裝上就可以穩定而且長時間翻牆,就像裝衛星電視一樣容易」,而我們則是盡可能地發揮ddwrt、Tomato和OpenWrt的 功能極致,讓路由器有更多的方式、更多的功能智能翻牆,雖然這樣可能設置上只針對一些專業用戶和愛折騰的用戶,但是我們仍然有Optware翻牆U盤計劃 (見下面「一些計劃中的功能」),將來把我們開發好、設置好的程式和腳本製成opt包,一般的用戶只需刷入U盤即可使用,也能實現「像裝衛星電視一樣容 易」。 還有就是autoddvpn只支持dd-wrt路由器,對tomato兼容性不好,對OpenWRT完全不支持,因此我的項目計劃支持dd-wrt、tomato和OpenWRT三種系統的路由,並為每種路由分別寫腳本。 另外,我還會在本項目的wiki發表一些關於翻牆和GFW的研究。 現在,請根據您的路由類型選擇: DD-WRT Tomato (coming soon) OpenWRT (coming soon) 一些開發中的功能 手動連接PPTP VPN L2TP VPN支持 一些計劃中的功能 多個PPTP VPN連接 SSTP和IPsec協議的支持:與L2TP不同的是,dd-wrt本身似乎並不帶有SSTP客戶端程式和IPsec客戶端程式,因此可能要通過jffs或optware手動安裝相應的客戶端(研究發現dd-wrt帶有vpnc程式可用於IPsec連接) Optware翻牆U盤:許多計劃中的功能即使按照我詳細的教程操作依然配置起來很麻煩,因此想到將翻牆工具集成到Optware的U盤中,打包成tar文件,再配合上一鍵設置腳本,使用者只需下載包後刷入U盤中,並將U盤插到帶USB口的路由上,再經過非常簡單的幾步設置,就能實現智能翻牆,真正的一勞永逸。 一些關於翻牆的研究 GFW的DNS污染問題

»» 查看原文全文 »»

» 除声明转载均为原创,原文标题:autoddvpn:路由器級別智能翻牆解決方案 - 美博园翻墙

Tuesday, January 15, 2013

美博园翻墙:“OpenVPN配置静态共享密钥,应对防火长城(GFW)封锁”

美博园翻墙:“OpenVPN配置静态共享密钥,应对防火长城(GFW)封锁”


OpenVPN配置静态共享密钥,应对防火长城(GFW)封锁

Posted: 10 Jan 2013 01:42 AM PST

http://feeds.feedburner.com/allinfa/1. 背景: 防火长城在十八大期间前所未有的升级,导致大批OpenVPN不能访问了。 2. 原因分析: OpenVPN象几乎所有的安全通信协议的缺陷一样,最开始的密钥交换阶段所有交互流量都是明文的。防火长城或许发现了其中的一些特征(signature,比如某些字符串),这些特征是其他应用协议中不会出现的。然后,GFW或许象当年封锁tor 一样 [2],模仿OpenVPN客户端去连接 服务器。尽管不太可能成功连接,但是可以确认服务器是否是OpenVPN。然后的动作可以想象:TCP RST 或者封地址,甚者有可能有串联的设备动态丢包了。 3. 应对方法(之一): 既然密钥交换过程容易被发现,我们就不做密钥交换了吧,使用预先商定的密钥。尽管这对于安全性要求高的应用有风险,但是对于我们小老百姓翻墙,已经足够了。 这种方法还有一个限制:只能有一个服务器、一个客户端。好在客户端(一般在国内)可以配置成PPTP VPN服务器,于是,用这种方法最好是这样的结构: OpenVPN Server OpenVPN Client | PPTP Server Multiple PPTP Clients 4. 操作步骤 参照[1],这里只介绍OpenVPN客户和服务器之间的共享密钥配置,具体操作如下: 1) 在服务器上运行下面的命令,生成共享密钥(2048 bit ,足够了吧?) openvpn --genkey --secret static.key 把生成的static.key 传到客户端 openvpn 配置文件所在目录下,如/etc/openvpn 2)服务器端的配置: dev tun ifconfig 10.8.0.1 10.8.0.2 secret static.key proto udp # 选一个随机的端口,至少不要用缺省的1194 port 35287 [...]

»» 查看原文全文 »»

» 除声明转载均为原创,原文标题:OpenVPN配置静态共享密钥,应对防火长城(GFW)封锁 - 美博园翻墙