TCP/IP不同层次的安全机制

  1. 链路层:PPTP、L2F、L2TP

  1. 网络层:IPSec

  1. 传输层:SSL

  1. 应用层:SHTTP、S/MIME、SET

SSL和SSH的区别
SSL(安全套接字层)是一种国际标准的加密及身份认证通信协议,主要用于Web安全传输(HTTP/HTTPS),也可以用于其他协议(如SMTP/NNTP)。SSL可以保证网站和浏览器之间的数据传输安全,防止中间人攻击和数据泄露。
SSH(安全外壳)是一种用于创建安全隧道的协议,主要用于远程登录和文件传输(Telnet/FTP)。SSH可以让用户从一个设备向另一个设备发出命令、传输数据等,同时对数据进行加密和身份验证。SSL和SSH之间的主要区别在于,SSL适用于多种协议和应用,而SSH只适用于特定的协议和应用。
此外,SSL需要使用数字证书来验证身份,而SSH则使用公钥加密来验证身份

VPN概念

VPN的原理是通过建立一个虚拟的隧道,将你的设备和一个远程的服务器连接起来,让你的网络流量经过这个服务器,从而改变你的IP地址和加密你的数据。这样,你就可以绕过一些网络限制或监控,保护你的隐私和安全。

同时,在端到端的数据通路上随处都有可能发生数据的泄漏,使用VPN技术可对此进行保护

VPN可以实现更安全的网络连接,因为它可以对你的网络流量进行加密,并隐藏你的IP地址和位置。这样可以防止第三方监视、拦截或篡改你的数据。VPN也可以让你绕过一些网络审查或限制,访问一些被屏蔽或禁止的网站或服务。

举个例子来描述VPN
比如我们的局域网想收到美国的网络信号,我们希望能有一根网线来把我们的路由器和美国的路由器给连接起来。但是不可能,没这么长的网线,所以我们可以使用VPN技术,我们的网和美国的网之间建立一个隧道,就相当于是一个虚拟的网线,同时还要设置好路由。

VPN的定义:是指依靠ISP或其他NSP在公用网络基础设施之上构建的专用的数据通信网络,这里所指的公用网络有多种,包括IP网络、帧中继网络和ATM网络

IETF对基于IP的VPN定义:使用IP机制仿真出一个私有的广域网

示意图:

VPN技术

隧道技术

VPN的隧道技术指的是将数据包包装在一个加密的通道中,在互联网上安全地传输数据的技术。

隧道使用隧道协议来封装数据。一种协议X的数据报被封装在协议Y中,可以实现协议X在公共网络的透明传输。这里协议X称作被封装协议,协议Y称为封装协议。

隧道的一般封装格式为(协议Y(隧道头(协议X)))

所以说,在隧道中,数据报被重新封装发送,在原IP分组上添加新的报头,就好像将数据包装进信封一样。

VPN的隧道协议有多种,常见的有PPTP,L2TP和IPSec。

隧道协议
隧道协议是一种网络协议,它可以使用一种网络协议(传送协议)将另一种不同的网络协议封装在负载部分。使用隧道的原因是在不兼容的网络上传输数据,或在不安全网络上提供一个安全路径。
联想一下在IPv6向IPv4过渡时,有一种方法就是利用隧道,把IPv6封装到IPv4里面

隧道协议内包括:乘客协议,封装协议,运载协议

隧道中,数据报被重新封装,现有的封装协议主要包括两类:第2层隧道协议和第3层隧道协议

第2层隧道协议

主要用于构建远程访问VPN,包括PPTP, L2F, L2TP

简单易行,就是差在没有提供内在安全机制,需要搭配IPSec来实现安全机制

第3层隧道协议

包括IPSec,GRE,MPLS等

构建的网络分别为IPSec VPN,GRE VPN,MPLS VPN。

第2层隧道协议和第3层隧道协议分别是什么?有什么区别?
第2层隧道协议是将各种网络协议(如IP、IPX等)封装成PPP(点对点协议),然后再封装成L2TP(第二层隧道协议),形成依赖于第2层协议的数据包。这种双重封装使得数据包可以通过不同的网络传输,如以太网、ATM等。L2TP本身不提供加密功能,需要和IPsec等安全协议搭配使用。
第3层隧道协议是将各种网络协议直接封装到IP(互联网协议)中,形成依赖于第3层协议的分组。这种单一封装使得数据包可以在互联网上进行路由选择和转发。第3层隧道协议通常已经集成了加密功能,如IPsec、GRE等。

