一、前语

本系列文章旨在温习核算机网络中心常识,进一步夯实基础,为以后 参加物联网、音视频、直播、即时通讯等范畴的项目做必定的常识储备。

文章列表:

  • 01-核算机网络中心常识|核算机网络通识【核算机网络性能指标、网络协议分层的几种方法、OSI七层模型概念通识】
  • 02-核算机网络中心常识|【建立调试环境、新建Java项目、核算机通讯基础、核算机衔接方法、集线器/网桥/交换机/路由器】
  • 03-核算机网络中心常识|【MAC地址、IP地址的组成、IP地址的分类、CIDR、子网掩码、超网】
  • 04-核算机网络中心常识|【 静态路由、动态路由、数据包的传输、ISP、服务器机房、网络分类、家用无线路由器、公网IP、
  • 05-核算机网络中心常识|物理层/数据链路层【模拟信号&&数字信号、数据链路层】
  • 06-核算机网络中心常识|网络层【IP数据包Packet、网络协议、Checksum、源IP地址和方针IP地址、ping】
  • 07-核算机网络协议中心常识|【传输层-UDP】
  • 08-核算机网络协议中心常识|【传输层-TCP之可靠传输】
  • 09-核算机网络中心常识|传输层TCP2【流量操控原理、拥塞操控:slow start、congestion avoidance、快速重传、快速康复】
  • 10-核算机网络协议中心常识|【传输层-TCP衔接】
  • 11-核算机网络协议中心常识|【 应用层】
  • 12-核算机网络中心常识|【Cookie、Session(概念、生命周期、有效期、浏览器的要求等)、跨域(概念、 同源战略、跨域解决方
  • 13-核算机网络协议中心常识|【 署理/CDN/网络安全】
  • 14-核算机网络协议中心常识|【(非)对称加密/数字签名/证书】
  • 15-核算机网络协议中心常识|【HTTPS
  • 16-核算机网络中心常识|HTTPS协议【HTTP2、HTTP3】

本文首要重视:

  • 什么是署理?
  • CDN的作用是什么?
  • 网络安全的攻防注意点有哪些?

二、署理

13-计算机网络核心知识|【 网络代理(正向代理、反向代理、抓包工具原理)、CDN、网络安全(ARP欺骗与防护、网络攻击与防御、DNS网络劫持、数据加密)】

1. 署理服务器(Proxy Server

特色: 自身不生产内容,处于中心方位转发上下游的恳求和呼应。

  • 面向下游的客户端:它是服务器(正向署理)
  • 面向上游的服务器:它是客户端(反向署理)

13-计算机网络核心知识|【 网络代理(正向代理、反向代理、抓包工具原理)、CDN、网络安全(ARP欺骗与防护、网络攻击与防御、DNS网络劫持、数据加密)】

1.1. 正向署理

署理的对象是客户端。

作用:

  • 躲藏客户端身份
    • 网络恳求运用的是署理服务器IP,所以不会露出客户端IP(但实际上是能够获取的,你懂得!!!)
  • 绕过防火墙(突破拜访约束)
    • 比方经常运用的科学上网东西便是干这个的
  • Internet拜访操控
    • 路由器设置指定服务器答应上网,其他客户端假如想要上网只能经过指定的服务器,而这台服务器经过判断客户端IP决定其是否能够交互数据,这台服务器便是署理服务器
  • 数据过滤
    • 署理服务器经过规矩解析数据内容,决定数据是否过滤
  • ……

13-计算机网络核心知识|【 网络代理(正向代理、反向代理、抓包工具原理)、CDN、网络安全(ARP欺骗与防护、网络攻击与防御、DNS网络劫持、数据加密)】

免费的正向署理:ip.jiangxianli.com、https://www.kuaida…

1.2. 反向署理

署理的对象是服务器。

作用:

  • 躲藏服务器身份
  • 安全防护
  • 负载均衡
  • ……

13-计算机网络核心知识|【 网络代理(正向代理、反向代理、抓包工具原理)、CDN、网络安全(ARP欺骗与防护、网络攻击与防御、DNS网络劫持、数据加密)】

上图中的负载均衡服务器便是一个反向署理,为服务器服务的。当用户拜访指定服务器时,数据会经过负载均衡服务器进行转发。这样不只能够躲藏实在服务器的身份,还能经过一些算法让服务器安稳运转。

1.3. 署理服务器相关的头部字段

Via:追加经过的每一台署理服务器的主机名(或域名X-Forwarded-For:追加恳求方的IP地址 X-Real-IP:客户端的实在IP地址

13-计算机网络核心知识|【 网络代理(正向代理、反向代理、抓包工具原理)、CDN、网络安全(ARP欺骗与防护、网络攻击与防御、DNS网络劫持、数据加密)】

  • Via:署理1 X-Forwarded-For:14.14.14.14 X-Real-IP:14.14.14.14
  • Via:署理1、署理2 X-Forwarded-For:14.14.14.14、220.11.11.11 X-Real-IP:14.14.14.14
  • Via:署理2
  • Via:署理2、署理1

2. 抓包东西的原理

Fiddler、Charles等抓包东西的原理:在客户端启动了正向署理服务。

13-计算机网络核心知识|【 网络代理(正向代理、反向代理、抓包工具原理)、CDN、网络安全(ARP欺骗与防护、网络攻击与防御、DNS网络劫持、数据加密)】

Wireshark不是署理,它的原理是:经过底层驱动,阻拦网卡上流过的数据。

三、CDN

CDN(Content Delivery Network 或 Content Distribution Network),译为:内容分发网络。

作用: 运用最靠近每位用户的服务器,更快更可靠的将音乐、图片、视频等资源文件(一般是静态资源)传递给用户。

CDN呈现之前,一切的内容都是从一台服务器取:

13-计算机网络核心知识|【 网络代理(正向代理、反向代理、抓包工具原理)、CDN、网络安全(ARP欺骗与防护、网络攻击与防御、DNS网络劫持、数据加密)】

CDN呈现之后,内容就从距离用户最近的一台服务器取:

13-计算机网络核心知识|【 网络代理(正向代理、反向代理、抓包工具原理)、CDN、网络安全(ARP欺骗与防护、网络攻击与防御、DNS网络劫持、数据加密)】

13-计算机网络核心知识|【 网络代理(正向代理、反向代理、抓包工具原理)、CDN、网络安全(ARP欺骗与防护、网络攻击与防御、DNS网络劫持、数据加密)】

对比:

13-计算机网络核心知识|【 网络代理(正向代理、反向代理、抓包工具原理)、CDN、网络安全(ARP欺骗与防护、网络攻击与防御、DNS网络劫持、数据加密)】

CDN运营商在全国、乃至全球的各大枢纽城市都建立了机房。布置了大量拥有高存储高带宽的节点,构建了一个跨运营商、跨地域的专用网络。内容一切者向CDN运营商付出费用,CDN将其内容交付给最终用户。

举例,运用CDN引进jQuery:


<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script>
    $(() => {
        $(document.body).css('background', '#f00')
    })
</script>

不是域名包含CDN便是CDN服务器。

四、网络安全

网络通讯中面对的4种安全威胁:

13-计算机网络核心知识|【 网络代理(正向代理、反向代理、抓包工具原理)、CDN、网络安全(ARP欺骗与防护、网络攻击与防御、DNS网络劫持、数据加密)】

截获:偷听通讯内容 中止:中止网络通讯 篡改:篡改通讯内容 假造:假造通讯内容

1. 网络层-ARP诈骗

ARP诈骗(ARP spoofing),又称ARP毒化(ARP poisoning)、ARP病毒、ARP进犯。

ARP诈骗能够造成的作用:

  • 可让进犯者获取局域网上的数据包甚至可篡改数据包
  • 可让网络上特定电脑之间无法正常通讯(例如网络执法官这样的软件)
  • 让送至特定IP地址的流量被过错送到进犯者所取代的地方
  • ……

ARP诈骗中心过程举例:

  • 假定主机C是进犯者,主机A、B是被进犯者
  • C只要收到过A、B发送的ARP恳求,就会拥有A、B的IP、MAC地址,就能够进行诈骗活动
  • C发送一个ARP呼应给B,把呼应包里的源IP设为A的IP地址,源MAC设为C的MAC地址
  • B收到ARP呼应后,更新它的ARP表,把A的MAC地址(IP_A、MAC_A)改为(IP_A、MAC_C)
  • 当B要发送数据包给A时,它依据ARP表来封装数据包的头部,把方针MAC地址设为MAC_C、而非MAC_A
  • 当交换机收到B发送给A的数据包时,依据此包的方针MAC地址(MAC_C)而把数据包转发给C
  • C收到数据包后,能够把它存起来后再发送给A,到达偷听作用。C也能够篡改数据后才发送数据包给A

1.1 ARP诈骗的防护

  • 运用静态ARP
  • 凭借DHCP Snooping
    • 网络设备可借由DHCP保留网络上各电脑的MAC地址,在假造的ARP数据包宣布时即可侦测到
  • 运用一些软件监听ARP的不正常变动
  • ……

2. DoS、DDoS

DoS进犯(回绝服务进犯,Denial-of-Service attack),使方针电脑的网络或体系资源耗尽,使服务暂时中止或停止,导致其正常用户无法拜访。

Dos进犯能够分为2大类:

  • 带宽耗费型:UDP洪水进犯、ICMP洪水进犯
    • 不断向服务器运用UDP或ICMP传输数据,占满其带宽,导致服务器拜访过载直至宕机。
  • 资源耗费型:SYN洪水进犯、LAND进犯

DDoS(分布式回绝服务进犯,Distributed Denial-of-Service attack)。黑客运用网络上两个或以上被进犯的电脑作为“僵尸”向特定的方针发起DoS进犯。

2018年3月,GitHub遭到迄今为止规划最大的DDoS进犯。

2.1. 传输层-SYN洪水进犯

SYN洪水进犯(SYN flooding attack)。进犯者发送一系列的SYN恳求到方针,然后让方针因收不到ACK(第3次握手)而进行等待,耗费资源。

进犯方法:

  • 越过发送最终的ACK信息
  • 修改源IP地址,让方针送SYN-ACK到假造的IP地址,因而方针永不可能收到ACK(第3次握手)

防护:参考RFC_4987

2.2. 传输层-LAND进犯

LAND进犯(局域网拒接服务进犯,Local Area Network Denial attack)。经过继续发送相同源地址和方针地址的诈骗数据包,使方针视图与自己建立衔接,耗费体系资源直至溃散。

有些体系存在规划上的缺点,答应设备接受并呼应来自网络、却声称来自于设备自身的数据包,导致循环应对。

防护:

  • 大多数防火墙都能阻拦类似的进犯包,以保护体系
  • 部分操作体系经过发布安全补丁修复了这一漏洞
  • 路由器应同时装备上行与下行筛选器,屏蔽一切源地址与方针地址相同的数据包

3. DoS、DDoS防护

防护方法通常为:侵略检测、流量过滤、多重验证。堵塞网络带宽的流量将被过滤,而正常的流量可正常经过。

防火墙:防火墙能够设置规矩,例如答应或回绝特定通讯协议,端口或IP地址。

  • 当进犯从少数不正常的IP地址宣布时,能够简单的运用回绝规矩阻挠一切从进犯源IP宣布的通讯
  • 杂乱进犯难以用简单规矩来阻挠,例如80端口遭受进犯时不可能回绝端口一切的通讯,因为同时会阻挠合法流量
  • 防火墙可能处于网络架构中过后的方位,路由器可能在歹意流量到达防火墙前即被进犯影响

交换机:大多数交换机有必定的速度约束和拜访操控才能。

路由器:和交换机类似,路由器也有必定的速度约束和拜访操控才能。

黑洞引导:将一切受进犯核算机的通讯全部发送至一个“黑洞”(空接口或不存在的核算机地址)或许有满足才能处理激流的网络设备商,以避免网络受到较大影响。

流量清洗:当流量被送到DDoS防护清洗中心时,经过选用抗DDoS软件处理,将正常流量和歹意流量区分开。正常的流量则回注回客户网站。

4. 应用层-DNS绑架

DNS绑架,又称为域名绑架。进犯者篡改了某个域名的解析成果,使得指向该域名的IP变成了另一个IP。导致对应网址的拜访被绑架到另一个不可达的或许假冒的网址。从而完成非法盗取用户信息或许损坏正常网络服务的目的。

为避免DNS绑架,能够考虑运用更靠谱的DNS服务器,比方:114.114.114.114

  • 谷歌8.8.8.88.8.4.4
  • 微软:4.2.2.14.2.2.2
  • 百度:180.76.76.76
  • 阿里:223.5.5.5223.6.6.6

5. 应用层-HTTP绑架

HTTP绑架是对HTTP数据包进行阻拦处理,比方插入JS代码。

最常见的是在拜访某些网站时,在右下角多了个不可思议的弹窗广告。

6. HTTP协议的安全问题

HTTP协议默认是选用明文传输的,因而会有很大的安全隐患。常见的进步安全性的方法是:对通讯内容进行加密后,再进行传输。

常见的加密方法:

  • 不可逆
    • 单向散列函数:MD5、SHA等
  • 可逆
    • 对称加密:DES、3DES、AES等
    • 非对称加密:RSA等
  • 其他
    • 混合暗码体系
    • 数字签名
    • 证书

常见英文:encrypt(加密)、decrypt(解密)、plaintext(明文)、ciphertext(密文)。

7. 怎么避免被偷听?

为了便于区分,规划4个虚拟人物: Alice、Bob:彼此通讯 Eve:偷听者 Mallory:主动进犯者

13-计算机网络核心知识|【 网络代理(正向代理、反向代理、抓包工具原理)、CDN、网络安全(ARP欺骗与防护、网络攻击与防御、DNS网络劫持、数据加密)】

13-计算机网络核心知识|【 网络代理(正向代理、反向代理、抓包工具原理)、CDN、网络安全(ARP欺骗与防护、网络攻击与防御、DNS网络劫持、数据加密)】

加密:

13-计算机网络核心知识|【 网络代理(正向代理、反向代理、抓包工具原理)、CDN、网络安全(ARP欺骗与防护、网络攻击与防御、DNS网络劫持、数据加密)】

常见的加解密地址: MD5加密:www.cmd5.com/hash.aspx MD5解密:www.cmd5.com 其他加密:www.sojson.com/encrypt_des…

8. 单向散列函数(One-way hash function

单向散列函数,能够依据音讯内容核算出散列值。

单向散列函数也被称为:音讯摘要函数(message digest function)、哈希函数(hash function)。

输出的散列值也被称为:音讯摘要(message digest)、指纹(fingerprint

散列值的长度和音讯的长度无关,不管音讯是1bit、10M、100G,单向散列函数都会核算出固定长度的散列值。

13-计算机网络核心知识|【 网络代理(正向代理、反向代理、抓包工具原理)、CDN、网络安全(ARP欺骗与防护、网络攻击与防御、DNS网络劫持、数据加密)】

特色:

  • 依据恣意长度的音讯,核算出固定长度的散列值
  • 核算速度快,能快速核算出散列值
  • 音讯不同,散列值也不同
  • 具备单向性

13-计算机网络核心知识|【 网络代理(正向代理、反向代理、抓包工具原理)、CDN、网络安全(ARP欺骗与防护、网络攻击与防御、DNS网络劫持、数据加密)】

13-计算机网络核心知识|【 网络代理(正向代理、反向代理、抓包工具原理)、CDN、网络安全(ARP欺骗与防护、网络攻击与防御、DNS网络劫持、数据加密)】

8.1. 常见的几种单向散列函数

  • MD4、MD5
    • 发生128bit的散列值,MD便是Message Digest的缩写,现在现已不安全
  • SHA-1
    • 发生168bit的散列值,现在现已不安全
  • SHA-2
    • SHA-256、SHA-384、SHA-512,散列值长度分别是256bit、384bit、512bit
  • SHA-3
    • 全新规范

8.2. 怎么避免数据被篡改?

  1. 怎么保证两个文件是相同的?
    13-计算机网络核心知识|【 网络代理(正向代理、反向代理、抓包工具原理)、CDN、网络安全(ARP欺骗与防护、网络攻击与防御、DNS网络劫持、数据加密)】
  2. 原始做法便是拷贝一份进行比较(非常粗笨)。
    13-计算机网络核心知识|【 网络代理(正向代理、反向代理、抓包工具原理)、CDN、网络安全(ARP欺骗与防护、网络攻击与防御、DNS网络劫持、数据加密)】
  3. 核算比较散列值(引荐)。
    13-计算机网络核心知识|【 网络代理(正向代理、反向代理、抓包工具原理)、CDN、网络安全(ARP欺骗与防护、网络攻击与防御、DNS网络劫持、数据加密)】

在下载软件的时分,有些网站就会供给软件包的哈希值(比方:IDEA),避免软件包被非法篡改,我们就能够在镜像网站(速度快)下载安装包后核算出哈希值,然后和官方软件包的哈希值做比较,以保证软件完整性。

13-计算机网络核心知识|【 网络代理(正向代理、反向代理、抓包工具原理)、CDN、网络安全(ARP欺骗与防护、网络攻击与防御、DNS网络劫持、数据加密)】