星河飞雪网络安全-超文本协议与内外网划分篇

声明
       

        学习视频笔记均来自B站UP主" 泷羽sec",如涉及侵权马上删除文章,笔记的只是方便各位师傅学习知识,以下网站只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负

        本文主要用做技术分享,所有内容仅供参考。任何使用或者依赖于本文信息所造成的法律后果均与本人无关。请读者自行判断风险,并遵循相关法律法规。


目录

1.html简介

1.1 HTML 基本结构概述

1.2 文档类型声明(D0CTYPE)

1.3 HTML 根元素

1.4 头部部分

1.5 主体部分

2 http协议简介

2.1 HTTP/0.9

2.2 HTTP/1.0

2.3 HTTP/1.1

2.4 HTTP/2

2.5 HTTP/3

3 HTTP 协议有多种请求方法

4 HTTP 协议状态码

4.1 1xx 信息性状态码

4.2 2xx成功状态码

4.3 3xx 重定向状态码

4.4 4xx客户端错误状态码

4.5 5xx 服务器错误状态码

5 内外网的定义

5.1 内网(局域网)

5.2 外网(广域网)

5.3 公网地址

5.4 私网地址

6 docker基础命令


1.html简介

什么是HTML?
HTML 是用来描述网页的一种语言。
HTML 指的是超文本标记语言:HyperText Markup Language
HTML 不是一种编程语言,而是一种标记语言标记语言是一套标记标签(markup tag) 
HTML 使用标记标签来描述网页
HTML 文档包含了HTML 标签及文本内容
HTML 文档也叫做web 页面

1.1 HTML 基本结构概述

        HTML(超文本标记语言)网页有一个标准的结构,主要由以下几个关键部分组成:文档类型声明、HTML 根元素、头部(head)和主体(body)部分。这种结构为浏览器解析和显示网页内容提供了清晰的框架。

1.2 文档类型声明(D0CTYPE)

          <!DOCTYPE html>:这是 HTML5 的文档类型声明。它必须位于 HTML 文件的第一行,作用是告知浏览器文档所遵循的 HTML 版本,以便浏览器能够正确地渲染页面。对于HTML5来说,这个声明简洁明了,统一了 HTML 文档类型的标准,取代了以往复杂的 DTD 来说,(文档类型定义)声明。

1.3 HTML 根元素(<html>)

<html>:作为 HTML 文档的根标签,所有其他的 HTML 元素都被包含在它里面。它有开始标签<html>和结束标签</html>

这个标签界定了整个 HTML 文档的范围,浏览器会识
别其中的内容为有效的 HTML 代码。

1.4 头部部分(<head>)

<head>:   此部分包含了关于网页的元数据,这些信息对浏览器的渲染和网页的展示特性有重要作用,但不会直接在网页的可见区域显示。

<title>:  用于定义网页的标题,标题内容会显示在浏览器的标题栏或标签页上。
例如:<title>精彩网页世界</title>。这是用户识别网页的重要标识,同时也对搜索引擎优化(SE0)有一定影响。

<meta>:  用于提供多种类型的元数据。常见的有字符编码设置,如<metacharset="UTF - 8">,它确保浏览器能够正确解析和显示网页中的各种字符,支持多种语言的字符集。另外,还可用于设置页面描述、关键词等信息,如<meta name="description”content="这是一个充满趣味的网页">用于向搜索引擎描述网页内容,<meta name="keywords”content="网页,趣味,示例">可设置关键词帮助搜索引擎索引网页。

<link>:  主要用于链接外部资源,最常见的是连接 CSS 样式表。倒如:<link rel="stylesheet" href="styles.css">,其中rel="stylesheet" 表明这是一个样式表链接,href属性指定了CSS 文件的路径。通过这种方式,可以实现网页内容与样式的分离,方便网页设计和维护。

<script>:  可用于在HTML文档中嵌入 JavaScript 代码或引用外部的 JavaScript 文件。如果是嵌入代码。可以这样写:<script>alert('欢迎来到我的网页')</script>。若引用外部文件,则是<script src="script.js"></script>,这里src属性指定了JavaScript文件路径。脚本可以为网页添加交互功能。

