一、***介绍

   1、概念

  ***(Virtual Private Network),即虚拟专用网或虚拟私用网,是指利用开放的公共网络资源建立私有传输通路,将远程的分支机构,商业伙伴,移动办公人员等连接起来,并且提供安全的端到端的数据通信的一种技术。

 2、***技术介绍

  2.1 PPTP通道技术
PPTP(Point-to-Point Tunneling Protocol)通道技术由于其内容易设定的特性,而且是微软拨接网络(Dial-up Networking)第一个支持的***协议,因此广泛采用。PPTP协议的规格定义在RFC2637(http://tools.ietf.org/html/rfc2637),但并未成为IETF的标准。
PPTP的运作方式是将网络协议资料段封装(encapsulated)在IP封包中,然后透过网际网络传送。经过包装后的封包会被网络上任何路由器或机器视为一般IP封包传送,直到抵达通道的另一端之后,才将传送端封包上的IP表头取下。此种IP封装的好处是可以让许多不同协议的资料能够经过网络媒介的传送。
2.2 SSL***技术
相对于pptp通道技术提供的***服务,ssl ***的运作是在网络的应用层上进行,是一种利用Https通讯协议的***架构。由于现今的电脑作业系统大多支持http及https(SSL-based HTTP)通讯协议的网页浏览器(web browser),因此对于使用者而言,ssl***是一种较为简单方便的***使用方式。ssl(Secure Socket Layer)安全协议是网页服务器和浏览器之间以加解密的方式沟通的安全技术标准,这个沟通过程,确保了所有在服务器浏览器之间通过的资料的私密性与完整性。SSL标准的规格可参考IETF的RFC2246(http://www.ietf.org/rfc/rfc2246.txt)
SSL ***的运作方式由远端的使用者连线到ssl***闸道,进行相关验证与认证(Certificate\SecurID\LDAP\Radius\NTLM...)之后,再经由ssl***闸道。作为远端使用者与后端网络应用的中转站,进行安全的连接,提供远端使用者成功存取内部网络资源。

二、配置过程(以pptp技术为实例,环境为CentOS5.4(32-bit))

1、使用到如下安装包

pptpd-1.3.4-1.rhel5.1.i386.rpm

 dkms-2.0.17.5-1.noarch.rpm

kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm

2、安装

rpm -ivh pptpd-1.3.4-1.rhel5.1.i386.rpm

rpm -ivh  dkms-2.0.17.5-1.noarch.rpm

rpm -ivh  kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm

modprobe ppp-compress-18 && echo sucess

通过上面这条命令验证mppe补丁是否安装,sucess表示安装

lsmod|more检测一下内核MPPE补丁是否安装成功

ppp_mppe               10437  0
ppp_generic            30037  1 ppp_mppe
slhc                   10433  1 ppp_generic

然后用strings '/usr/sbin/pptpd'|grep -i mppe|wc --lines查看是否支持mppe

只要输出大于30说明支持。

3、修改配置文件

  需要修改的配置文件分别是:/etc/pptpd.conf 、/etc/ppp/options.pptpd、/etc/ppp/chap-secrets

  3.1 首先修改/etc/pptpd.conf

localip 192.168.1.241
remoteip 192.168.1.20-238,192.168.1.30

# or
#localip 192.168.0.234-238,192.168.0.245
#remoteip 192.168.1.234-238,192.168.1.245
ppp /usr/sbin/pppd
option /etc/ppp/options.pptpd
localip代表本地的地址,也就是客户端需要来链接的***服务器地址,(这里使用内网地址,需要在路由做个映射。)

remoteip表示给客户端分配地址的范围

    3.2  修改/etc/ppp/options.pptpd

     name ***server  (默认为pptpd)

   refuse-pap          #拒绝pap身份验证

   refuse-chap          #拒绝chap身份验证

   refuse-mschap       #拒绝mschap身份验证

   require-mschap-v2 #采用 mschap-v2身份验证方式时可以同时使用MPPE加密

   require-mppe-128  #使用128-bit MPPE加密

    ms-dns 202.106.0.20  #DNS服务器地址

   3.3  修改/etc/ppp/chap-secrets

     格式如下

   # client        server  secret                  IP addresses
    test            ***server test                 192.168.1.30

从左开始分别是:用户名  ***服务器主机名    密码   分配到ip地址

 4、启动服务

   service pptpd start

   ps aux | grep pptpd 检测服务是否启动

   netstat -pant | grep pptpd  查看端口是否监听

至此服务端可以连接了

5、nat转发

  连接上服务器后,访问其他网络,需要做nat转发

修改/etc/sysctl.conf这个文件中的net.ipv4.ip_forward = 1

sysctl -p 生效

   iptables -t nat -F
    iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j SNAT –to 999.999.999.999

至此***服务器配置完毕