本文收录在企业项目实战系列

一、VPN 介绍

1、介绍

  虚拟私人网络(英语:Virtual Private Network,缩写为VPN)是一种常用于连接中、大型企业或团体与团体间的私人网络的通讯方法。虚拟私人网络的讯息透过公用的网络架构(例如:互联网)来传送内部网的网络讯息。它利用已加密的通道协议(Tunneling Protocol)来达到保密、发送端认证、消息准确性等私人消息安全效果。这种技术可以用不安全的网络(例如:互联网)来发送可靠、安全的消息。需要注意的是,加密消息与否是可以控制的。没有加密的虚拟专用网消息依然有被窃取的危险。

  VPN的实质就是利用加密技术在公用网上面封装出一个数据通讯隧道。

  以日常生活的例子来比喻,虚拟专用网就像:甲公司某部门的A想寄信去乙公司某部门的B。A已知B的地址及部门,但公司与公司之间的信不能注明部门名称。于是,A请自己的秘书把指定B所属部门的信(A可以选择是否以密码与B通信)放在寄去乙公司地址的大信封中。当乙公司的秘书收到从甲公司寄到乙公司的信件后,该秘书便会把放在该大信封内的指定部门信件以公司内部邮件方式寄给B。同样地,B会以同样的方式回信给A。

  在以上例子中,A及B是身处不同公司(内部网路)的计算机(或相关机器),通过一般邮寄方式(公用网络)寄信给对方,再由对方的秘书(例如:支持虚拟专用网的路由器或防火墙)以公司内部信件(内部网络)的方式寄至对方本人。请注意,在虚拟专用网中,因应网络架构,秘书及收信人可以是同一人。许多现在的操作系统,例如Windows及Linux等因其所用传输协议,已有能力不用通过其它网络设备便能达到虚拟专用网连接。

2、vpn分类

根据不同的划分标准,VPN可以按几个标准进行分类划分:

(1)按VPN的协议分类:

VPN的隧道协议主要有三种,PPTP、L2TP和IPSec,其中PPTP和L2TP协议工作在OSI模型的第二层,又称为二层隧道协议;IPSec是第三层隧道协议。

(2)按VPN的应用分类:

① Access VPN(远程接入VPN):客户端到网关,使用公网作为骨干网在设备之间传输VPN数据流量;

② Intranet VPN(内联网VPN):网关到网关,通过公司的网络架构连接来自同公司的资源;

③ Extranet VPN(外联网VPN):与合作伙伴企业网构成Extranet,将一个公司与另一个公司的资源进行连接。

(3)按所用的设备类型进行分类:

网络设备提供商针对不同客户的需求,开发出不同的VPN网络设备,主要为交换机、路由器和防火墙:

① 路由器式VPN:路由器式VPN部署较容易,只要在路由器上添加VPN服务即可;

② 交换机式VPN:主要应用于连接用户较少的VPN网络;

(4)按照实现原理划分:

① 重叠VPN:此VPN需要用户自己建立端节点之间的VPN链路,主要包括:GRE、L2TP、IPSec等众多技术。

② 对等VPN:由网络运营商在主干网上完成VPN通道的建立,主要包括MPLS、VPN技术。

3、VPN的实现方式有很多种方法,常用的有以下四种

(1)VPN服务器:在大型局域网中,可以在网络中心通过搭建VPN服务器的方法来实现。

(2)软件VPN:可以通过专用的软件来实现VPN。

(3)硬件VPN:可以通过专用的硬件来实现VPN。

(4)集成VPN:很多的硬件设备,如路由器,防火墙等等,都含有VPN功能,但是一般拥有VPN功能的硬件设备通常都比没有这一功能的要贵。

二、实验—搭建pptp

1、检查系统是否支持ppp

[root@centos6 ~]# cat /dev/ppp

cat: /dev/ppp: No such device or address

如果出现以上提示则说明ppp是开启的,可以正常架设pptp服务,若出现Permission denied等其他提示,你需要先去VPS面板里看看有没有enable ppp的功能开关。

2、设置内核转发,开启路由转发

[root@centos6 ~]# vim /etc/sysctl.conf

net.ipv4.ip_forward = 1

[root@centos6 ~]# sysctl -p 查看

3、安装pptp

[root@centos6 ~]# yum -y install pptpd

依赖epel 源

4、配置pptp

(1)配置主配置文件

[root@centos6 ~]# cp /etc/pptpd.conf{,.bak} 配置前备份

[root@centos6 ~]# vim /etc/pptpd.conf

option /etc/ppp/options.pptpd logwtmp localip 39.106.xxx.xxx      #本机公网ip remoteip 192.168.1.100-110 #分配给VPN 客户端的地址,一般是内网网段地址

(2)配置账号文件

[root@along ~]# vim /etc/ppp/chap-secrets

client(客户端登录账号) server(服务) secret(密码) IP addresses(ip范围)

along          pptpd     123456      * (允许所有ip)

(3)启动服务

[root@along ~]# systemctl start pptpd

检查服务是否开启

[root@along ~]# ps -ef |grep pptpd

[root@along ~]# ss -nutlp |grep pptpd 打开的端口是1723

5、设置SNAT 规则

[root@along ~]# iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE

6、client 端连接vpn

① 连接新的工作群=区

② 通过VPN的方式

③ 输入IP