1.5 主体部分(<body>)

<body>:  包含了所有在网页中可见的内容,如文本、图像、超链接、表格、表单等各种网页元素

文本元素:  可以使用段落标签<p>来组织文本,如<p>这是一段普通的文本内容。</p>。标题标签<h1>-<h6>可用于创建不同级别的标题,<h1>表示最高级别的标题,重要性依次递减,例如<h1>主标题</h1><h2>副标题</h2>。

图像元素:  使用<img>标签来插入图像,如<imgsrc="image.jpg”alt="图像描述,src属性指定图像的来源路径,alt属性在图像无法正常显示时提供替代文本,对于可访问性和 SE0 都很重要。

超链接元素:  通过<a>标签创建超链接,如<a href="https://www.example.com"点击这里</a>,href属性定义了链接的目标 URL,标签内的文本是用户看到的可点击的链接内容

表格元素:使用<table>标签创建表格,<tr>表示表格行,<td>表示表格单元格
例如:

<table>
    <tr>
       <td>单元格1</td>
       <td>单元格2</td>
    </tr>
    <tr>
        <td>单元格3</td>
        <td>单元格4</td>
     </tr>
</table>

表单元素:  用于收集用户输入信息,例如<form>标签包含表单内容,<input>标签用干创建各种输入框,如<input type="text" placeholder="请输入用户名">用于创建一个文本输入框,type属性指定输入类型,placeholder属性显示提示文本。
以下是一个完整的简单 HTML 网页示例:

<!DOCTYPE html>
<htm>
<head>
         <title>示例双页</title>
<meta charset="UTF-8">
</head>
<body>
         <h1>欢迎来到示例网页</h1>
         <p>这是网页的主要内容部分,这里可以展示各种信息。</p>
         <img src="example.jpg" alt="示例冬片">
         <a href="https://www.baidu.com">访问示例网站</a>
</body>
</html>


2 http协议简介

        HTTP协议是Hypertext Transfer Protocol(也称为超文本传输协议)的缩写,是用于从万维网(www:world wide web)服务器传输超文本到本地浏览器的传送协议
http协议工作于客户端-服务端(browser/sever)B/S架构上。
浏览器作为http客户端通过ur!向http服务端即web服务器发送所有请求。web服务器根据接收到的请求后,向客户端发送响应信息。

        HTTP(超文本传输协议)经历了多个版本的发展,每个版本都在性能、功能和安全性等方面有所改进。以下是对各个 HTTP 协议版本的全面介绍:

2.1 HTTP/0.9

诞生背景:
       互联网发展初期,对网页的需求较为简单,主要是纯文本内容的传输
       主要特性:仅支持 GET 请求,用于获取 HTML 文档。
       没有请求头和响应头,通信极为简洁。
       只能传输纯文本内容,不支持多媒体资源。
使用场景:
       早期简单的网页浏览,通常是一些静态的文本页面。

2.2 HTTP/1.0

诞生背景:
      随着互联网的发展,人们对网页的内容和交互性有了更高的要求。
      主要特性:引入了请求头和响应头,包含了一些基本的元信息,如文档类型、日期等。
      支持多种请求方法,如 GET、POST 和 HEAD。
      但每次请求都需要建立新的 TCP 连接,传输完成后立即断开,效率较低。
使用场景:
      适用于一些简单的网页浏览和交互场景,但对于包含大量资源的网页,加载速度较慢。

2.3 HTTP/1.1

诞生背景:
      为了解决 HTTP/1.0 连接频繁建立和断开的问题,提高网页加载速度和性能。
主要特性:
      持久连接(Keep-Alive),允许在一个 TCP 连接上发送多个请求和响应,减少连接建立的开销
      管道化(Pipelining),客户端可以在一个连接上连续发送多个请求,但服务器的响应顺序必须与请求顺序一致。
      增加了更多的请求方法,如 PUT、DELETE、OPTIONS 等。
      引入缓存控制机制,通过头部字段控制缓存的使用。
使用场景:
      目前广泛应用于大多数网站和 Web 用程序,是较为成熟和稳定些版本。

2.4 HTTP/2

