Chinaunix首页 | 论坛 | 博客
  • 博客访问: 454789
  • 博文数量: 481
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 1040
  • 用 户 组: 普通用户
  • 注册时间: 2013-01-06 14:09
文章分类

全部博文(481)

文章存档

2013年(483)

我的朋友

分类: LINUX

2013-04-17 15:44:56

原文地址:PPTP 服务器配置 作者:飞鸿无痕

PPTP 服务器配置

一、实验环境:VMware workstation rhel4一台 IP10.167.27.29

                windows xp 主机一台 IP10.167.27.207

 

二、需要安装的软件包

dkms-2.0.10-1.noarch.rpm                动态内核模块支持的RPM安装包

kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm   MPPE加密协议的内核补丁的RPM安装包

centos 5.5已经在内核中添加了pptp的支持,因此新的系统上面两个包可以不安装

ppp-2.4.3-5.rhel4.i386.rpm                升级内置PPP版本,以支持MPPE加密协议

pptpd-1.3.4.tar.gz                        PPTP点对点隧道协议的安装包

 

三、开始安装:

1、安装动态内核模块支持的RPM安装包

rpm –ivh dkms-2.0.10-1.noarch.rpm

2、安装MPPE加密协议的内核补丁的RPM安装包

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

3、升级内置PPP版本,以支持MPPE加密协议

   rpm –Uvh ppp-2.4.3-5.rhel4.i386.rpm (因为我的虚机安装过了低版本的ppp所以升级安装)

4、安装PPTP点对点隧道协议的安装包

    如果ppp是2.4.4版本的话,需要更改plugins/patchlevel.h 文件,见后面的问题列表!

  [root@zhang pptp]# tar xzvf pptpd-1.3.4.tar.gz

  [root@zhang pptp]# cd pptpd-1.3.4

  [root@zhang pptpd-1.3.4]# ./configure

  [root@zhang pptpd-1.3.4]# make && make install

 

四、检查支持软件是否安装成功

1检查内核MPPE补丁是否安装成功:

modprobe ppp-compress-18 && echo ok  
 
如果出现OK则说明MPPE补丁已经安装成功,例如:

[root@zhang pptpd-1.3.4]# modprobe ppp-compress-18 && echo ok

ok

2检查PPP是否支持MPPE

strings '/usr/sbin/pppd' |grep -i mppe | wc --lines
如果以上命令输出为“0”则表示不支持;输出为“30”或更大的数字就表示支持,例如:

[root@zhang pptpd-1.3.4]# strings '/usr/sbin/pppd' |grep -i mppe | wc --lines

46

[root@zhang pptpd-1.3.4]#

 

五、服务器的配置

1、将pptpd-1.3.4/samples/下的文件
pptpd.conf
拷贝至/etc    
chap-secrets
拷贝至/etc/ppp
options.pptpd
拷贝至/etc/ppp

[root@zhang samples]# cp pptpd.conf /etc/

[root@zhang samples]# cp chap-secrets /etc/ppp/

[root@zhang samples]# cp options.pptpd /etc/ppp/

 

2、编辑/etc/pptpd.conf文件,添加两行内容:

[root@zhang ~]# vi /etc/pptpd.conf

localip 192.168.0.254                    ------设置本地的IP

remoteip 192.168.0.234-238,192.168.0.245   ------制定分配的远程IP

 

3修改/etc/ppp/options.pptpd文件,修改相应的配置,也可以不修改。我这里为了排除故障方便,添加了日志记录:debugdump

 

4修改/etc/ppp/chap-secrets文件,添加相应的允许访问的用户、密码等

[root@zhang ~]# vi /etc/ppp/chap-secrets      

#username       pptpd   password        *

 "hehe"         pptpd   "123456"      *

其中:

”hehe” Client端的VPN用户名hehe

Pptpd  对应的是VPN服务器的名字,设置*为自动识别,要和pptpd.conf里配置的一致,或者用*代替

123456 是用户的密码

IP addresses”对应的是可以拨入的客户端IP地址,无特别限制的话用*

 

如果需要相互PING通的话还需要打开IP转发

#echo 1 > /proc/sys/net/ipv4/ip_forward 

 

5、启动程序:/usr/local/sbin/pptpd

检验程序是否启动:ps -aux | grep pptpd       ----查看进程

                     netstat -anp | grep 1723   ----查看端口(监听的是1723端口)

 

6、打开防火墙

   /sbin/iptables -A INPUT -p gre -j ACCEPT
   /sbin/iptables -A INPUT -p tcp --dport 1723 -j ACCEPT


7、用windows客户端建立一个vpn连接来连接我们刚搭建的vpn服务器,如果能正确的分配到IP的话就应该是OK的!

 

 

 

 

问题列表:

安装pptpd vpn的时候

出现:

[root@zhang pptp]# modprobe ppp-compress-18

FATAL: Module ppp_mppe not found.

解决方法:

rpm -e kernel_ppp_mppe

yum install kernel-devel

yum install kernel-smp-devel

cd /lib/modules/2.6.9-67.ELsmp

ln -s /usr/src/kernels/2.6.9-67.EL-i686 build

重启服务器,再安装就OK了!




注意:会出现Plugin /usr/lib/pptpd/pptpd-logwtmp.so is for pppd version 2.4.3, this is 2.4.4

解决方法:

1.编辑 /etc/pptpd.conf logwtmp注释掉

2.编辑源码文件

/usr/local/src/software/pptpd-1.3.4/plugins/patchlevel.h

define VERSION “2.4.3″修改为:define VERSION“2.4.4″

后,重新编译。


阅读(230) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~