④ 输入用户名、密码

⑤ 连接成功

8、查看日志,看是否有client 端连接

[root@along ~]# tail -200 /var/log/messages 确实有client 连接

9、连接后的配置

需断开,设置后,再连接

10、测试连接后IP

搭建企业级PPTP服务器的更多相关文章

  1. 企业级PPTP服务器

    第一个里程碑:检查系统是否支持ppp [root@m01 ~]# cat /dev/ppp cat: /dev/ppp: No such device or address 如果出现以上提示则说明pp ...

  2. 业级PPTP服务器搭建企

    搭建企业级PPTP服务器   分类: Linux服务篇 undefined 本文收录在企业项目实战系列 一.VPN 介绍 1.介绍 虚拟私人网络(英语:Virtual Private Network, ...

  3. Centos6一键搭建L2TP VPN服务器

    用VPS在墙上打洞还有一种叫L2TP,也是常见的一种方式.本脚本结合了L2TP(Layer Tunneling Protocol)和IPSec(Internet Protocol Security), ...

  4. 【转】在RedHat上搭建自己Email服务器

    原文:http://6839976.blog.51cto.com/6829976/1323482 by LN__@linux 目前邮件服务器中,想要拥有自己的邮件服务器,单单使用senmail,pos ...

  5. 搭建企业级全网数据定时备份方案[cron + rsync]

    1.1.1. 服务端的配置[192.168.25.141] Rsync的端口是:873 man rsyncd.conf 查看帮助 Rsync是Redhat默认自带的,这里只是做了rsync服务器端的后 ...

  6. Kubernetes-5:搭建企业级私有仓库Harbor

    搭建企业级私有仓库Harbor 安装需求 python版本 >= 2.7 Docker引擎版本 >= 1.10 docker-compose版本 >= 1.6.0 安装环境 一.Py ...

  7. 简单搭建 nuget 内部服务器

    搭建 nuget 内部服务器,最好的方式是使用 ProGet,参考博文<用 ProGet 搭建内部的 NuGet 服务器>,好处非常多,但需要使用 SQL Server 数据库,如果不想使 ...

  8. 使用Hudson搭建自动构建服务器

    环境: ubuntu1404_x64 说明: 使用hudson和git搭建自动构建服务器的简单示例 安装hudson及相关插件 安装hudson 安装命令如下: sudo sh -c "ec ...

  9. Windows环境搭建Red5流媒体服务器指南

    Windows环境搭建Red5流媒体服务器指南 测试环境:Windows 7 一.   下载安装程序 red5-server 下载地址 https://github.com/Red5/red5-ser ...

随机推荐

  1. LwIP-网络接口管理

    netif      各种类型网络接口的抽象------------------netif.c  netif.h ————netif.h————————————————//网络接口最大物理地址长度,这 ...

  2. pycharm clion phpstorn全家桶激活码(可以用到2019年4月)

    SXXI7H41YN-eyJsaWNlbnNlSWQiOiJTWFhJN0g0MVlOIiwibGljZW5zZWVOYW1lIjoicGF5bmUgd2FuZyIsImFzc2lnbmVlTmFtZ ...

  3. vue el-upload form 同时提交

    项目需要form 表单和文件上传同时在一个请求,废话不多说上代码: 上传的组件使用pug格式 .row.my-4 .col-12 el-form(:model='domain', :rules='va ...

  4. 20155205 郝博雅 Exp3 免杀原理与实践

    20155205 郝博雅 Exp3 免杀原理与实践 一.基础问题回答 (1)杀软是如何检测出恶意代码的? 答:++基于特征码的检测++<简单来说一段特征码就是一段或多段数据.如果一个可执行文件( ...

  5. Scrum的3种角色划分--2048小游戏

    WBS分析: 敏捷开发 Scrum的3种角色划分:产品负责人PO(Product Owner).SM(ScrumMaster).开发团队(Team) 职责: PO:负责在限定期限内拟定可能的最有价值的 ...

  6. C++中_cplusplus及Extern "C"的理解

    一.意义 Extern "C":告诉编译器,这部分代码按C语言的方式进行编译,而不是C++的.   _cplusplus:.cpp文件默认定义的宏.用来判断是否为.cpp文件. 二 ...

  7. OC协议、代理的简单使用

    在不同类之间传递数据,我所学到的有三种,1.代理,2.block,3.通知.在这里,我们先来讲一下代理的使用,后面我会继续讲到block和通知.代理通常和协议是一起使用的,协议通常写在代理类里面,被代 ...

  8. max (Largest elements in array)

    句法: M = max(A) M = max(A,[],dim) [M,I] = max(___) C = max(A,B) ___ = max(___,nanflag)   描述: M=max(A) ...

  9. TCP的客户端搭建

    一.设计目标 之前已经写过了TCP服务器原理及通过visual studio 验证 SOCKET编程:搭建一个TCP服务器,这里我们搭建一个TCP客户端界面并对各功能进行实现.设计效果如下: 二.实验 ...

  10. autium designer 软件使用:

    1mil=0.0254mm 1,英文输入法A建,对齐方式. 2,焊盘,过孔区别   作为安装孔时,焊盘和过孔在内孔覆铜上有区别,焊盘的内控通过设置属性可以没有覆铜,而过孔不可以.如果选中焊盘属性Adv ...