诞生背景:
      随着 Web 应用的日益复杂,用户对网页加载速度和性能的要求越来越高HTTP/1.1 在一些方面存在局限性
主要特性:
       二进制分帧,将 HTTP 消息分解为更小的帧进行传输,提高传输效率和灵活性。
       多路复用,可在一个连接上同时处理多个请求和响应,无需按顺序发送,提高并发处理能力
       头部压缩,使用 HPACK 算法对头部进行压缩,减少传输的数据量。
        服务器推送,服务器可以主动向客户端推送资源,提高页面加载速度。
使用场景:
        对于性能要求较高的现代 Web 应用,特别是需要快速加载大量资源的场景。

2.5 HTTP/3

诞生背景:
       虽然 HTTP/2 在性能上有了很大提升,但它仍然基于 TCP 协议,而 TCP 在一些情况下可能会出现连接建立时间长、丢包重传效率低等问题。
主要特性:
       基于 QUIC 协议,一种基于 UDP 的传输协议,具有更快的连接建立时间和更好的拥塞控制机制。
       0-RTT 连接建立,在某些情况下可以在第一次连接时就开始发送数据,减少延迟
输效率。
       连接迁移,即使网络环境发生变化,连接也可以保持。
       前向纠错,在数据传输过程中可以检测和纠正一些错误,减少重传次数,提高传输效率。
使用场景:
       对延迟敏感的应用,如在线游戏、实时视频通信等,以及在网络环境不稳定的情况下,能够提供更好的性能和可靠性。


3 HTTP 协议有多种请求方法

一、GET
用途:
       用于请求指定的资源。这是最常见的请求方法,当你在浏览器中输入网址并访问时,通常会发送 GET 请求。
特点:
       GET 请求可以被缓存,除非指定了特定的缓存控制头部。 
       GET 请求的参数通常附加在 URL 中,这使得它们可以被轻松地分享和书签,但也可能会暴露敏感信息,并且有长度限制。
       GET 请求是安全的,即它不会对服务器上的资源进行修改。

二、POST
用途:
       通常用于向服务器提交数据,以创建或更新资源。例如,在提交表单、上传文件等场景中经常使用。
特点:
        POST 请求的数据通常放在请求体中,而不是 URL 中,因此可以传输更大量的数据,并且相对更安全,不容易暴露敏感信息。
        POST 请求一般不会被缓存。

三、PUT
用途:
        用于更新服务器上的资源,PUT 请求通常会将整个资源进行替换。
特点:
        PUT 请求是幂等的,即多次发送相同的 PUT 请求应该产生相同的结果。

四、DELETE
用途:
        用于删除服务器上的指定资源。
        特点:DELETE 请求也是幂等的,多次删除同一个资源应该产生相同的结果,即资源被删除后再次删除不会产生错误。

五、HEAD
用途:
        与 GET 请求类似,但只返回头部信息,不返回资源的主体内容。
特点:
        可以用于检查资源的存在性、获取资源的元信息(如最后修改时间、内容长度等),而无需下载整个资源,从而节省带宽和时间。

六、OPTIONS
用途:
        用于获取服务器支持的 HTTP 请求方法和其他选项。
特点:
        客户端可以通过 OPTIONS 请求了解服务器对特定资源的访问权限和支持的操作。

七、TRACE
用途:
        用于诊断和调试,客户端可以发送 TRACE 请求来查看请求在网络中经过的路径。
特点:
        通常在开发和测试环境中使用,以了解请求的处理过程。

这些请求方法为客户端与服务器之间的交互提供了丰富的方式,使得 web 应用能够实现各种不同的功能。

HTTP协议之url
https://www.baidu.com/web/579.html?replytocom=22#respond
协议://域名:端口/虚拟目录/文件名?参数#锚点


4 HTTP 协议状态码

4.1 1xx 信息性状态码

100 Continue:
        表示目前为止一客户端可以继续发送请求或者忽略这个响应。一般在客切正常,"户端发送 POST 请求时,当请求体较大,服务器可能先返回这个状态码,表示可以继续发送请求体。

4.2 2xx成功状态码

200 OK:
       最常见的成功状态码,表示请求已成功,服务器已成功返回请求的数据。
