GRE隧道和ipsec隧道和SSLVPN
GRE隧道
GRE隧道实现原理:
GRE(通用路由封装)隧道的实现原理是通过在封装数据包的头部添加额外的信息来创建一个虚拟的点对点连接,从而在不同网络之间传输数据。下面是GRE隧道的基本实现原理:
-
封装数据包: 当数据包从源主机发送时,GRE路由器会接收该数据包,并在原始数据包的头部添加GRE头部信息。这个GRE头部包含了必要的控制信息,如源和目的地址、GRE协议类型等。
-
传输数据包: 封装后的数据包在网络中传输,通常是通过公共互联网或专用网络。
-
解封数据包: 当数据包到达目标GRE路由器时,它会被解封,即从GRE头部中提取出原始数据包。
-
转发数据包: 解封后的原始数据包被转发到目标主机,就好像它们是直接从源主机发送到目标主机一样。
GRE隧道的实现原理相对简单,它提供了一种有效的方法来在不同网络之间传输数据,尤其适用于构建虚拟专用网络(VPN)或连接远程分支机构到中心网络的场景。
转自:GRE隧道是什么?他的作用是什么? - 知乎 (zhihu.com)
在学习GRE隧道之前,我们首先需要了解GRE隧道是什么,它的作用是什么。
通用路由封装(GRE) 是一种协议,用于将使用一个路由协议的数据包封装在另一协议的数据包中。“封装”是指将一个数据包包装在另一个数据包中,就像将一个盒子放在另一个盒子中一样。GRE 是在网络上建立直接点对点连接的一种方法,目的是简化单独网络之间的连接。它适用于各种网络层协议。
要了解其工作原理,请想像一下汽车和渡轮之间的区别。汽车在陆地上行驶,而渡轮在水上行驶。汽车通常不能在水上行驶,但是可以将汽车装载到渡轮上。
在这个类比当中,地形类型好比是支持某些路由协议的网络,而车辆则好比是数据包。GRE 是一种将一种类型的数据包装载到另一种类型的数据包中的方式,以便第一个数据包可以穿越它通常无法穿越的网络,就像一种类型的运输工具(汽车)被装载到到另一种类型的运输工具(渡轮)上,以便穿越原本无法行驶的地形。
例如,假设一家公司需要在位于两个不同办公室的局域网(LAN)之间建立连接。两个 LAN 都使用最新版本的 互联网协议 IPv6。但是,为了从一个办公网络到达另一个办公网络,流量必须通过一个由第三方管理的网络 — 该网络有些过时,仅支持较旧的 IPv4 协议。
借助 GRE,该公司可以将 IPv6 数据包封装在 IPv4 数据包中,然后便可通过此网络传输流量。回到那个类比,IPv6 数据包是汽车,IPv4 数据包是渡轮,而第三方网络则是水。
使用GRE还可以克服IGP协议的一些局限性。
例如,RIP路由协议是一种距离矢量路由协议,最大跳数为15。如果网络直径超过15,设备将无法通信。这种情况下,可以使用GRE技术在两个网络节点之间搭建隧道,隐藏它们之间的跳数,扩大网络的工作范围。
下面我们来做个小实验来体验一下GRE隧道。
图 1 GRE拓扑
对AR1做下面的配置:
# 创建Tunnel接口
interface Tunnel0/0/1
# 配置IP地址
ip address 20.1.12.1 255.255.255.0
# 配置Tunnel接口的隧道协议
tunnel-protocol gre
# 配置Tunnel源地址
source 10.1.12.1
# 指定Tunnel接口的目的IP地址
destination 10.1.12.2
# 配置一条静态路由指向Tunnel
ip route-static 192.168.2.0 24 Tunnel 0/0/1
AR2上的配置与上面类似,这里就不再列出了。
我们在PC1上pingPC2。
我们抓取AR1与AR2之间传递的GRE报文。
Frame 3: 98 bytes on wire (784 bits), 98 bytes captured (784 bits) on interface 0
Ethernet II, Src: HuaweiTe_53:13:29 (00:e0:fc:53:13:29), Dst: HuaweiTe_d3:05:4f (00:e0:fc:d3:05:4f)
Internet Protocol Version 4, Src: 10.1.12.2, Dst: 10.1.12.1
Generic Routing Encapsulation (IP)
Flags and Version: 0x0000
Protocol Type: IP (0x0800)
Internet Protocol Version 4, Src: 192.168.2.1, Dst: 192.168.1.1
Internet Control Message Protocol
可以看到外层的IP报文源目IP地址分别为10.1.12.2,10.1.12.1。内层源目IP地址则成了192.168.2.1,192.168.1.1。实现了在AR1与AR2之间的透明传输。
我们能够很清楚的看到从PC1到PC2传递的数据,这带来了安全隐患。我们可以对传递的数据进行加密处理。
而GRE本身并不支持加密,因而通过GRE隧道传输的流量是不加密的。我们将 IPSec技术与GRE相结合,先建立GRE隧道对报文进行GRE封装,然后再建立IPSec隧道对报文进行加密,这样就只可以保证报文传输的完整性和私密性。
华为参考:HiSecEngine USG6000F 产品文档 (huawei.com)
GRE
操作步骤
- 配置GRE接口。
- 配置GRE接口的路由,以静态路由为例。
-
选择
-
单击“新建”。
-
配置静态路由的各项参数。
参数
说明
目的地址/掩码
目的地址是未进行GRE封装的原始报文的目的地址。例如图 GRE组网图中的“10.1.2.0/24”。
出接口
在下拉列表中选择GRE接口作为出接口。
- 单击“确定”。
-
ipsec隧道
配置点到点IPsec
IPsec协议用于保护在Internet上传输敏感信息时的安全性,使用IPsec可以避免数据包被监听、修改和欺骗,数据可以在不安全的公共网络环境中进行安全的传输,其典型应用是构建VPN。IPsec使用封装安全负载(ESP)或鉴别头(AH)验证数据的起源,保障数据的保密性、完整性并防止相同数据包的不断重播。
IPsec在两个端点之间提供安全通信,两个端点被称为IPsec ISAKMP网关,两个端点组成一个安全联盟(SA)。安全联盟是IPsec通信的基础,约定了通信端之间的要素,如使用哪种协议、协议的操作模式、加密算法、特定流中保护数据的共享密钥以及SA的生存周期等。
建立SA的过程分两个阶段:
1)第一阶段,协商创建一个通信信道(ISAKMP SA),并对该信道进行认证,为双方进一步的IKE通信提供机密性、数据完整性以及数据源认证服务。
2)第二阶段,使用已建立的ISAKMP SA建立IPsec SA。
可通过以下步骤在DAS-Gateway上创建IPsec VPN:
配置IKE协商策略。
配置IPsec协商策略。
配置IPsec隧道接口。
配置点到多点IPsec
SSLVPN实现外部员工,访问内网资源
SSL VPN是通过SSL协议实现远程安全接入的VPN技术。
设备通过虚拟网关向移动办公用户提供SSL VPN接入服务,虚拟网关是移动办公用户访问企业内网资源的统一入口。一台设备可以创建多个虚拟网关,虚拟网关之间相互独立,互不影响。不同虚拟网关下可以配置各自的用户和资源,进行单独管理。虚拟网关本身无独立的管理员,所有虚拟网关的创建、配置、修改和删除等管理操作统一由设备的系统管理员完成。
系统管理员在设备上创建SSL VPN虚拟网关,并通过虚拟网关对移动办公用户提供SSL VPN接入服务。
SSL VPN是解决远程用户访问公司敏感数据简单解决方案。与IPsec VPN相比,SSL VPN通过简单易用的方法实现信息远程安全连接。SSL VPN用户可以通过客户端直接与SSL VPN服务端建立连接,实现对内部授权资源的访问。
SSL VPN功能包括服务端(DAS-Gateway)和客户端两部分。服务端接受客户端的连接请求,为客户端分配IP地址,对客户端用户进行认证与授权,创建安全的加密连接;客户端是安装在用户终端(如PC或手机)上的应用程序,用于发起SSL VPN连接请求。
从DAS-Gateway的SSL VPN门户页面下载SSL VPN客户端后,参考以下步骤安装、运行客户端。