PPTP IN LINUXlinux
PPTP是微软开发的二层×××协议,虽然L2TP(CISCO与MS合做将自家的L2F与PPTP整合)性能更优越,可是PPTP仍是有市场的。centos
下面简要介绍Linux上PPTP的安装。其实就是几个软件,创建链接时须要配置的东西极少,很简单。
1. 安装软件
dkms-2.0.6-1
#动态内核模块支持,使得驱动的开发和应用简单化,貌似是dell支持的项目
kernel_ppp_mppe-1.0.2-3dkms #MPPE加密协议的内核补丁
ppp-2.4.4-2.el5
#ppp软件包,CentOS 5.6默认安装了
pptpd-1.3.4-1.i386.rpm
#这个软件包基本上是很难找的
PPTP的RPM包网上很难找到,官网上给的也是一个tar包。可是常规安装完成以后/etc/pptpd.conf这个文件没有安装,并且pptpd服务也没有安装,不知道什么缘由。在国外的一个网站搜到一个SRPM包,编译后正常使用,地址以下:
http://files.doylenet.net/linux/yum/centos/5/SRPMS/doylenet/pptpd-1.3.4-1.src.rpm
2. 软件安装
首先安装dkms-2.0.6-1,不然安装kernel_ppp_mppe的时候会有依赖性报错。前面三个软件安装基本上不会出现什么问题,难点就是pptp的安装。固然,若是用srpm包安装的话就很简单了。
rpmbuild --rebuild pptpd-1.3.4-1.src.rpm
而后进入/usr/src对应的系统目录,CentOS就是redhat,而后进入RPMS/i386,刚才编译出的RPM包就放在这个目录下。
[root@www i386]# pwd;ls
/usr/src/redhat/RPMS/i386
pptpd-1.3.4-1.i386.rpm pptpd-debuginfo-1.3.4-1.i386.rpm
而后安装
rpm –ivh pptpd-1.3.4-1.i386.rpm
3. 编辑配置文件 /etc/pptpd.conf和/etc/ppp/chap-secrets
/etc/pptpd.conf定义了创建×××的IP地址,以及×××链接创建后分配给客户端的IP地址
例如:
localip 192.168.1.34
#Linux链接外网创建×××的地址,由于在局域网测试故写的是私有IP
remoteip 192.168.1.100-200 #分配给客户端的IP地址
/etc/ppp/chap-secrets这个文件保存了创建PPP时认证的信息,由于PPTP是基于PPP的。
例如:
[root@www i386]# vi /etc/ppp/chap-secrets
# Secrets for authentication using CHAP
# client
server secret IP addresses
"ila"
pptpd "goodday" "*"
这样有点不安全哈,全是明文的。
4. 打开linux路由器的路由功能
echo “1” >/proc/sys/net/ipv4/ip_forward
这里linux服务器做为×××网关须要路由功能。
5. 编辑防火墙
防火墙打开了的话须要放行流量
iptables –I INPUT –p tcp --dport 1723 –j ACCEPT
iptables –I INPUT –p gre –j ACCEPT
[root@www ~]# iptables -L INPUT
Chain INPUT (policy ACCEPT)
target
prot opt source destination
ACCEPT
gre -- anywhere anywhere
ACCEPT
tcp -- anywhere anywhere tcp dpt:pptp
6. 启动×××服务
这里用的是restart旨在说明重启服务不会终结当前已经创建的×××链接,见Warning:
[root@www i386]# service pptpd restart
Shutting down pptpd:
[ OK ]
Starting pptpd:
[ OK ]
Warning: a pptpd restart does not terminate existing
connections, so new connections may be assigned the same IP
address and cause unexpected results. Use restart-kill to
destroy existing connections during a restart.
上面这段话的意思就是重启服务不会终结已经创建起来的链接并且还会由于再次分配IP形成未知错误,建议使用restart-kill的方式来重启服务。
还能够用/etc/rc.d/init.d/pptpd start或者/etc/init.d/pptpd start的方式来重启(/etc/init.d是一个软连接指向/etc/rc.d/init.d)
7. 在XP上新建链接

输入正确的用户名和密码,这样就O了。安全

8. 开机自启动
ntsysv设置勾选pptpd服务或者chkconfig --level 35 pptpd on