<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>XinHuang &#187; VPN</title>
	<atom:link href="http://www.xhuang.net/category/vpn/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.xhuang.net</link>
	<description>在路上</description>
	<lastBuildDate>Sun, 13 Jun 2010 12:12:56 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>install openvpn support for milestone</title>
		<link>http://www.xhuang.net/201003/linux/install-openvpn-support-for-milestone/</link>
		<comments>http://www.xhuang.net/201003/linux/install-openvpn-support-for-milestone/#comments</comments>
		<pubDate>Fri, 26 Mar 2010 11:46:59 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Network]]></category>
		<category><![CDATA[VPN]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[busybox]]></category>
		<category><![CDATA[milestone]]></category>
		<category><![CDATA[openvpn]]></category>
		<category><![CDATA[tun]]></category>

		<guid isPermaLink="false">http://www.xhuang.net/?p=152</guid>
		<description><![CDATA[杯具开始了：
milestone不支持mppe128位加密，pptpvpn无法连接，只能选择不加密，接着升级android2.1后选择不加密也无法连接，杯具啊
没办法，只能选择openvpn，接着，真正的杯具开始了
1.必须先获取root权限，详细信息参考http://www.androider.hk/?p=77
2.在market下载openvpn Installer，自动在/system/xbin/下安装openvpn
3.安装TunnelDroid，发现不支持tun，于是用adb把下好的tun.ko拷贝进/system/lib/modules/(先要remount /system,使可写)，但是先下的一个tun.ko无法load，应该继续找，好不容易才找到tun.ko
4.继续运行，继续错误，/system/xbin/bb/ifconfig不存在，果然，需要安装busybox,参考http://www.droidcn.com/viewthread.php?tid=1434
5.大功告成！
]]></description>
			<content:encoded><![CDATA[<p>杯具开始了：</p>
<p>milestone不支持mppe128位加密，pptpvpn无法连接，只能选择不加密，接着升级android2.1后选择不加密也无法连接，杯具啊</p>
<p>没办法，只能选择openvpn，接着，真正的杯具开始了</p>
<p>1.必须先获取root权限，详细信息参考<a href="http://www.androider.hk/?p=77">http://www.androider.hk/?p=77</a></p>
<p>2.在market下载openvpn Installer，自动在/system/xbin/下安装openvpn</p>
<p>3.安装TunnelDroid，发现不支持tun，于是用adb把下好的tun.ko拷贝进/system/lib/modules/(先要remount /system,使可写)，但是先下的一个tun.ko无法load，应该继续找，好不容易才找到<a href="http://www.xhuang.net/wp-content/uploads/tun.zip" target="_blank">tun.ko</a></p>
<p>4.继续运行，继续错误，/system/xbin/bb/ifconfig不存在，果然，需要安装busybox,参考<a href="http://www.droidcn.com/viewthread.php?tid=1434  " target="_blank">http://www.droidcn.com/viewthread.php?tid=1434</a></p>
<p>5.大功告成！</p>
]]></content:encoded>
			<wfw:commentRss>http://www.xhuang.net/201003/linux/install-openvpn-support-for-milestone/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>ddwrt通过vpn反击域名劫持</title>
		<link>http://www.xhuang.net/201003/linux/vpn_for_domain_hijacking_by_ddwrt/</link>
		<comments>http://www.xhuang.net/201003/linux/vpn_for_domain_hijacking_by_ddwrt/#comments</comments>
		<pubDate>Tue, 02 Mar 2010 10:28:47 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Network]]></category>
		<category><![CDATA[VPN]]></category>
		<category><![CDATA[ddwrt]]></category>
		<category><![CDATA[域名劫持]]></category>

		<guid isPermaLink="false">http://www.xhuang.net/?p=128</guid>
		<description><![CDATA[基于大家都知道的原因，某党对一些特定域名进行了劫持，使得此区域内的人民无法访问这些网站。因为dns解析本身不是一个加密的传输过程，所以劫持域名是很easy的。这样一来，原本可以通过proxy，ssh tunnel等方式访问的这些网站由于无法获得正确的ip地址而无法访问。怎么办？
既然dns解析这个过程是不加密的，容易被劫持，那我们就把它变成加密的。那我们必须用vpn保证dns解析的传输在经过某党的GFW的时候是一个加密的数据，让它没辙。
我家用的路由器刷成了ddwrt，这样一来我就可以配置ddwrt，让它自动拨号到某一墙外的vpn server，然后通过指定路由表来保证对dns的访问是通过vpn的。

我们的dns server选用8.8.8.8
在ddwrt输入：ip route add 8.8.8.8 via 10.20.0.1（vpn网关）
输入netstat -rn可以看到如下路由表
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
8.8.8.8         10.20.0.1       255.255.255.255 UGH       0 0          0 ppp1
root@DD-WRT:~# traceroute 8.8.8.8
traceroute to 8.8.8.8 (8.8.8.8), 30 [...]]]></description>
			<content:encoded><![CDATA[<p>基于大家都知道的原因，某党对一些特定域名进行了劫持，使得此区域内的人民无法访问这些网站。因为dns解析本身不是一个加密的传输过程，所以劫持域名是很easy的。这样一来，原本可以通过proxy，ssh tunnel等方式访问的这些网站由于无法获得正确的ip地址而无法访问。怎么办？</p>
<p>既然dns解析这个过程是不加密的，容易被劫持，那我们就把它变成加密的。那我们必须用vpn保证dns解析的传输在经过某党的GFW的时候是一个加密的数据，让它没辙。</p>
<p>我家用的路由器刷成了ddwrt，这样一来我就可以配置ddwrt，让它自动拨号到某一墙外的vpn server，然后通过指定路由表来保证对dns的访问是通过vpn的。</p>
<p><a href="http://www.xhuang.net/wp-content/uploads/2010/03/ddwrt.png"><img class="alignnone size-medium wp-image-129" title="ddwrt" src="http://www.xhuang.net/wp-content/uploads/2010/03/ddwrt-300x172.png" alt="" width="300" height="172" /></a></p>
<p>我们的dns server选用8.8.8.8</p>
<p>在ddwrt输入：ip route add 8.8.8.8 via 10.20.0.1（vpn网关）</p>
<p>输入netstat -rn可以看到如下路由表</p>
<p>Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface</p>
<p>8.8.8.8         10.20.0.1       255.255.255.255 UGH       0 0          0 ppp1</p>
<p>root@DD-WRT:~# traceroute 8.8.8.8</p>
<p>traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 38 byte packets</p>
<p>1  10.20.0.1 (10.20.0.1)  268.120 ms  267.180 ms  268.262 ms</p>
<p>对于8.8.8.8的访问都从远程vpn网关走了</p>
]]></content:encoded>
			<wfw:commentRss>http://www.xhuang.net/201003/linux/vpn_for_domain_hijacking_by_ddwrt/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>配置 Debian Server &#8211; openvpn with mysql</title>
		<link>http://www.xhuang.net/201002/linux/%e9%85%8d%e7%bd%ae-debian-server-openvpn-with-mysql/</link>
		<comments>http://www.xhuang.net/201002/linux/%e9%85%8d%e7%bd%ae-debian-server-openvpn-with-mysql/#comments</comments>
		<pubDate>Wed, 24 Feb 2010 15:11:29 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Network]]></category>
		<category><![CDATA[VPN]]></category>

		<guid isPermaLink="false">http://www.xhuang.net/?p=122</guid>
		<description><![CDATA[apt-get install openvpn
openvpn常规配置参加其它
mysql -u root -p
create database vpn;
GRANT ALL ON vpn.* TO vpn@localhost IDENTIFIED BY &#8216;vpn123&#8242;;
flush privileges;
use vpn;
CREATE TABLE vpnuser ( name char(20) NOT NULL, password char(128) default NULL, active int(10) NOT NULL DEFAULT 1, PRIMARY KEY (name) );
insert into vpnuser (name,password) values(&#8216;xhuang&#8217;,password(&#8216;xhuang&#8217;));
vi /etc/pam.d/openvpn
auth sufficient pam_mysql.so user=vpn passwd=vpn123 host=localhost db=vpn \
table=vpnuser usercolumn=name passwdcolumn=password \
where=active=1 sqllog=0 [...]]]></description>
			<content:encoded><![CDATA[<p>apt-get install openvpn</p>
<p>openvpn常规配置参加其它</p>
<p>mysql -u root -p</p>
<p>create database vpn;</p>
<p>GRANT ALL ON vpn.* TO vpn@localhost IDENTIFIED BY &#8216;vpn123&#8242;;</p>
<p>flush privileges;</p>
<p>use vpn;</p>
<p>CREATE TABLE vpnuser ( name char(20) NOT NULL, password char(128) default NULL, active int(10) NOT NULL DEFAULT 1, PRIMARY KEY (name) );</p>
<p>insert into vpnuser (name,password) values(&#8216;xhuang&#8217;,password(&#8216;xhuang&#8217;));</p>
<p>vi /etc/pam.d/openvpn</p>
<p>auth sufficient pam_mysql.so user=vpn passwd=vpn123 host=localhost db=vpn \<br />
table=vpnuser usercolumn=name passwdcolumn=password \<br />
where=active=1 sqllog=0 crypt=2<br />
account required pam_mysql.so user=vpn passwd=vpn123 host=localhost db=vpn \<br />
table=vpnuser usercolumn=name passwdcolumn=password \<br />
where=active=1 sqllog=0 crypt=2</p>
<p>需要自己编译openvpn-auth-pam.so</p>
<p>下载openvpn 2.0.9源码:wget http://openvpn.net/release/openvpn-2.0.9.tar.gz</p>
<p>apt-get install make gcc libpam0g-dev</p>
<p>cd openvpn-2.0.9/plugin/auth-pam</p>
<p>make</p>
<p>cp openvpn-auth-pam.so /etc/openvpn/</p>
<p>chmod 775 /etc/openvpn/openvpn-auth-pam.so</p>
<p>vi /etc/openvpn/openvpn.conf</p>
<div id="_mcePaste">port 443</div>
<div id="_mcePaste">proto udp</div>
<div id="_mcePaste">dev tun</div>
<div id="_mcePaste">ca ca.crt</div>
<div id="_mcePaste">cert server.crt</div>
<div id="_mcePaste">key server.key</div>
<div id="_mcePaste">dh dh1024.pem</div>
<div id="_mcePaste">server 10.8.0.0 255.255.0.0</div>
<div id="_mcePaste">push &#8220;redirect-gateway def1&#8243;</div>
<div id="_mcePaste">push &#8220;dhcp-option DNS 208.69.228.30&#8243;</div>
<div id="_mcePaste">push &#8220;dhcp-option DNS 4.2.2.1&#8243;</div>
<div id="_mcePaste">ifconfig-pool-persist ipp.txt</div>
<div id="_mcePaste">keepalive 10 120</div>
<div id="_mcePaste">tls-auth ta.key 0</div>
<div id="_mcePaste">plugin ./openvpn-auth-pam.so openvpn</div>
<div id="_mcePaste">client-cert-not-required</div>
<div id="_mcePaste">username-as-common-name</div>
<div id="_mcePaste">comp-lzo</div>
<div id="_mcePaste">max-clients 20</div>
<div id="_mcePaste">user nobody</div>
<div id="_mcePaste">group nobody</div>
<div id="_mcePaste">persist-key</div>
<div id="_mcePaste">persist-tun</div>
<div id="_mcePaste">status openvpn-status.log</div>
<div id="_mcePaste">verb 4</div>
<div id="_mcePaste"></div>
<div><span style="font-family: 'Heiti SC Light', 'Times New Roman', 'Bitstream Charter', Times, serif; color: #444444;"><span style="font-size: medium;"><span style="font-family: Georgia, 'Times New Roman', 'Bitstream Charter', Times, serif; color: #000000; font-size: small;"><span>client:</span></span></span></span></div>
<div><span style="font-family: 'Heiti SC Light', 'Times New Roman', 'Bitstream Charter', Times, serif; color: #444444;"><span style="font-size: medium;"><span style="font-family: Georgia, 'Times New Roman', 'Bitstream Charter', Times, serif; color: #000000; font-size: small;"><span></p>
<div>client</div>
<div>dev tun</div>
<div>proto udp</div>
<div>remote ip 443</div>
<div>remote-random</div>
<div>resolv-retry infinite</div>
<div>nobind</div>
<div>persist-key</div>
<div>persist-tun</div>
<div>ca pca.crt</div>
<div>auth-user-pass</div>
<div>ns-cert-type server</div>
<div>tls-auth pta.key 1</div>
<div>comp-lzo</div>
<div>verb 4</div>
<p></span></span></span></span></div>
]]></content:encoded>
			<wfw:commentRss>http://www.xhuang.net/201002/linux/%e9%85%8d%e7%bd%ae-debian-server-openvpn-with-mysql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>配置 Debian Server &#8211; PPTP VPN</title>
		<link>http://www.xhuang.net/201002/linux/%e9%85%8d%e7%bd%ae-debian-server-pptp-vpn/</link>
		<comments>http://www.xhuang.net/201002/linux/%e9%85%8d%e7%bd%ae-debian-server-pptp-vpn/#comments</comments>
		<pubDate>Wed, 24 Feb 2010 14:17:17 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Network]]></category>
		<category><![CDATA[VPN]]></category>

		<guid isPermaLink="false">http://www.xhuang.net/?p=118</guid>
		<description><![CDATA[apt-get install pptpd
vi /etc/pptpd.conf
localip 10.20.0.1
remoteip 10.20.0.100-200
vi /etc/ppp/pptpd-options
ms-dns 208.69.228.30
ms-dns 4.2.2.1
vi /etc/ppp/chap-secrets
username pptpd password *
vi /etc/sysctl.conf
net.ipv4.ip_forward=1
sysctl -p /etc/sysctl.conf
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
/etc/init.d/pptpd restart
]]></description>
			<content:encoded><![CDATA[<p>apt-get install pptpd</p>
<p>vi /etc/pptpd.conf</p>
<p>localip 10.20.0.1<br />
remoteip 10.20.0.100-200</p>
<p>vi /etc/ppp/pptpd-options</p>
<div id="_mcePaste">ms-dns 208.69.228.30</div>
<div id="_mcePaste">ms-dns 4.2.2.1</div>
<p>vi /etc/ppp/chap-secrets</p>
<p>username pptpd password *</p>
<p>vi /etc/sysctl.conf</p>
<p>net.ipv4.ip_forward=1</p>
<p>sysctl -p /etc/sysctl.conf</p>
<p>iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE</p>
<p>/etc/init.d/pptpd restart</p>
]]></content:encoded>
			<wfw:commentRss>http://www.xhuang.net/201002/linux/%e9%85%8d%e7%bd%ae-debian-server-pptp-vpn/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