密钥管理技术

为什么VPN敢于在公共信道上建立隧道?如何保证隧道内信息的安全?
VPN隧道是一种加密连接。VPN隧道使用不同的协议来加密和验证数据包,如IPSec,SSTP,OpenVPN等。这些协议可以防止数据包被窃听,篡改或伪造

密钥管理技术的主要任务是保证密钥在公用数据网上安全地传递而不被窃取

VPN技术的开放性预示着必须采用各种公开密码算法,是用来保证VPN隧道的安全性和可靠性的一种技术,它主要包括密钥生成、密钥分发、密钥更新和密钥撤销等功能。

VPN系统中常用的几种密钥管理协议包括:IKE协议、SKIP协议、Kerberos协议。

此外,VPN的关键技术中还包括加/解密技术,身份认证技术和访问控制。

VPN应用类型

根据网络类型的差异,一般可以把VPN分为ClientLAN和LAN-LAN两种类型

Client-LAN 类型的 VPN

Client-LAN 类型的 VPN 是一种允许客户端通过互联网虚拟连接到局域网的技术。它可以用于远程访问网络资源,或者在不同地点的计算机之间建立安全的通信。

LAN-LAN类型的VPN

LAN-LAN 类型的 VPN 是一种允许两个或多个局域网通过互联网虚拟连接的技术。它可以用于连接不同地点的办公室或家庭网络,或者在公共网络上建立安全的专用网络。

LAN-LAN类型的VPN,当用来构建内联网时称为Intranet VPN,用于企业和合作企业进行网络互联时称为Extranet VPN

VPN功能

数据机密性保护

VPN 的数据机密性保护是指使用加密技术来防止网络流量被窃听或篡改。即使攻击者能够截取 VPN 的数据包,他们也只能看到加密后的数据,而不是原始的数据。这样,VPN 可以保护用户在互联网上交互的数据和活动,以及隐藏某些资源。

简单来说就是能给数据加密保护

数据完整性保护

数据源身份认证

重放攻击保护

虚拟专用网 —— 链路层安全

PPTP (点对点通道协议)

点对点通道协议是一种让你在互联网上建立一个私人的通道,可以安全地传输数据的方法。就像你在两个地方之间挖了一个隐秘的隧道,只有你和对方知道,别人看不到。这样可以保护你的隐私和安全。

PPTP协议的具体实现过程
1. 客户端向服务器发送一个TCP连接请求,服务器接受后建立TCP连接。
2. 客户端和服务器通过TCP连接交换控制消息,协商隧道参数,如认证方式、加密算法等。
3. 客户端和服务器进行认证,验证身份。常用的认证方式有PAP和CHAP。
4. 认证成功后,客户端和服务器开始通过隧道传输数据。数据包先被封装成PPP帧,然后被加上GRE报头,并通过TCP连接发送给对方。
5. 接收方收到数据包后,去掉GRE报头,解压缩和解密PPP帧,并将其交给上层应用。

PPTP 可看作是PPP 协议的一种扩展,用于将PPP分组通过IP网络封装传输。

PPTP只能建立一个隧道,在IP网络中传输。

PPTP不是可以对数据进行加密吗,为什么说他安全性比较低?
1. PPTP协议使用的加密算法有很多漏洞,例如MPPE和DESE,它们的密钥长度和加密强度都不够高,容易被破解。
2. PPTP协议本身并未描述加密或身份验证的部分,它依靠点对点协议(PPP)来实现这些安全性功能。但PPP是设计来做点对点连接的,用到Internet上很不合适。

再说PPTP的数据加密问题
PPTP本身只是一个隧道协议,不能提供加密服务,但是PPTP协议利用底层的PPP协议来实现加密和认证功能,使用的是MPPE等。PPTP协议将数据包以PPP协议格式封装,然后通过IP协议和GRE协议来传输。

L2F (二层转发协议)

L2TP (二层通道协议)

