Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->Linux技术 ->服务器相关 ->正文

在Linux下建立VPN服务器来做加密代理

来源: 作者: 时间:2007-04-11 点击: [收藏] [投稿]

一、背景

对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之外,相对我们的需求来说基本没什么缺点了。

四、开始

1:安装client and server程序

[root@RH9 root]# rpm -ivh lzo-1.08-2_2.RHL9.at.i386.rpm
warning: lzo-1.08-2_2.RHL9.at.i386.rpm: V3 DSA signatur    E: NOKEY, key ID 66534c2b 
Preparing...                ########################################### [100%] 
1:lzo                    ########################################### [100%] 
[root@RH9 root]# rpm -ivh openvpn-2.0.7-1.rh9.rf.i386.rpm 
warning: openvpn-2.0.7-1.rh9.rf.i386.rpm: V3 DSA signatur    E: NOKEY, key ID 6b8d79e6 
Preparing...                ########################################### [100%] 
1:openvpn                ########################################### [100%]

2:服务端配置

[root@RH9 root]# cat > /etc/openvpn/server.conf 
dev tun 
ifconfig 10.8.0.1 10.8.0.2 
secret static.key ; 
user nobody ;
group nobody 
port 3389 ;
comp-lzo ;
;keep alive 
keepalive 10 60 ;
ping-timer-rem 
persist-tun 
persist-key 
;no-log ;
verb 0 
status /dev/null 
log         /dev/null 
log-append  /dev/null

  server配置完毕。

3:客户端配置

安装openvpn-2.0.9-gui-1.0.3-install.exe,然后打开“开始”--“程序”--“openvpn”--“Generate a static OpenVPN key”,这会在C:\Program Files\OpenVPN\config下生成一个叫key.txt的文件,把他重命名为static.key。

然后把这个文件复制到linux肉鸡的/etc/openvpn/static.key去,最后在C:\Program Files\OpenVPN\config目录下创建一个叫client.ovpn的文件,内容如下



 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:基于Linux操作系统实现的传真服务器   下一篇:在Unix服务器上设置Oracle全文检索

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章
remote 肉鸡的IP 
dev tun 
ifconfig 10.8.0.2 10.8.0.1 
secret static.key 
port 3389 
verb 3 
comp-lzo 
keepalive 10 60 
ping-timer-rem 
persist-tun 
persist-key