分类: 电脑技术
作者: admin

AutoVPN--最简单的VPN服务器配置方法

目的:

  在VPS上配置VPN,并使用freeradius进行用户管理。

基础环境:
  1.  美国VPS-VL256型(128M的内存有点拮据,建议使用256M内存的,机房建议用硅谷数据中心的。)
  2. CentOS 5.3(Final) x86(本测试基于32位CentOS 5.3 Final)
配置步骤:

1.下载 AutoVPN-1.0.0

  这是我无意中发现的一个自动配置方案,由 badb0y  大侠提供,发布页位于Google Code,>>点此进 入<<  。

2.将AutoVPN-1.0.0上传至VPS

  这里的基础条件是您拥有一台自己的VPS,最方便的方法是把这个安装包下载下来以后,上传到一个网站上去,然后在登录VPS的 ssh以后,使用wget获取。当然也可以选择比较麻烦的方法,就是先在VPS上配置个FTP。(其实也可以使用SCP在本地UPLOAD,不过我没试 过,在此就不谈了。)

3.解压AutoVPN-1.0.0.tar.gz

  在配置过程中,我把AutoVPN-1.0.0.tar.gz放在我的一个网站上面,然后WGET,保存于/tmp目录。具体操作如下:

1 2 3 cd / tmp wget http:// zhaiweb.com/ AutoVPN-1.0.0.tar.gz tar -zxvf AutoVPN-1.0.0.tar.gz

4.打开autovpn文件

  在第三步,我在/tmp目录解压了AutoVPN-1.0.0.tar.gz,接着,/tmp目录将会出现AutoVPN-1.0.0这个目 录,我们进入这个目录,并且编辑autovpn这个文件。具体操作如下:

1 2 cd AutoVPN-1.0.0 vim autovpn

 

5.为autovpn提供执行权限

1 chmod +x autovpn

 

6.安装需要的库和组件

  RasHost为我们安装的Centos是最简的版本,很纯净,但是AutoVPN安装过程需要编译环境,同时,我们要编译的程序,又需要其他 的组件配合,因此我们必须给系统打个补丁。具体操作如下:

  首先,执行:

yum install patch make gcc gcc-c++ libtool libtool-libs autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-serv

其次,在安装完上述组件后,执行:

1 yum install ppp iptables

  此时最好reboot一下(由于我用的是128M的,内存十分拮据,在进行上述操作后,”free -m”一看,内存剩下10M),reboot完毕进入第8步。

 

7.执行autovpn

1 2 cd / tmp/ AutoVPN-1.0.0 ./ autovpn

  此时,脚本会提示你输入”LocalIP”,这个LocalIP就是你VPS的IP地址,跟本文第5步提到的一样,必须完全一样。

  输入完”LocalIP”以后,要输入内网网段,这是分配给连入VPN的每个用户的。如192.168.0.100-200,这里要跟本文第5 步相对应。

  输入完毕,提示“Press Any Key to Start”,激动人心的时刻到来,直接回车,安装开始!

 

8.安装完毕,保存iptables设置

1 service iptables save

 

9.重启VPS

  重启后,执行/start.sh脚本:

1 ./start.sh

  此时可以使用默认的admin/admin123账户密码登入你的VPN了!

10.上传AutoVPN附带的WEB管理客户端到任意支持PHP的主机

  AutoVPN附带了一个WEB管理客户端,可以在线添加、删除用户,或者修改密码等,详细情况请参考AutoVPN压缩包内的帮助文件。

 

 

vpn后上不了网,可以用下面的脚本
===========firewall.sh==================
/sbin/iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j MASQUERADE
/sbin/iptables -P FORWARD ACCEPT
/sbin/iptables -F FORWARD
====================================

10.8.0.0/24换成VPN所在的网段!