PPTP协议,L2F协议,L2TP协议小结
1. PPTP是点对点隧道协议,它使用通用路由封装(GRE)协议在IP网络上封装PPP数据包,并使用MPPE算法对数据进行加密。PPTP客户端和服务器之间建立一个TCP连接作为控制信道,然后通过GRE协议建立多个隧道来传输数据。PPTP的优点是简单易用,兼容性好,连接速度快;缺点是安全性较低,容易被阻断或攻击。
2. L2F是第二层转发协议,它也是用于封装PPP数据包的隧道协议,但它不依赖于IP网络,可以在任何网络上工作。L2F客户端和服务器之间建立一个UDP连接作为控制信道,然后通过UDP协议建立多个并行的隧道来传输数据。L2F的优点是支持多种网络协议和多个隧道;缺点是不提供加密或保密性,需要额外的安全机制。
3. L2TP是第二层隧道协议,它结合了PPTP和L2F的优点,并增加了一些新的特性。L2TP可以在IP网络或非IP网络上工作,并支持与IPsec协议配合使用以提高安全性。L2TP客户端和服务器之间建立一个UDP连接作为控制信道,然后通过UDP协议建立单个或多个隧道来传输数据。L2TP的优点是安全可靠,支持多种网络环境;缺点是配置复杂,连接速度慢。L2TP本身不提供加密功能,可以和IPSec协议结合使用。

虚拟专用网 —— 网络层安全

基于IPSec的VPN解决方案

基于IPSec的VPN解决方案是一种利用IPSec协议在公网上建立安全隧道的技术,可以保护两个或多个私有网络之间的通信

该方案能解决的问题:

数据源身份认证,数据完整性,数据保密,重放攻击保护,自动的密钥管理和安全关联管理

初学这个时在想,那不是有TCP协议么,TCP协议不也能保护数据完整性啥的...
经查阅资料得知:
TCP协议本身不能为IP网络提供安全性的协议和服务,TCP可以保证数据可靠传输,但不能提供什么加密保护,TCP在传输层,也管不到IP层的加密
如果要使用TCP协议来保护IP网络的安全性,就需要在应用层使用其他的加密和认证的技术,比如SSL/TLS。但是这样会增加应用层的复杂度和开销,而且只能保护基于TCP的应用层报文,不能保护其他类型的IP报文。

所以IPSec协议主要用来对IP数据包进行保护,可提供机密性,完整性,身份验证,抗重放攻击保护

不过问题又来了,对IP数据报进行保护图啥?直接在数据链路层加密不就得了?
上面提到了第2层隧道协议和第3层隧道协议。主要是直接在数据链路层加密,效果不好。数据链路层是PPTP协议能加密,但PPTP协议有固有的缺点,安全性不强,容易被阻断,要是用相对比较好的L2TP协议,这个L2TP协议本身也不提供内在的安全性,必须要在IP层给予一定的保护。
所以,使用L2TP和IPSec协议的组合是和很好的选择。L2TP支持多种网络上传输,IPSec能和L2TP配合提供加密保护

IPsec是一种在网络层提供安全性的协议族,SSL是一种在传输层提供安全性的协议。

IPSec体系结构

IPSec协议的模式主要有两种:传输模式和隧道模式

传输模式只对IP数据包的有效载荷进行安全处理,不改变原始的IP头部。它适用于端到端的通信,例如两个主机之间或者两个网关之间。

隧道模式对整个IP数据包进行安全处理,并在外层添加一个新的IP头部。它适用于网关到网关或者网关到主机的通信,例如VPN场景

IPSec协议的协议主要有三种:认证头(AH)、封装安全载荷(ESP)和互联网密钥交换(IKE)。它们的功能如下:
AH协议提供数据源认证和完整性保证,但不提供加密。它在IP数据包中插入一个认证头,包含了一些安全参数和一个根据共享密钥计算的消息验证码。
ESP协议提供数据源认证、完整性保证和加密。它在IP数据包中插入一个封装安全载荷,包含了一些安全参数和一个根据共享密钥加密的数据载荷。
IKE协议用于在两个通信实体之间建立、维护和删除安全关联(SA),以及协商共享密钥、算法等参数。它采用UDP 500端口发起和响应协商,并使用预共享密钥、数字证书或其他方式进行身份验证。

安全关联SA是什么?
安全关联SA是指两个应用IPsec协议的实体间的一个单向逻辑连接,决定保护什么、如何保护以及谁来保护通信数据。它是一种共同协定,规定了通信双方使用哪种IPSec协议、应用的算法标识、加密和验证的密钥取值以及密钥的生存周期等等安全属性值。

安全联盟数据库(SADB)

安全联盟数据库(SADB)是一种网络安全技术,用于管理和存储网络安全协议所需的信息。SADB通常是在IPsec协议中使用,用于存储安全关联(SA)的信息。

安全策略数据库(SPD)

