转载来自:

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中viewData、viewBag和templateData的使用与区别

    一:类型比较 1.1)ViewBag是动态类型(dynamic). 1.2)ViewData是一个字典型的(Dictionary)-->ViewDataDictionary. 1.3)TempD ...

  2. gulp watch出现Error: watch null EPERM的问题解释

    出现这样的问题,一般是第一次运行导致的,而且任务上有删除文件的操作. 我观察发现,只要把输出目录的文件删除,然后重新运行watch就一些ok,后者再运行一次gulp watch就一切正常.

  3. gulp-rev-collector自定义修改rev-manifest.json后替换不成功的问题分析

    由于项目需要,我要把common.js替换成build.min.js,接着后面才用到build.min.js=>build-te234ds.min.js这样的形式替换,但是我发现怎么替换都不能把 ...

  4. 【Linux】使用update-alternatives命令进行版本的切换

    引言 在Redhat中也有此功能,用于切换不同版本. 在Debian系统中,我们可能会同时安装有很多功能类似的程序和可选配置,可能会出现同一软件的多个版本并存的场景.比如像是一些编程语言工具,一些系统 ...

  5. HTML5魔法堂:全面理解Drag & Drop API

    一.前言    在HTML4的时代,各前端工程师为了实现拖拽功能可说是煞费苦心,初听HTML5的DnD API觉得那些痛苦的日子将一去不复返,但事实又是怎样的呢?下面我们一起来看看DnD API的真面 ...

  6. bootstrap 水平表单

    <form class="form-horizontal" role="form"> <div class="form-group& ...

  7. 硕士研究生入学考试复试试卷答案.tex

    %该模板用于数学答题 \documentclass[UTF8]{ctexart}%[中文编码 UTF8] \usepackage{fancyhdr}%{页眉页脚页码} \pagestyle{fancy ...

  8. 如何合并两个Docker 镜像

    http://www.open-open.com/lib/view/open1437746544709.html 在你的机器上使用docker pull来从Docker Hub下载镜像. docker ...

  9. SQL2005解密已经被加密的存储过程

    SQL2005解密已经被加密的存储过程 第一步:打开DAC连接功能 第二步:在MASTER数据库创建一个解密存储过程 USE master GO CREATE PROCEDURE [dbo].[sp_ ...

  10. Linux中挂载window7的共享文件

    window7主机: 设置要共享的文件夹 Linux Fedora: 0 su su root 1 samba-client yum install samba-client 2 cifs-utils ...