CentOS6下搭建VPN服务器

分类:CentOS运维 阅读:25631 次

一、配置前操作

之前由于公司重新装修,公司网络重新部署了。网络划分了多个VLAN。公网也是分几个IP出口的。由于我不是windows专业。对于网络也不是很熟悉,所以也不太会(现在在努力学习网络方面的知识)。公司网络部署好以后,肯定是需要VPN服务的。这个是处于安全考虑必须的问题。但是网络的具体配置是有设备提供商来操作的,路由具体是如何走的,这些都是无法及时沟通的。导致那时候VPN服务器一直没有配置好。也很郁闷,最后是在硬件设备上实现的。

这段时间空闲下来了,决定还是要研究下当时到底是哪里的问题。

于是重新配置了一遍。安装环境就是CentOS 6.2 64位。一些开发包组安装完全。pptp这些都是yum使用epel源安装的:

安装完这三个包,查看mppe模块是否装载。

以上装载完成后,打开内核转发功能:

二、配置PPTP

1、安装pptp生成以下文件:

2、有了以上这些,我们来直接配置:

3、配置iptables对pptpd放行

到此就可以在windows下测试连接了。

三、连接和排错

配置好windows下的VPN连接后,测试连接是可以获取到IP地址的,并且QQ等服务是正常的。但是出现了除了百度其他的网页都可以访问。唯独百度域名的不能访问。接着又出现第二个问题,就是VPN连接一端时间后,自动断开。断开后重新连接时反复报错,内容如下:

根据提示是GRE的问题,但是上述已经放行GRE端口。于是baidu、google很久,有说版本问题的,有说内核补丁(未测试)、iptables、gre内核模块的。一一尝试后都不行,于是请教大神。截图过去后,大神说可能是MTU大小问题。于是再次连接后,查看ppp0的MTU,发现ppp0的MTU是1396,与eth0的和gre的确实不一样。于是就动态改了下MTU测试:

到目前测试都是正常的,如果还有问题,后续在补充......

本文出自 “Soul” 博客,请务必保留此出处http://chenpipi.blog.51cto.com/8563610/1607019