用Linux建立肉鸡来做加密代理!
添加时间: 2007-3-22 3:00:37 作者: 阅读次数:120 来源:
一、背景
对VPN的分类什么的有个大概的了解,知道是个大概怎么回事,如果不大清楚的朋友可以google一下。本文就不对这些内容进行具体的介绍了。
目标系统:Red Hat Linux 9默认安装。
二、需求
说白了就是用肉鸡做加密代理。
1:对系统尽可能小的改变,包括添加文件和系统日志,因为我们用的是肉鸡。
2:是client-->server的模式,而不是net-net的模式,浏览网页而已。
3:无论server还是client都要配置方便,简单好用,我们要的是快速。
三、选型
1:*swan
A:ipsec vpn的代表,默认端口tcp/udp 500。
B:优点:加密强,对网络游戏什么的支持好(我们用不上)。
C:缺点:部署麻烦,配置麻烦,关键是他的nat-t,就是nat穿越功能需要打内核补丁,重新编译内核才行,这事在肉鸡做不得。大概的说说swan系列吧,最开始是freeswan,然后大概在2004年停止开发,衍生出openswan和strongswan两个分支,openswan发展的不错,strongswan连个rpm包都没。swan系列分两块,一个是用户空间程序,一个是内核空间程序。内核空间的包括模块和补丁,大概就那么回事。就是说,要做到nat-t,就需要用户空间程序,lkm和内核补丁,需要重新编译内核,这个我们在肉鸡没法做。还有他要用root运行。
2:pptpd
A:pptp vpn的典型代表,默认端口tcp 1723。
B:优点:Windows带了他的client,安装也方便,就几个rpm,配置也不难。
C:缺点:一拨进去他就会改缺省网关,很烦,要么拨进去自己route add/delete几下改改,一直别断开,看个网站犯得着那么麻烦吗。
3:openvpn
A:SSL VPN的典型代表,默认端口tcp/udp 1194。
B:优点:简单好装,一个rpm搞定,要压缩的话多一个lzo的rpm包。配置也是简单的很,就生成一个static.key,还可以chroot,并且可以以nobody运行,肉鸡的安全也是很重要的,保管不好就被抢了,不过chroot就没必要了,有兴趣的朋友可以自己搞搞。一下把要的东西都丢到一个地方然后加上配置文件就差不多了,再改改启动脚本。
还有就是拨进VPN之后,他不会改你默认网关,免去了折腾的烦恼,我们可以把sf.net的地址加到静态路由去。
在server那边只需要开一个udp or tcp端口就可以了,不怎么需要去动别人的iptables。
C:缺点:除了要额外装一个client之外,相对我们的需求来说基本没什么缺点了。
B:启动客户端
“开始”--“程序”--“openvpn”--“OpenVPN GUI”,连接服务端,点右下角红色的图标--connect。图标变绿,就是成功连接并分配到地址了,注意让你的防火墙通过。如果没变绿色,从那个图标那view log,如果发现不到问题,就把client的配置文件的verb设置为9,重新连接,再看日志,再google。
C:检查连接:
在client里看到有这么个信息
|
连接没有问题,这个时候就根据个人的喜好,是改默认网关还是只根据目的地址route add一下了,如果肉鸡速度快的话改默认网关吧。
注意,是vpn server的tun0的地址。 |
如果DNS服务器不在内网的话,自己再route add一次DNS的地址就OK,如果想长期生效,可在route add语句最后加-p参数。
D:服务端打开转发
做个nat,但注意一下eth0需要是可以去外网的接口,否则等会数据走不出去,如果肉鸡是单接口的话就不需要担心。
POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE |
再看看转发开了没
|
我们把他打开
|
5:找错
VPN一般出问题就只有三个地方,client的防火墙,server的防火墙,和转发开关是否打开,所以我们在服务端抓抓包就完全可以找到出问题的地方。ipsec pptp都可以这么找错。
A:在server的tun0口抓一切包,以检测client-->server是否连通,当然,一定是连通的,否则那图标就不会是绿色了。
|
B:在server的eth0口抓目标地址包,以检测转发是否有问题。
|
C:
这个时候我们telnet一下baoz.net看看
|
两边都看到有包就对了。如果有一边看不到包,就自己折腾一下好了。看看一路过来是不是都没搞错。
上一篇文章: DHCP、网关和DNS地址的捆绑技巧 下一篇文章: 有线无线 学生宿舍组网怎样最划算
相关文章:

