HTTP协议解析
HTTP即超文本传输协议,是一种详细规定了浏览器和万维网服务器之间互相通信的规则,它是万维网交换信息的基础,它允许将HTML文档从WEB服务器传输到WEB浏览器。
url(同一资源定位符),也称为网页地址,是互联网标准的地址。
url格式:协议://ip(域名)[:端口]/路径[?查询]
HTTP请求包括请求行、请求头、请求正文,HTTP响应包括响应行、响应头、响应正文。
HTTP头由四部分组成,分别是请求头、响应头、普通头和实体头
- 请求头只出现在HTTP请求时,请求报头允许客户端向服务器端传递请求的附加消息和客户端的自身消息。常见的HTTP请求头有:HOST、User-agent、Referer、Cookie、Range、X-Forwarded-For、Accept等
- 响应头是服务器根据请求向客户端发送的HTTP头。常见的有Server(服务器所使用的web服务器名称)、Set-Cookie(向客户端设置Cookie)、Last-Modified(资源最后修改时间)等。
- 普通头一般只用于传输的消息。
- 实体头定义了关于实体正文和请求所标示的资源的元消息,元消息也就是实体内容的属性,包括信息类型、长度、压缩方法、最后一次修改时间等。
web服务组件
层次 | 实例 |
---|---|
第三方内容 | 广告统计、mockup |
Web前端框架 | jQuery、Bootstrap、HTML5框架 |
Web应用 | BBS、CMS、BLOG |
Web开发框架 | Django、Rails、ThinkPHP |
Web服务端语言 | PHP、JSP、.NET |
Web容器 | Apache、IIS、Nginx |
存储 | 数据库存储、内存存储、文件存储 |
操作系统 | Linux、Windows |
IP地址详解
局域网:一般称为内网
简单的局域网构成:交换机、网线、PC
交换机:用来组建内网的局域网设备
IP地址: ip地址是唯一标识,是一段网络编码,由32位二进制组成
局域网通信规则:在同一局域网中,所有的ip地址必须在同一网段中才能互相通信。
ip地址构成:网络位+主机位(网络位相同的ip地址,成为同一网段)
子网掩码: 用来确定IP地址的网络位 子网掩码如何确认网络位:与255对应的数字为网络位,与0对应的数字为主机位
IP地址分类: 以ip地址的第一位进行划分
- A类: 1-126 默认子网掩码:255.0.0.0
- B类: 128-191 默认子网掩码:255.255.0.0
- C类: 192-223 默认子网掩码:255.255.255.0
- D类: 224-239 组播地址
- E类: 240-254 科研使用
ip地址主机位全部为0代表网段,全部为1代表广播地址
如ip10.1.1.1,子网掩码255.255.255.0,该ip为A类地址,10.1.1.0为网段,10.1.1.255为广播地址。
网关:网络的出口,一般配置在路由器上(一般设置为网段的第一个ip或最后一个ip)
路由器:可用连接内外网设备。
PC向外发包: 首先判断目标ip是否跟自己一个网段,如果是一个网段,则直接发出去,如果不是一个网段,则发给网关。
DNS:Domain Name Service,域名解析系统
缓存->host文件->DNS服务器
用户与组管理
每一个用户登录操作系统后,拥有不同权限,每个用户拥有自己的唯一SID(安全标识符),SID由系统SID和UID组成,windows的administrator默认UID是500,linux的root默认UID是0
账户密码存储位置:c:\windows\system32\config\SAM
windows服务器默认密码有效期为42天
用户管理命令:net user
net user #查看用户列表
net user 用户名 密码 #改密码
net user 用户名 密码 /add #创建一个新用户
net user 用户名 /del #删除一个用户
net user 用户名 /active:yes/no #激活或禁用账户
组管理:作用:简化权限的赋予
内置组:
1)administrators # 管理员组
2)guests # 来宾组
3)users # 普通用户组,默认新建用户都属于该组
4)network # 网络配置组
5)print # 打印机组
6)Remote Desktop # 远程桌面组
组管理命令:
net localgroup # 查看组列表
net localgroup 组名 # 查看该组的成员
net localgroup 组名 /add # 创建一个新的组
net localgroup 组名 用户名 /add # 添加用户到组
net localgroup 组名 用户名 /del # 从组中踢出用户
net localgroup 组名 /del # 删除组
服务器远程管理
windows服务器远程管理分为两种:
1.远程桌面(图形)3389端口
2.telnet(命令行)23端口
NTFS安全权限
- 通过设置NTFS权限,实现不同的用户访问不同的权限
- 分配了正确的访问权限后,用户才能访问其资源
- 设置权限防止资源被篡改、删除
文件系统是在外部存储设备上组织文件的方法
常见的文件系统
- FAT windows
- NTFS windows
- EXT linux常见
NTFS文件系统特点
- 提高磁盘读写性能
- 可靠性
加密文件系统
访问控制列表(控制权限)ACL - 磁盘利用率
压缩
磁盘配额 - 支持单个文件大于4个G
修改NTFS权限
- 取消权限继承:取消子文件对父文件夹的权限继承,可以修改子文件的权限。
- 文件的权限包括:完全控制、修改、读取和执行、列出文件夹内容、读取、写入、特殊权限。
- 权限累加:当用户同时属于多个组,权限是累加的。
- 拒绝最大:当权限累加时,出现了拒绝,拒绝最大。
- 取得所有权:将文件的所有权改为administrator,只有administrator拥有这个权限。
- 强制继承:对子文件强制继承父文件的权限。
- 文件复制后,文件的权限会被目标文件夹的权限覆盖。
文件共享服务器
cifs(Common Internet File System),微软开发,在windows主机之间实现文件共享。
权限:本地登录,只受NTFS权限影响,使用共享时,受共享权限和NTFS权限共同影响。
访问共享:\IP; \IP\共享名
隐藏共享:共享名$
访问隐藏共享:\IP\共享名$
共享命令:
net share 列出共享
net share 共享名 /del 删除共享
取消共享自动生成:regedit,定位HKEY_Local_MACHINE\System\CurrentControlSet\Services\LanmanServer\Parameters\,右键新建REG_DWORD类型的AutoShareServer 键,值为 0
关闭445端口:
可以通过关闭445端口来屏蔽病毒传入(如勒索病毒等)
方法1:打开services.msc,并停止及禁用server服务
方法2:禁止被访问445,配置高级安全防火墙-入站规则(在win7及以上系统,win2008及以上系统)
DHCP
作用:(Dynamic Host Configure Protocol)自动分配IP地址
DHCP相关概念:地址池/作用域:(IP、子网掩码、网关、DNS、租期),DHCP协议端口是UDP 67/68
DHCP优点:减少工作量、避免IP冲突、提高地址利用率
DHCP原理:也称为DHCP租约过程,分为4个步骤:
- 客户机发送DHCP Discovery广播包:客户机广播请求IP地址(包含客户机的MAC地址)
- 服务器响应DHCP Offer广播包:服务器响应提供的IP地址(但无子网掩码、网关等参数)
- 客户机发送DHCP Request广播包:客户机选择IP(也可认为确认使用哪个IP)
- 服务器发送DHCP ACK广播包:服务器确定了租约,并提供网卡详细参数IP、掩码、网关、DNS、租期等
DHCP续约
当约期过了50%后,客户机会再次发送DHCP Request包进行续约,若服务器无响应,则继续使用并在87.5%再次 DHCP Request包,进行续约,若仍然无响应,并释放IP地址,及重新发送DHCP Discovery广播包来获取IP地址当无任何服务器响应时,自动给自己分配一个169.254.x.x/16,属于全球统一无效地址,用于临时内网通信
部署DHCP服务器
地址保留:指定mac地址,固定动态分配ip地址
优先级:作用域选项>服务器选项,当服务器上有多个作用域时,可以再服务器选项上设置DNS服务器
DHCP备份:备份服务器的所有作用域,当服务器宕机后,可以使用备份文件在其他DHCP服务器上进行还原所有配置
DHCP攻击与防御
- 攻击DHCP服务器:频繁的发送伪装DHCP请求,直到将DHCP地址池资源耗尽
防御:在交换机(管理型)的端口上做动态MAC地址绑定 2) - 伪装DHCP服器攻击:hack通过将自己部署为DHCP服务器,为客户机提供非法ip地址
防御:在交换机上(管理型),除合法的DHCP服务器所在接口外,全部设置为禁止发送dhcp offer包
DNS
Domain Name Service,域名服务,作用:为客户机提供域名解析服务器
域名
组成:主机名.域名(完全限定域名,FQDN),一个域名下可以有多个主机
根:.
顶级域名:
- 国家顶级域 cn jp hk uk
- 商业顶级域
com 商业机构
gov 政府机构
mil 军事机构
edu 教育机构
org 民间组织架构
net 互联网
二级域名
三级域名
…
如www.baidu.com.
.为根域名
.com为顶级域名
.baidu为二级域名
www为主机名
监听端口:TCP53;UDP53。客户机向服务器请求用UDP,服务器之间的请求用TCP
DNS解析种类:
-
按照查询方式分类
1.递归查询:客户机与本地DNS服务器之间
2.迭代查询:本地DNS服务器与根等其他DNS服务器的解析过程
-
按照查询内容分类
1.正向解析:已知域名,解析IP地址
2.反向解析:已知IP地址,解析域名
DNS服务器处理域名请求的顺序
- DBS高速缓存
- DNS区域配置文件
- DNS转发器
- 根提示
域名解析记录类型
A记录:正向解析记录
CNAME记录:别名
PTR记录:反向解析记录
MX:邮件交换记录
NS:域名服务器解析
DNS服务器分类
主要名称服务器
辅助名称服务器
根名称服务器
高速缓存名称服务器
客户机域名请求解析顺序
DNS缓存–>本地hosts文件–>找本地DNS服务器
服务器对域名请求的处理顺序
DNS高速缓存–>本地区域解析文件–>转发器–>根
WEB服务器和FTP服务器
WEB服务器也称为网页服务器或HTTP服务器,WEB服务器使用的协议是HTTP或HTTPS,HTTP协议端口号:TCP 80;HTTPS协议端口号:TCP 443
WEB服务器发布软件:
微软:IIS(可以发布web网站和FTP站点)
linux:Apache/LAMP/Tomcat/nginx .etc
第三方:phpstudy、XAMPP
一台服务器同时发布多个web站点
- 不同的IP,相同的端口
- 相同的IP,不同的端口
- 相同的IP,相同的端口,不同的域名/主机头
FTP服务器
File Transfor Protocol,文件传输协议
端口号:TCP 20/21
FTP工作方式:
- 主动模式
21端口:控制端口
20端口:数据端口
客户端随机端口和服务器20端口传输数据,所以客户机开了防火墙就不能传输,因为是服务器20端口主动向客户机随机端口发送数据,而防火墙未开放允许外界对这个随机端口访问 - 被动模式
21端口+随机端口作为数据传输端口
客户机向服务器随机端口请求数据传输,如果服务器开了防火墙,则通信失败,因为服务器防火墙未开放允许外界对这个随机端口访问
注:
主被动模式。阐述的是数据传输过程
主被动模式,选择权在客户机上
主被动模式,所谓主或被是站在服务器角度
域
内网环境:
- 工作组:默认模式,人人平等,不方便管理
- 域:人人不平等,集中管理,统一管理
域的特点:集中管理,统一管理
**域的组成:**1.域控制器(DC,Domain Controller)2.成员机
域的部署:
- 安装域控制器——就生成了域环境
- 安装了活动目录——就生成了域控制器
- 活动目录:Active Directory = AD
活动目录:
- AD
- 特点:集中管理/统一管理
组策略GPO**:Group Policy = GPO**
作用:通过组策略可以修改计算机的各种属性,如开始菜单、桌面背景、网络参数等。
重点:组策略在域中,是基于OU来下发的!!
组策略在域中下发后,用户的应用顺序是:LSDOU
在应用过程中,如果出现冲突,后应用的生效!
正常情况下:LSDOU顺序
PKI
名称:公钥基础设施(Public Key Infrastructure)
作用:通过加密技术和数字签名保证信息的安全
组成:公钥加密技术、数字证书、CA、RA
信息安全三要素:机密性、完整性、 身份验证/操作的不可否认性
需要用到PKI的领域:
- SSL/HTTPS
- IPsecVPN
- 部分远程访问VPN
公钥加密技术 :
作用:实现对信息加密、数字签名等安全保障
加密算法:
- 对称加密算法
加解密的秘钥一致
DES,3DES,AES - 非对称加密算法
通信双方各自产生一对公私钥
双方各自交换公钥
公钥和私钥为互相加解密关系
公私钥不可互相逆推
RSA,DH
x+5=y(对称加密算法),x是原数据/原文,y是密文,5是key/秘钥
hash算法:md5,sha
数字签名:用自己的私钥对摘要加密得出的密文就是数字签名
证书:
证书用于保证公密的合法性
证书格式遵循X.509标准
数字证书包含信息:
使用者的公钥值
使用者标识信息(如名称和电子邮件地址)
有效期(证书的有效时间)
颁发者标识信息
颁发者的数字签名
数字证书由权威公正的第三方机构即CA签发
CA是权威证书颁发机构,为了公正“公钥”的合法性!
机密性:使用对方的公钥加密!
身份验证/数字签名:使用自己的私钥!
OSI与TCP/IP协议簇
分层思想:将复杂的流程分解为几个功能相对单一的子过程。整个流程更加清晰,复杂的问题简单化,更容易发现问题并针对性的解决问题。
下层为上层提供服务,每层之间相互独立
OSI七层模型:应用层表示层会话层合并为应用层,也称为TCP/IP五层协议
数据 | 层 | 设备 |
---|---|---|
数据/PDU | 应用层 | PC/防火墙 |
数据段/段Fragment | 传输层 | 防火墙 |
报文/包/IP包packet | 网络层 | 路由器 |
帧Frame | 数据链路层 | 交换机、网卡 |
比特bit | 物理层 | 网线 |
比特本质是电脉冲
数据的封装与解封过程
传输层完成进程到进程的通信,把数据送到指定的端口,并给数据加上TCP/IP头
TCP和UDP:
TCP:面向连接服务,可靠传输,会与目标建立连接,拥有数据同传机制
UDP:无连接服务,不可靠传输,速度快
网络层负责IP数据报的产生以及ip数据包在逻辑网络上的路由转发(点到点)
网卡给数据包加上mac地址,交换机通过mac地址判断目标,FCS用来判断验证数据完整性
物理层 physical layer
- 网线/ 光纤/空气
- 8bit(比特) = 1Byte(字节)
1024B = 1KB
1024KB = 1GB
1024GB = 1TB
1024TB = 1PB - 信号:
电信号:
模拟信号(电话线):放大器,放大信号,抗干扰能力差
数字信号(网线):中继器,复原信号,抗干扰能力强,传输距离近
光信号:
光纤类型:
1.单模光纤:传输一种光,传输距离长,带宽高
2.多模光纤:传输多种光,传输距离短,带宽低 - 网线/双绞线
数据链路层(2层,Data Link Layer)
- 属于二层
- 传输单元:帧
- 帧结构
帧头:6+6+2=14字节
MTU值:最高1500字节
帧尾:4字节
帧头内容:目标MAC、源MAC、类型
类型的作用:识别上层协议
0x0800:上层为IP协议
0x0806:上层为ARP协议
0x代表16进制
- 工作在数据链路层的设备:交换机/网卡
- 交换机工作原理
收到一个数据帧后:
1.首先学习帧中的源MAC地址来形成MAC地址表
2.然后检查帧中的目标MAC地址,并匹配MAC地址表:
如表中有匹配项,则单播转发
如表中无匹配项,则除接受端口外广播转发
3.MAC地址表的老化时间默认是300秒(可修改)
- 交换机的端口:
E 10Mb
F 100Mb
G 1000Mb
Te 10000Mb
F0/1
0模块号
1接口号
接口速率自适应:1000/100/10M自适应
速率工作模式可以为10,100,1000任何一种状态
端口状态:up/down
down的3中可能:
1)人工down掉
2)速率不匹配
3)双工模式不匹配(双工duplex)
双工模式:单工、半双工、全双工