安全策略数据库(SPD)是一种网络安全技术,用于存储和管理安全策略。安全策略是一组规则,它们指定了如何处理网络流量,以确保网络的安全性和可靠性。

VPN中没有SADB和SPD有什么后果?
VPN中没有SADB和SPD的后果是无法实现IPSec的功能,也就是无法保护网络层数据的安全性和完整性。SADB和SPD是IPSec协议的核心组成部分,没有它们就无法对数据包进行加密、解密、认证和完整性检查。

IPSec流程

IPSec VPN就是通过IPSec技术在两个设备之间建立一个安全的隧道,然后在隧道里传输加密和认证过的数据包。为了建立这个隧道,需要先协商好一些参数,比如加密算法、密钥、身份信息等。然后需要配置一些规则,比如哪些数据包需要走隧道,哪些不需要。最后需要设置一些路由,让数据包能够找到正确的目的地

IKE(互联网密钥交换)

IKE有很多用途,主要是用于在VPN中建立和维护安全的隧道和密钥。它可以保证数据的加密和验证,防止被窃听或篡改。它也可以支持不同的认证方式,如预共享密钥,数字证书,EAP等

IKE用于在两台设备之间设置安全、经过身份验证的通信通道。它为IPSec提供了自动协商交换密钥、建立安全关联的服务,能够简化IPSec的使用和管理。它还可以支持许多不同的密钥交换模式,提供不同的服务和保护级别。

虚拟专用网 —— 传输层安全

SSL(安全套接字层)

SSL基本情况

SSL用于在互联网上保护数据传输的安全性和完整性(身份认证)。它通过加密和认证机制,确保数据在传输过程中不被窃取或篡改。

不使用传输层加密,只使用IPSec,会怎么样?
如果只使用IPSec进行网络层加密而不使用传输层加密,数据报仍然可能会被窃听。这是因为IPSec只能提供网络层的加密和身份验证,而不能提供传输层的加密。
攻击者可以利用网络中的嗅探工具来窃听通过IPSec保护的数据报。在这种情况下,攻击者可以获取到IPSec加密后的数据报,但无法解密其中的内容,因为IPSec采用的是对称加密算法。
然而,攻击者可以采用其他方式来破解数据报中的内容。例如,攻击者可以使用中间人攻击来伪装为受信任的服务器或客户端,从而使数据流经他们的计算机,然后窃取其中的数据。攻击者还可以利用其他漏洞或弱点来绕过IPSec保护的数据。
简单来说就是只使用IPSec,数据被加密了,但仍然有可能被窃取。因为数据报可能被半路截取,然后想一些办法破解,或者误打误撞被打开了,需要用传输层的SSL来确保,打开我这个数据报的那个端口是正确的,不会被错发给别人。

SSL的协议体系由两层协议组成:下层是SSL记录协议,上层是SSL握手协议、SSL改变密码规范协议和SSL警报协议。

SSL记录协议负责将上层的数据分段、压缩、加密和封装成记录,然后通过TCP传输。SSL握手协议负责在通信开始时建立安全参数,包括版本号、密码套件、会话ID、随机数和主密钥。SSL改变密码规范协议负责在握手过程中通知对方使用新的安全参数。SSL警报协议负责在发生错误或关闭连接时发送警告消息。

SSL连接和SSL对话

SSL连接是指使用SSL协议建立的安全通信通道,它包括了身份验证、密钥协商和数据加密三个步骤。SSL对话是指在一个SSL连接中进行的一系列信息交换,它可以使用相同或不同的会话密钥进行加密。