201Created:
        表示请求已成功,并在服务器上创建了新的资源。通常在 POST 请求用于创建资源时返回。
204 No Content:
        表示请求已成功处理,但没有返回任何内容。通常用于 PUT 或 DELETE 请求成功后,表示资源已被更新或删除。

4.3 3xx 重定向状态码

301 Moved Permanently:
         表示请求的资源已被永久移动到新的 URL,客户端应使用新的 URL 进行后续请求。
302 Found:
         表示请求的资源临时被移动到了另一个 URL,客户端应继续使用原有 URL 进行请求,但可以根据响应中的 Location 头部字段进行重定向。
304 Not Modified:
         表示资源未被修改,客户端可以使用缓存的版本。通常在客户端发送条件请求(如带有|f-Modified-Since 或lf-None-Match 头部)时返回。

4.4 4xx客户端错误状态码

400 Bad Request:
         表示客户端发送的请求有语法错误或无法被服务器理解。
401Unauthorized:
         表示请求需要用户认证,通常是因为客户端没有提供有效的身份验证凭证。
403 Forbidden:
         表示服务器理解请求,但拒绝执行,通常是因为客户端没有足够的权限访问资源。
404 Not Found :
         表示服务器无法找到请求的资源。
405 Method Not Allowed:
         表示请求的方法不被允许,例如使用了不支持的 HTTP 方法请求某个资源。

4.5 5xx 服务器错误状态码

500 internal Server Error.
        表示服务器在处理请求时发生了内部错误,通常是服务器端的程序出现了异常。
502Bad Gateway :
        表示作为网关或代理的服务器在尝试执行请求时,从上游服务器接收到无效的响应。
503Service Unavailable:
        表示服务器暂时无法处理请求,通常是由于服务器过载或正在进行维护
504Gateway Timeout:
        表示作为网关或代理的服务器在等待上游服务器响应时超时。


5 内外网的定义

5.1 内网(局域网)

定义:

        内网通常是指一个组织或机构内部的网络,它的范围相对较小,一般局限于一个办公室、一栋楼或者·一个企业园区内。
特点:

        较高的安全性:由于内网与外部网络相对隔离,外部用户难以直接访问内网资源因此内网通常具有较高的安全性。可以通过设置访问控制策略、防火墙等措施来进一步加强安全防护。
高效的资源共享:
        内网中的设备可以方便地共享文件、打印机、数据库等资源,提高工作效率。例如,在企业内部,员工可以快速访问共享的文档和数据,进行协作办公
稳定的网络性能:
        内网的网络性能相对稳定,因为它的用户数量和流量通常是可控的。可以通过优化网络架构、配置合适的网络设备来确保内网的高速稳定运行。
用途:
        企业办公:企业内部的员工可以通过内网进行文件共享、邮件通信、办公自动化等工作。例如,使用企业内部的办公软件进行项目管理、流程审批等。
学校教学:
        学校可以建立内网,供师生进行教学资源共享、在线学习、考试管理批型例如,学生可以在内网上访问教学课件、提交作业,教师可以进行在线批改和成绩管理。
医疗机构:
        医院内部的医疗系统通常运行在内网上,以确保患者信息的安全和医疗业务的稳定进行。例如,医生可以在内网上查看患者病历、开具处方,护士可以进行护理记录和医嘱执行。

5.2 外网(广域网)

定义:
       外网是指连接全球各地的网络,通常由互联网服务提供商(ISP)提供接入服务外网的范围非常广泛,可以覆盖全球各个角落。
特点:
       开放性:外网是开放的,任何人都可以通过合适的方式接入外网,获取各种信息和服务。但这也带来了一定的安全风险,如网络攻击、信息泄露等。
丰富的资源:
       外网上拥有海量的信息和服务资源,用户可以通过搜索引擎媒体、电子商务等平台获取各种所需的信息和服务。例如,在网上购物、番沟新面、观名视频等。
动态性:
       外网的网络环境是动态变化的,网络流量、用户行为等因素都会影响外网的性能和稳定性。因此,外网的服务质量可能会有所波动。
用途:
        信息获取:用户可以通过外网获取各种新闻、知识、娱乐等信息。例如,通过搜索引擎查询资料,阅读在线新闻,观看电影和电视剧等。
