Linux从入门到精通系列之PPTP

今天我们来说下怎么在linux环境下如何搭建PPTP-×××,PPTP(Point to Point Tunneling Protocol),即点对点隧道协议。该协议是在PPP协议的基础上开发的一种新的增强型安全协议,支持多协议虚拟专用网(×××),可以通过密码验证协议(PAP)、可扩展认证协议(EAP)等方法增强安全性。可以使远程用户通过拨入ISP、通过直接连接Internet或其他网络安全地访问企业网

首先呢我先说下环境,我用的是centos5.8.软件包呢就是yum安装的ppp。而pptpd呢是用wget下载的。

下面我们开始介绍安装步骤

1.安装ppp

yum install -y ppp

2.下载pptpd

wget http://acelnmp.googlecode.com/files/pptpd-1.3.4-1.rhel5.1.i386.rpm (32位系统使用)
wget http://acelnmp.googlecode.com/files/pptpd-1.3.4-1.rhel5.1.x86_64.rpm (64位系统使用)

3.安装pptpd

rpm -ivh pptpd-1.3.4-1.rhel5.1.i386.rpm (32位系统使用)
rpm -ivh pptpd-1.3.4-1.rhel5.1.x86_64.rpm (64位系统使用)

4.配置pptpd

编辑/etc/pptpd.conf文件:
cp /etc/pptpd.conf /etc/pptpd.conf.bak
vim /etc/pptpd.conf

option /etc/ppp/options.pptpd
logwtmp
localip 192.168.9.1
remoteip 192.168.9.11-30

localip表示服务器的IP(根据实际情况设置),remoteip表示分配给客户端的IP地址,可以设置为区间。这里我们使用pptp默认的配置

接下来我们再编辑/etc/ppp/options.pptpd文件,为×××添加联通DNS

cp /etc/ppp/options.pptpd /etc/ppp/options.pptpd.bak

vim /etc/ppp/options.pptpd
在末尾添加下面两行:
一般只需修改ms-dns,分配给×××客户端的DNS服务器IP地址

ms-dns 202.106.0.20

设置pptp ×××账号密码,编辑/etc/ppp/chap-secrets 这个文件:

vim /etc/ppp/chap-secrets

按照“用户名 pptpd 密码 *”的形式编写,一行一个账号和密码。比如添加用户名为test,密码为123456的用户:

test pptpd 123456 *(指定分配给test用户的ip)

5.修改内核设置,使其支持转发

vim /etc/sysctl.conf
将“net.ipv4.ip_forward”改为1,变成下面的形式:
net.ipv4.ip_forward=1
保存退出,并执行下面的命令来生效它:
sysctl -p

6.开启pptpd服务,并设置成开机自启

/etc/init.d/pptpd start
Shutting down pptpd:                                       [FAILED]
Starting pptpd:                                            [  OK  ]

然后chkconfig pptpd on设置开机自启。

下面呢我们来说下安装的过程中会遇到哪些问题:

1.在安装pptpd rpm包的时候

如果安装的时候报如下错误:
warning: pptpd-1.3.4-1.rhel5.1.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 862acc42: NOKEY
error: Failed dependencies:
       ppp = 2.4.4 is needed by pptpd-1.3.4-1.rhel5.1.x86_64
在安装包后面加上两个参数就好,如下:
rpm -ivh pptpd-1.3.4-1.rhel5.1.x86_64.rpm --nodeps --force
加上那两个参数的意义就在于,
安装时不再分析包之间的依赖关系而直接安装,

也就不会再提示error: Failed dependencies:这样的错误了

2.在最后启动服务的时候

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地址给后来连接的×××客户机。为了解决以上问题,在停止×××服务时,可以使用命令“service pptpd restart-kill” 断开所有已存在的×××连接,然后使用命令“service pptpd start” 重新启动×××服务。

最后我们说下怎么测试

首先在win 7 的网络右键属性然后点击第一个新建连接***

wKioL1Mr2vSyfqGJAAEGVyp7TvU367.jpg

wKiom1Mr20KwisGGAAF6K51lU_k068.jpg

wKioL1Mr25fxyyDxAAFaZ9oMcPk689.jpg

wKioL1Mr3CyAmTgFAAE4LbKe5_c249.jpg

wKiom1Mr3FSQYZMKAADTpt571Bw140.jpg

最后连接就可以了。

本章总结

pptp的默认端口号:1723点对点隧道协议(PPTP)是一种支持多协议虚拟专用网络的网络技术,它工作在第二层。通过该协议,远程用户能够通过 Microsoft Windows NT工作站、Windows xp 、 Windows 2000 和windows2003、windows7操作系统以及其它装有点对点协议的系统安全访问公司网络,并能拨号连入本地ISP,通过 Internet 安全链接到公司网络。