北邮网络安全-虚拟专用网相关推荐

  1. 北邮网络安全-防火墙

    访问控制 联系操作系统中的文件安全,访问控制就是系统对用户或用户所在的组限制他们使用资源 访问控制的两个任务 识别和确认访问系统的用户 决定该用户可以对某一系统资源进行何种类型的访问 用户+权限 三要 ...

  2. 北邮 网络安全 期末复习 知识点总结之APT攻击

    APT攻击与检测 APT简介 高级持续性威胁(Advanced Persistent Threat) 攻击者掌握先进的专业知识和丰富有效的资源,通过 多种攻击途径(如网络.物理设施和欺诈手段等),实现 ...

  3. 北邮2019网络安全学业网络研究学院机试复试回忆版

    北邮2019网络安全学业&网络研究学院机试复试回忆版 Problem_A(牙膏问题): 输入: 输出: 回忆代码: Problem_B(闰年问题): 输入: 输出: 回忆代码: Problem ...

  4. 北邮20网安院面试问题汇总

    文章目录 英语 谈论家乡 谈论网安 谈论研究生规划 谈论职业规划 谈论家庭 空闲时间干嘛 喜欢的科目 面试问题 20 考研同学面试题样例-1 20 考研同学面试题样例-2 网上面试问题 网络安全和密码 ...

  5. 【北邮国院大三下】Cybersecurity Law 网络安全法 Week1【更新Topic4, 5】

    北邮国院大三电商在读,随课程进行整理知识点.仅整理PPT中相对重要的知识点,内容驳杂并不做期末突击复习用.个人认为相对不重要的细小的知识点不列在其中.如有错误请指出.转载请注明出处,祝您学习愉快. 编 ...

  6. 继清华之后,北邮成立人工智能研究院

    来源:北京邮电大学官网 据人民网报道,今天(7 月 19 日),北京邮电大学创新研究院在该校宏福校区正式揭牌成立.创新研究院下设人工智能.物联网.信息功能材料.网络空间安全和军民融合技术五个方向,逐步 ...

  7. 北邮计算机发展,北邮计算机学科前景怎样?升学就业如何?26日教授亲自来解读...

    原标题:北邮计算机学科前景怎样?升学就业如何?26日教授亲自来解读 各位家长,同学 2020年高考百日誓师时吹响的号角早已过去--于即将面对高考考验的学子而言,时间的流逝感日渐强烈,手中的纸笔也越攥越 ...

  8. 计算机远程控制相关考题,北邮远程计算机试题和答案.docx

    北邮远程计算机试题和答案 目前常用的保护计算机网络安全的技术性措施是防火墙防风墙KV300 JAVA 知识点:八.信息安全与网络道德学生答案:[A;]标准答案:A得分:[1]试题分值:1.0提示:?下 ...

  9. 【北邮国院大二下】产品开发与营销知识点整理 Topic11

    北邮国院大二电商在读,随课程进行整理知识点.仅整理PPT中相对重要的知识点,个人认为相对不重要的细小的知识点不列在其中.如有错误请指出.转载请注明出处 Topic 11 – Patents and I ...

最新文章

  1. R语言应用substr函数和substring函数抽取(extract)、删除(Remove)、替换、匹配(Match)特定的字符串、并对比两个函数的异同、grepl检查子字符串是否存在于字符串中
  2. Oracle的CASE语句和表达式
  3. Mybatisplus 自动生成字段 强制覆盖 null或者空字符串也覆盖
  4. 设计模式系列 - 原型模式
  5. Linux 命令(61)—— ldd 命令
  6. iOS app启动图片及icon图片及应用名设置
  7. QCalendarWidget 日历控件
  8. excel自动汇总多个工作表数据
  9. AR Foundation
  10. 解密保存Mac版微信聊天记录的数据库文件并导出聊天记录
  11. 干货来了,这些物联网基础知识你了解吗
  12. JAVA 技术方向赏金任务-快递 E 栈训练任务
  13. 荔枝架构实践与演进历程
  14. 【CSS】绝对定位元素设置 水平 / 垂直 居中 ( 绝对定位元素居中设置 - 先偏移 50% 再回退子元素一半尺寸 | 绝对定位居中设置 )
  15. 直播视频app源码,自定义可点击可滑动的通用RatingBar
  16. 我是一个叫world的单词,这是我的Hadoop WordCount之旅
  17. 论文理解 A Survey on Trajectory-Prediction Methods for Autonomous Driving
  18. 团贷网爆雷启示录:事发前早有预兆 激进资本运作致败局
  19. Java中进行日期先后顺序的比较
  20. iptables目标CHECKSUM

热门文章

  1. 微信搞笑图片带文字,糗事搞笑图片
  2. 做你想做的人,这件事,没有时间的限制,只要愿意,什么时候都可以开始
  3. 大数据:数据库类型简介
  4. 基于java和Sql Server数据库的停车场管理系统
  5. vsco使用教程_VSCO怎么使用 vsco新手使用教程
  6. kafka学习笔记(四) --- 压缩算法面面观
  7. pyqpanda中的线路矩阵与科罗内克张量积的验证
  8. [扫描线 线段树] BZOJ 4422 [Cerc2015]Cow Confinement
  9. 1一10到时的英文单词_1到10的英语单词怎么读?
  10. python中所有的异常类都是谁的子类_Python中所有的异常类都是____的子类。