转载来自:

https://bbs.aliyun.com/read/162297.html

http://www.wanghailin.cn/centos-7-vpn/

操作系统:CentOS 6.3 64位

名词解释:pptp是VPN服务器类型之一,PPP是一种数据链路层协议,iptables是IP信息包过滤系统。

1 服务器端安装软件

1.1 首先安装ppp

yum install -y ppp iptables 

提示Complete! ,安装成功;

1.2安装pptp

由于pptp没有存放在CentOS的源中,所以用yum命令安装返回的是找不到安装包的,需要从网上下载,安装命令如下:

rpm -ivh  http://pkgs.org/centos-6/nux-misc-x86_64/pptpd-1.3.4-1.el6.nux.x86_64.rpm

2 配置pptp

2.1编辑/etc/pptpd.conf,命令如下

vi /etc/pptpd.conf 

#localip 192.168.0.1
#remoteip ,192.168.0.245 

修改成

localip 192.168.0.1
remoteip ,192.168.0.245 

即将这两行第一个字符“#”去掉,保存退出

2.2编辑/etc/ppp/options.pptpd

命令如下

vi /etc/ppp/options.pptpd 

#ms-dns 10.0.0.1
#ms-dns 10.0.0.2 

改成

ms-dns 8.8.8.8
ms-dns 8.8.4.4 

即将这两行第一个字符“#”去掉,而后修改DNS的IP。

2.3设置使用pptp的用户名和密码

vi /etc/ppp/chap-secrets 

打开后只有两行,而且一个账号都没有

# Secrets for authentication using CHAP
# client server secret IP addresses 
根据您的需要添加账号,每行一个。按照:“用户名 pptpd 密码 ip地址”的格式输入,每一项之间用空格分开,例如:username pptpd  * (*表示所有IP)
保存并退出。 

3、修改内核设置,使其支持转发

vi /etc/sysctl.conf 

net.ipv4.ip_forward= 

改成

net.ipv4.ip_forward= 

net.ipv4.tcp_syncookies=  

改成

#net.ipv4.tcp_syncookies= 

保存并退出

执行以下命令使修改后的内核生效

sysctl -p 

4、添加iptables转发规则

iptables -t nat -A POSTROUTING -s  -o eth1 -jMASQUERADE 

(注意:由于阿里云是双网卡,内网eth0,外网eth1,所以这块特别容易误写为eth0,这也是为什么很多杂乱的教程无法配置成功的原因之一)

添加好转发规则后保存一下并重启iptables

/etc/init.d/iptables save  
/etc/init.d/iptables restart

5、重启pptp服务

/etc/init.d/pptpd restart 

这里要注意一下,其实此时pptp还没运行起来。所以使用restart重启,会显示Shutting down pptp [FAILED]。还会有一个警告,可以忽略。如不放心可以再用以上命令重启一下pptp就非常顺利的运行了。

6、设置pptp和iptables随系统启动

chkconfig pptpd on 
chkconfig iptables on

至此,pptp服务端安装结束。 在PC端的“网络和共享中心”,设置新的连接或网络,即可访问VPN。

若win7连接vpn的时候提示连接错误701,无法建立该加密类型服务PPTP,修改取消严格的密码验证

在网络--更改适配器设置--VPN连接--属性--安全, 在新窗口,选择“可选加密”

