网络实验环境:
双网卡AS5.0 VPN服务器:eth0=192.168.10.1 eth1=192.168.20.1,eth0内网卡,虚拟网络vmnet2,eth1外网卡,虚拟网络桥接。
内网服务器IP地址:192.168.10.1
外网PC机,做VPN客户端,IP地址:192.168.20.2
一、软件包
- dkms-2.0.17.5-1.noarch.rpm
- kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm
 MPPE(Microsoft Point to Point Encryption,微软点对点加密)
- ppp-2.4.4-9.0.rhel5.i386.rpm(AS5.0光盘默认就有)
 PPP(Point-to-Point Protocol,点到点协议)
- pptpd-1.3.4-1.rhel5.1.i386.rpm
软件包下载地址
| 1 | wget http://poptop.sourceforge.net/yum/stable/packages/dkms-2.0.17.5-1.noarch.rpm | 
安装
| 1 | rpm -ivh dkms-2.0.17.5-1.noarch.rpm | 
二、安装软件包
安装时注意顺序
三、编辑pptpd主配置文件
- #vim /etc/pptpd.conf
localip 后面要改为你服务器的外网IP地址:192.168.20.1,也就是VPN客户端拨号的IP地址。
remoteip 后面改为你分配给VPN用户的IP段….比如192.168.10.100-200
- #vi /etc/ppp/options.pptpd修改内容如下:
 一般只需修改ms-dns,分配给VPN客户端的DNS服务器IP地址- 1 
 2
 3
 4
 5
 6
 7
 8- name pptpd 
 refuse-pap
 refuse-chap
 refuse-mschap
 require-mschap-v2
 require-mppe-128
 ms-dns 202.101.224.68
 proxyarp
- 重启pptpd服务器 
四、增加VPN用户和密码,会立即生效的。
在/etc/ppp/chap-secrets 增加两行分别对应如下:
| 1 | # client server secret IP addresses | 
上面第二行代码的四项内容分别对应第一行中的四项。“test@gd.cn” 是Client端的VPN用户名;“server”对应的是VPN服务器的 名字,该名字必须和/etc/ppp/options.pptpd文件中指明的一样,或者设置成“”号来表示自动识别服务器;“secret”对应的是 登录密码;“IP addresses”对应的是可以拨入的客户端IP地址,如果不需要做特别限制,可以将其设置为“”号。
五、开启路由转发
#echo 1 > /proc/sys/net/ipv4/ip_forward
可以将这条命令放到文件 /etc/rc.d/rc.local 里面,以实现每次开机时自动运行该命令。
六、开启linux 防火墙
将Linux服务器的1723端口和47端口打开,并打开GRE协议。
| 1 | #/sbin/iptables -A INPUT -p tcp –dport 1723 -j ACCEPT | 
七、用Iptables做NAT服务
我们还需要设置NAT   IP转发.否则用户连接上服务器后.是不能访问外网的内容的.
设置方法也很简单的.
复制内容到剪贴板
代码:
| 1 | iptables -t nat -F | 
上面的192.168.10.0替换成你要分配给客户用的VPN 内网IP段
999.999.999.999 替换成你的VPN服务器IP [与上面PPTPD.CONF的LOCALIP一样]
最后我们打开LINUX服务器的IP转发功能就大功告成了