社交互动:
        外网提供了各种社交平台,用户可以与朋友、家人、同事等进行交流和互动。例如,使用社交媒体发布动态、分享照片,进行在线聊天和视频通话等。
电子商务:
        用户可以通过外网进行在线购物、支付等电子商务活动。例如,在网上购买商品、预订旅游服务、缴纳水电费等。

总之,内外网的划分是为了满足不同的网络需求和安全要求。内网提供了安全高效的内部资源共享和办公环境,外网则为用户提供了丰富的信息和服务资源。在实际应用中,实要根据具体情况合理划分内外网,并采取相应的安全措施来保护网络安全。

公网和私网地址在内外网划分中起着重要作用。

5.3 公网地址

定义:
          公网地址也称为全球唯一IP 地址,是由互联网服务提供商(ISP)分配给用户的,可以在全球互联网上被唯一识别的地址。
特点:
          全球唯一性:公网地址在全球范围内是唯一的,不同的设备不能拥有相同的公网地址。
可路由性:
          公网地址可以在互联网上被路由,使得不同网络中的设备可以相互通信。
有限性:
          由于 IPv4 地址资源有限,公网地址的数量也是有限的。随着互联网的发展,公网地址的需求不断增加,导致公网地址资源日益紧张。
用途:
          服务器托管:如果企业或个人需要将自己的服务器托管在数据中心,就需要使用公网地址,以便让全球用户都能够访问到服务器上的服务。
网站建设:
         网站服务器需要公网地址才能被互联网上的用户访问。
远程办公:
         对于需要远程访问公司内部网络资源的员工,公司可以为其分配公网地址,以便通过 VPN 等技术实现远程访问。

5.4 私网地址

定义:
        私网地址也称为本地|P 地址,是在一个组织或机构内部使用的IP 地址,不能在全球互联网上被直接访问。
特点:
        可重复使用:私网地址可以在不同的组织或机构内部重复使用,因为它们不会在全球互联网上被路由。
灵活性:
        私网地址的分配可以由组织或机构内部自行管理,具有较高的灵活性。
安全性:
        由于私网地址不能在全球互联网上被直接访问,因此可以提高网络的安全性,减少外部攻击的风险。
用途:
        企业内部网络:企业可以使用私网地址构建自己的内部网络,实现内部设备之间的通信和资源共享。
家庭网络:
        家庭用户可以使用私网地址构建自己的家庭网络,连接多台设备,如电脑、手机、智能电视等。
无线网络:
        无线接入点(如无线路由器)通常会为连接的设备分配私网地址,以便在家庭或企业内部实现无线网络覆盖。

常见的私网地址范围包括:
10.0.0.0- 10.255.255.255
172.16.0.0- 172.31.255.255
192.168.0.0- 192.168.255.255

总之,公网地址和私网地址在网络中都有各自的用途。公网地址用于在全球互联网上进行而私网地址则用于在组织或机构内部构建本地网络。在实际应用中,需要根据具体情况合理分配和使用公网地址和私网地址,以满足不同的网络需求。


6 docker基础命令

docker pull  镜像名称:版本    # 从仓库拉取镜像
docker run   -d -p 物理机端口号:容器端口号 镜像名称:版本    # 运行镜像,生成容器
docker push 仓库地址/镜像名/tag     # 推送镜像到仓库
docker build dockerFile文件路径    # 构建镜像
docker commit      # 生成镜像
docker ps -a -n=1 # -n显示最近创建的容器   -n=2显示最近创建的2个
docker exec it 容器id /bin/bash  # 进入容器的命令行
# 退出容器
exit; #容器停止运行退出
Ctrl + P + Q     # 容器不停止运行退出
docker logs -tf --tail 10 容器id  # 查看日志信息输出最新10行   -tf 时间戳 基本格式
# 删除容器
docker rm 容器id   # 删除指定容器id,运行中的删除增加rm -f 
docker rm -f &amp;(docker ps -aq)  # 删除所有的容器,查询条件
# 容器的启动和停止
docker start 容器id # 启动容器 restart # 重启 stop # 停止 kill # 强制干掉 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值