【转载】CentOS服务器配置VPN详解的更多相关文章

  1. CentOS网络配置详解

    转载于CentOS中文站:http://www.centoscn.com/CentOS/2015/0507/5376.html一.配置文件详解 在RHEL或者CentOS等Redhat系的Linux系 ...

  2. 【转载】Java 集合详解

    转载:https://www.cnblogs.com/ysocean/p/6555373.html 一.集合的由来 通常,我们的程序需要根据程序运行时才知道创建多少个对象.但若非程序运行,程序开发阶段 ...

  3. [转载]Java迭代器(iterator详解以及和for循环的区别)

    Java迭代器(iterator详解以及和for循环的区别) 觉得有用的话,欢迎一起讨论相互学习~[Follow] 转载自 https://blog.csdn.net/Jae_Wang/article ...

  4. 转载——CentOS---网络配置详解

    看到一篇关于Centos网络配置很详细的文章,特此复制来.原文网址:http://blog.chinaunix.net/uid-26495963-id-3230810.html 一.配置文件详解在RH ...

  5. 【转载】Java泛型详解

    [转载]http://www.importnew.com/24029.html 对java的泛型特性的了解仅限于表面的浅浅一层,直到在学习设计模式时发现有不了解的用法,才想起详细的记录一下. 本文参考 ...

  6. CentOS Yum 命令详解

    总所周知,Redhat和Fedora的软件安装命令是rpm,但是用rpm安 装软件最大的麻烦就是需要手动寻找安装该软件所需要的一系列依赖关系,超级麻烦不说,要是软件不用了需要卸载的话由于卸载掉了某个依 ...

  7. 转载]IOS LBS功能详解[0](获取经纬度)[1](获取当前地理位置文本 )

    原文地址:IOS LBS功能详解[0](获取经纬度)[1](获取当前地理位置文本作者:佐佐木小次郎 因为最近项目上要用有关LBS的功能.于是我便做一下预研. 一般说来LBS功能一般分为两块:一块是地理 ...

  8. 【转载】Spring AOP详解 、 JDK动态代理、CGLib动态代理

    Spring AOP详解 . JDK动态代理.CGLib动态代理  原文地址:https://www.cnblogs.com/kukudelaomao/p/5897893.html AOP是Aspec ...

  9. [转载]oracle 高水位线详解

    一.oracle 高水位线详解 出处: https://www.cnblogs.com/linjiqin/archive/2012/01/15/2323030.html 一.什么是水线(High Wa ...

随机推荐

  1. Asp.Net MVC<六>:Controller、Action 待续

    控制器 抽象类Controller Visual Studio的向导创建的Controller类型继承自抽象类Controller. 它是ControllerBase的子类. 实现了IControll ...

  2. DB&SQL备忘

    DB2最佳分页语句 SELECT * FROM ( SELECT inner2_.*, ROWNUMBER() OVER(ORDER BY ORDER OF inner2_) AS rownumber ...

  3. Cannot initialize Cluster. Please check your configuration for mapreduce.framework.name and the co

    log4j:WARN No appenders could be found for logger (org.apache.hadoop.metrics2.lib.MutableMetricsFact ...

  4. 搭建spring mvc项目

    在之前搭建maven项目这篇的基础上继续集成,引入spring mvc支持 一.添加jar包引用 修改pom.xml文件,加入:(其他关联的jar包maven会自动引用) <!-- 项目属性 - ...

  5. Linux 下Nginx编译安装

    Untitled .note-content {font-family: 'Helvetica Neue', Arial, 'Hiragino Sans GB', STHeiti, 'Microsof ...

  6. C#之数组篇

    大杂烩 一.数组初始化 1.一维数组 String[] str = new String[3] { "1","2","3"};        ...

  7. lua 例子

    //顶 - - - //顶 #include <stdio.h> #include <string.h> extern "C"{ #include < ...

  8. python Windows下的android设备截图工具

    目录 界面版 命令行版 界面版 利用python的wx库写个ui界面,用来把android设备的截图输出到电脑屏幕,前提需要安装adb,涉及到的python库也要安装.代码如下: #!/usr/bin ...

  9. Filter体现职责链模式

    1. 前言 Filter—Filter 技术是servlet2.3 新增加的功能.完成的流程:对用户请求进行预处理,接着将请求交给Servlet进行处理并生成响应,最后Filter再对服务器响应进行后 ...

  10. 5Hibernate入门----青软S2SH(笔记)

    这里有个问题,就是这本书第五章的示例代码中的hibernate的jar包有问题,各种找不到类,把lib下的包后换成第六章里的包就好了. 换成5.1的就好了,而且如果只是简单使用hibernate的话, ...