目录
第一节 计算机网络概述
一、计算机网络概念
计算机网络是指分布在不同地理位置上的具有独立功能的多个计算机系统,通过通信设备和通信线路互连起来,在网络软件的管理下实现数据传输和资源共享。
二、计算机网络功能
(一)数据通信
计算机网络主要提供传真、电子邮件、电子数据交换、远程登录和浏览等数据通信服务。
(二)资源共享
凡是入网用户均能享受网络中各个计算机系统的全部或部分软件、硬件和数据资源,为最本质的功能。
(三)提高系统的可靠性
网络中的每台计算机都可通过网络互相称为后备机。一旦某台计算机出现故障,它的任务就可由其他的计算机代为完成,这样可以避免在单机情况下,一台计算机发生故障引起整个系统瘫痪的现象,从而提高系统的可靠性。
(四)提高网络吞吐量
当网络中的某台计算机负担过重的时候,网络可以将新的任务交给比较空闲的计算机完成,均衡负载,从而提高了每台计算机的可用性。
(五)分布式处理
通过算法将大型的综合性问题交给不同的计算机同时进行处理。用户可以根据需要合理选择网络资源,就近快速的进行处理。
三、计算机网络的性能指标
1.速率:指的是在通信线路传输数据的最高传输速率,是计算机网络中最重要的一个性能指标。例如,拉5m宽带,最高速不可能到100m。
2.带宽:网络的通信线路所能传送数据的能力,也就是最高数据率。
3.吞吐量:表示在单位时间内通过某个网络的数据量。
4.时延:信息从开始发送到接收完毕。
发送时延:第一个比特到最后一个比特发送完毕的时间。
传播时延:电磁波在信道中需要传播一定的距离而花费的时间。
处理时延:交换结点为“存储-转发”而进行一些必要的处理所花费的时间。
排队时延:结点缓存队列中排队所经历的时延。
5、时延带宽积:传播时延和带宽的乘积
6、利用率
信道利用率指出某信道有百分之几的时间是被利用的(有数据通过)。完全空闲的信道利用率为0。
网络利用率则是全网络的信道利用率的加权平均值。
利用率并非是越高越好,根据排队论的理论,当某信道的利用率增大时,该信道引起的时延也就迅速增加。
第二节 计算机网络体系结构
一、网络协议
(一)网络协议的定义
简称为协议,是为网络中的数据交换而建立的规则、标准或约定。
(二)网络协议的三要素
语法:数据与控制信息的结构或格式。
语义:需要发出何种控制信息,完成何种动作以及做出何种响应。
同步:事件实现先后顺序的详细说明。
二、OSI参考模型
在网络的发展过程中,有很多公司都构建了自己的网络,随着经济全球化、贸易全球化,公司与公司之间也要进行资源共享。不同的网络进行互连,也就是异构网互连。异构网是一个很大的概念,我们把传输介质、运用协议不一样的网络称为异构网。在发展过程中,我们不可避免地要把异构网联系在一起。为了解决这个问题,在1977年,ISO国际标准化组织提出了OSI参考模型解决异构网互连的问题。让公司参考这个模型修改自己的网络,就能够进行通信和资源共享了。
(一)物理层
1.作用
物理层确定与传输媒体的接口有关的一些特性。物理层为数据链路层屏蔽了各种传输媒体的差异,主要负责在传输媒体传输比特流。
机械特性:接口的尺寸、大小、排列方式。.
电气特性:电压范围。
功能特性:高低电平的含义。
过程特性:实现的先后步骤顺序。
2.单位
数据的单位称为比特(bit)。
3.协议
RJ-45等。
568A标准:绿白,绿,橙白,蓝,蓝白,橙,棕白,棕
568B标准:橙白,橙,绿白,蓝,蓝白,绿,棕白,棕
(二)数据链路层
1.作用
数据链路层在不可靠的物理介质上提供可靠的传输。物理地址寻址、数据封装成帧、流量控制、数据的检错和重发等。
2.单位
数据的单位称为帧。
3.协议
SDLC、HDLC(高级链路控制协议)、PPP(点对点协议)、STP(生成树协议)和帧中继等。
(三)网络层
1.作用
地址管理和路由选择。此外网络层还可以实现拥塞控制、网际互连等功能。
2.单位
数据的单位称为数据包。
3.协议
IP(网际协议)、RIP(路由信息协议)和OSPF(开放式最短路径优先)等。
(四)传输层
1.作用
提供了端到端的服务(数据段),按端口号寻址、流量控制、差错控制。
2.单位
数据的单位称为数据段。
3.协议
TCP、UDP和SPX。
(五)会话层
1.作用
负责建立和断开通信连接。在数据中插入校验点来实现数据的同步。
2.协议
NetBIOS、ZIP
(六)表示层
1.作用
数据格式的转换。对上层数据或信息进行变换以保证一个主机应用层信息可以被另一个主机的应用程序理解。
2.协议
ASCII、JPEG和MPEG等。
(七)应用层
1.作用
提供应用程序的服务。
2.协议
TELNET、FTP、HTTP、SNMP等。
三、TCP/IP层次
TCP/IP是四层的体系结构:应用层、传输层、网络层和网络接口层。
TCP/IP层次模型表
层次名称 层次协议
应用层 HTTP、FTP、TFTP、SMTP、POP3、DNS
传输层 TCP、UDP
网络层 ICMP、IGMP、IP、ARP、RARP
网络接口层 底层网络定义的协议
四、两种模型的比较
异同点:不管是OSI模型还是TCP/IP模型,都是为了解决异构网互连的问题,都采用了分层的概念。一个分为七层一个分为四层,OSI模型在前期只考虑到了面向连接的问题,而TCP/IP模型是面向连接和无连接并重的。OSI模型在前期没有考虑到网络管理的问题,而TCP/IP模型考虑到了网络管理的问题。不过现在,不管是非连接还是网络管理,OSI模型也得到优化。OSI模型明确提出了协议和服务的概念,而TCP/IP对于协议和服务并不明确。OSI模型对等层对等实体之间的交流,我们称之为协议,而下一层向上一层就是服务。
第三节 局域网传输设备
一、物理层设备
(一)中继器
中继器是工作在物理层上的连接设备,主要功能是对信号进行再生和还原,来延长网络传输的距离。由于存在损耗,在线路上传输的信号功率会衰减,衰减到一定程度会导致信号失真。中继器对衰减的信号进行放大。理论上讲中继器的使用是无限的,网络也可以无限延长,但这是不可能的,因为网络标准有明确规定,中继器只能在规定范围内进行有效的工作,否则会引起网络故障。中继器的缺点是会增大时延。
(二)集线器hub
集线器工作在物理层,适用于小规模网络,常用于星型拓扑网络中,连接多个计算机或网络设备。集线器每个接口简单的收发比特,收到1就转发1,收到0就转发0。集线器是纯硬件底层网络设备,采用广播的方式发送数据,也就是要向某节点发送数据,并不是直接发送给目标节点,而是发送给所有相连的节点。以集线器为主要设备的网络,网络中某线路产生了故障,并不影响其他线路工作,但当网络中主机数量过多的时候,会在网络生成广播风暴。集线器使用载波侦听多路访问/冲突检测方法来避免冲突。
用于避免冲突的方式——CSMA/CD(载波侦听多路访问/冲突检测):先听后发,边发边听,一旦冲突,随机延迟重发。
二、数据链路层设备
(一)网卡/网络适配器
网络接口卡NIC又称网卡或网络适配器,是计算机中最重要的网络设备。网卡是工作在数据链路层的网络组件,是局域网连接计算机和传输介质的接口,实现与传输介质之间的物理连接和电信号匹配,网卡中含有物理(MAC)地址,涉及帧的发送和接收、帧的封装和拆封、介质访问控制、数据的编码和解码以及数据缓存的功能等。
(二)网桥
网桥也叫桥接器,是连接两个相同协议的局域网设备。也可以用于连接大的局域网中相同的网段。网桥能扩展网络的距离或范围,而且可提高网络的性能、可靠性和安全性。网络1 和网络2 通过网桥连接后,网桥接收网络1 发送的数据包,检查数据包中的地址,如果地址对应端口属于网络1 ,它就将其放弃,相反,如果对应端口是网络2 ,它就发送给网络2。网桥只能识别MAC地址,网桥的工作流程也是一个存储转发的过程,因此会增大时延。网桥没有流量控制功能,有可能出现数据丢失。
(三)交换机——支持全双工发送
交换机工作在数据链路层,主要功能就是把数据包发送到正确的位置。交换机可以说同时是集线器和网桥的升级换代产品,因为交换机具有集线器一样的集中连接功能,同时它又具有网桥的数据交换功能,交换机可以看成是多端口的网桥。交换机就像邮递员,根据数据包中的目标MAC地址,找到对应的物理端口。在交换机中,有一张端口与MAC地址的映射关系表,我们称之为MAC地址表。想要与某个MAC地址通信时,只需要查询一下这个MAC地址在哪个端口上,然后从对应的端口发送出去就可以了。交换机本身是一个广播域,不能隔离广播域,但是交换机可以隔离集线器的冲突域。交换机的每个端口都可视为独立的物理网段。交换机的传输模式有全双工、半双工、全双工/半双工自适应。
第四节 网络层协议
一、地址解析协议ARP
1.基本概念
地址解析协议(ARP) 是根据IP地址获取MAC地址,工作于网络层。每台主机都会有一个ARP缓存表,里面记录IP地址和MAC地址的对应关系。当源主机需要将一个数据包要发送到目的主机时,会首先检查自己ARP列表中是否存在该IP地址对应的MAC地址:如果有,就直接将数据包发送到这个MAC地址;如果没有,就向本地网段发起一个ARP请求的广播包。网络中所有的主机收到这个ARP请求后,会检查数据包中的目的IP是否和自己的IP地址一致。如果不相同就忽略此数据包;如果相同,该主机首先将发送端的MAC地址和IP地址添加到自己的ARP列表中,然后给源主机发送一个ARP响应数据包,告诉对方自己是它需要查找的MAC地址;源主机收到这个ARP响应数据包后,将得到的IP地址和MAC地址添加到自己的ARP列表中以便下次请求时直接查询ARP缓存以节省资源,并开始数据的传输。如果源主机一直没有收到ARP响应数据包,表示ARP查询失败。
企业级李姐:班主任来到教室,对同学说,我的名字是a,我的手机号是b,我要找名字为小明的同学,小明打电话给我哈。
2.ARP缓存的作用
为了减少网络上的通信量,主机A在发送其ARP请求分组时,就将自己的IP地址到MAC地址的映射写入ARP请求分组。
当主机B收到A的ARP请求分组,就将主机A的这一地址映射写入主机B自己的ARP缓存中。主机B以后向A发送数据时就更方便了。
3.注意
ARP是解决同一个局域网上的主机或路由器的IP地址和硬件地址的映射问题。
如果要找的主机和源主机不在同一个局域网上,那么就要通过ARP找到一个位于本局域网上的某个路由器的硬件地址,然后把分组发送给这个路由器,让路由器把分组转发给下一个网络,剩下的工作就由下一个网络完成。
只要主机或路由器要和本网络上的另一个已知IP的主机或者路由器进行通信,ARP协议就会自动地把该IP地址解析为链路层所需要的硬件地址。
二、逆地址解析协议RARP
逆地址解析协议(RARP),根据MAC地址获取IP地址。在网络中配置一台RARP服务器,里面保存着MAC地址和IP地址的映射关系。启动后就封装一个RARP数据包,里面有其MAC地址,然后广播到网络上去,当服务器收到请求包后,查找对应的MAC地址的IP地址装入响应报文发回给请求者。
三、Internet控制报文协议ICMP
ICMP协议就是Internet控制协议,属于网络层协议,用于在主机、路由器之间传递控制信息,控制信息指的就是网络通不通、主机是否可达、路由是否可用等消息。
主要通过ping命令实现。在网络中ping是用来探测网络连接情况和分析网络速度的命令。
使用ping命令来检查网络连通性,首先点击开始菜单的运行选项,输入CMD。在ping命令后输入远程地址,它就会向这个地址发送数据包。如果远程地址有回应,就统计往返的时间,来确定与目标地址连通性的好坏。例如ping127.0.0.1,这个是本地回环地址,如果能ping通,说明本地网卡和tcp/ip协议是正常的,如果无法接受数据包,说明网卡驱动有问题,可以尝试重装网卡驱动。或者ping本机ip地址,本机地址可以通过ipconfig all命令获取,如果能ping通就说明网卡硬件工作正常和ip地址设置正确。也可以ping默认网关,也是通过ipconfig all命令获取,如果ping不通,有线可能是网线断了,无线可能是路由器发送的信号有问题。
四、Internet组管理协议IGMP
因特网协议家族中的一个组播协议,用于IP主机向任一个直接相邻的路由器报告他们的组成员情况。它规定了处于不同网段的主机如何进行多播通信,其前提条件是路由器本身要支持多播。
第五节 TCP协议
一、TCP传输特点
1.TCP提供可靠交付的服务,TCP连接是一条虚连接而不是一条真正的物理连接;
2.TCP可把太长的数据块划分短一些再传送。TCP也可等待积累有足够多的字节后再构成报文段发送出去;
3.TCP是面向连接的传输层协议;
4.每一条TCP连接只能是一对一的;
5.TCP提供全双工通信;
6.面向字节流。
TCP协议就是传输控制协议,是面向连接的、面向字节流的工作在传输层的可靠的协议。先通过三次握手建立连接再传输数据,传输数据完毕后四次挥手断开连接。TCP提供的是一种可靠的交付,具有超时重传、传输确认、拥塞控制机制。每一条TCP连接有两个端点,TCP建立的是一对一的连接,因此提供全双工通信。TCP的传输速度较慢,但是安全性、稳定性较高。
二、TCP的连接
TCP把连接作为最基本的抽象。TCP的许多特性都与TCP是面向连接的这个基本特性有关。
每一条TCP连接有两个端点,那么TCP连接的端点是什么呢?TCP连接的端点叫做套接字或者插口。
端口号拼接到IP地址即构成了套接字。因此,套接字的表示方法就是在点分十进制的IP地址后面写上端口号,中间用冒号或者逗号隔开。
三、TCP面向连接的建立与断开
(一)三次握手建立连接
运输连接就有三个阶段,即:连接建立、数据传送、连接释放(面向连接)。
使用三次握手协议建立连接:
第一次握手是由客户端发起,客户端会向服务端发送一个报文,报文中SYN位置为1,当服务端收到该报文后,就知道客户端要发起新的连接,于是服务端就会向客户端发送一个确认报文,报文中ACK位置为1。以上两次握手之后,客户端已经确认完毕自己可以给服务端发消息,也能收到服务端的消息。但是对于服务端,两次握手是不够的,服务端不确定客户端能不能收到自己发出的消息,所以需要进行第三次握手。第三次握手就是当客户端收到服务端发过来的确认消息的报文之后,还要继续给服务端进行回应,也是一个ACK位置为1的确认消息。
通过以上三次握手,客户端和服务端都确认了双方可以发送也可以接受消息,那么这个连接就可以安全的建立了。
(二)四次挥手断开连接
四次挥手也是由客户端发起的,在客户端发送的报文里FIN位置为1,服务端收到报文之后就知道了客户端想要断开连接。但此时服务端不一定做好了准备,因为当客户端发起断开连接请求时,服务端有可能还有未发送的消息,因此服务端会先发一个消息确认报文,报文内ACK置为1,然后再发送一个FIN位置为1的报文,表示服务端已经做好了断开连接的准备。客户端给服务端发送一个确认报文,报文中ACK位置为1。通过这四次的沟通和连接,确认了服务端和客户端都做好了断开连接的准备,于是连接就断开了。
第六节 UDP协议
一、概述
UDP只在IP的数据报服务之上增加了很少一点的功能,即端口的功能和差错检测的功能。虽然UDP用户数据报只能提供不可靠的连接,但UDP在某些方面有其特殊的优点。
二、UDP面向报文
发送方UDP对应用程序交下来的报文,在添加首部后就向下交付给IP层。接收方UDP对IP层交上来的UDP用户数据报,在去除首部后就交付给应用进程,一次交付一个完整的报文。
三、UDP的优点
UDP是无连接的,即发送数据之前不需要建立连接,因此实时性好;UDP是面向报文的,没有拥塞控制,很适合多媒体通信的要求;UDP支持一对一、一对多、多对一和多对多的交互通信;UDP的特点是传输速度快、效率高。
Q:传输层是可靠的层。TCP是可靠的协议,UDP是不可靠的协议,为什么UDP在传输层?
A:传输层的上层是应用层,传输层和TCP一般是可靠的,应用层交付的数据给TCP,大了就划分,小了就重组,TCP本身保证了可靠性。UDP本身是不可靠的,它的可靠性由应用层进行保障,直接给UDP大小合适的报文。所以传输层是可靠的层。
第七节 INTERNET应用
一、DNS域名解析服务
(一)什么是域名
使用一组英文表示的名字,来表示每一台主机。
DNS域名系统是因特网使用的命名系统,用来把域名转换为IP地址。
(二)域名的组成
一般分4级,每级1~4个字符,中间用小数点间隔。
域名的结构由标号序列组成,各标号之间用点隔开:… . 三级域名 . 二级域名 . 顶级域名。
域名一般用小写,且需要申请、注册和付费
DNS解析
IP地址是一种用于在互联网上访问内容的虚拟地址,它可以让我们在庞大的网络中精准的找到你需要通讯的主机,并且与之交互数据。这里就有一个问题,如果你想要访问对方电脑或者服务器上的内容,首先需要知道对方的IP地址。就像我们给某个人打电话,就必须准确地拨通对方的号码一样。但像IP地址这种一长串没有关联的数字非常难记,手机的电话簿通过名字标记手机号,打电话的时候看姓名找人就可以了,电脑也有类似的功能。假如要访问百度,输入202.108.22.5可以进入百度首页,但就像前面说的,很难记住,现在大多数都是通过输入域名地址www.baidu.com访问百度。原因就是电脑里有一个像电话簿一样的hosts文件,记录着域名和IP的对应关系。输入域名后,系统就会去Hosts文件里查询这个域名对应的IP地址是什么,然后访问这个IP,于是就进入了要访问的网页。
但这里有一个问题,hosts文件是有限的,只能保存一些常用的域名对应的IP,不可能拥有全世界所有的域名对应的IP。于是建立一个DNS服务器,专门存储世界上绝大多数的域名和IP的映射表。当我们要访问某个网站的时候,先让电脑去这个服务器上查询需要访问的域名对应的IP是什么,然后在帮助我们访问到这个IP。
因此选择一个适合的DNS服务器能够提高我们的网页阅读体验。如何修改DNS服务器呢?在右下角右键点击网络图标,打开网络和Internet设置,更改适配器选项,然后找到连着网的网卡右键点击属性,如果使用的是IPv4就双击IPv4协议,然后就可以手动设置DNS服务器地址,例如谷歌首选DNS8.8.8.8,备用DNS8.8.4.4。
Q:能打开QQ不能打开网页?
A:登录qq是直接访问腾讯的服务器,qq客户端内部已经配置好所有IP了,这里不涉及域名解析的操作,所以可以正常登录。但如果DNS配置错误,电脑无法正常访问到DNS服务器去做解析,那种浏览器内输入域名,电脑不知道域名对应的IP是多少,自然就无法访问对应服务器了。
Q:DNS劫持或污染
A:假设某网站的域名是www.abc.com,假设这个网站的IP是202.206.64.41。输入www.abc.com后,一个正常的DNS服务器就应该返还给你202.206.64.41但是如果在这个过程中发生了一些不为人知的操作,最后返还了一个202.206.64.42,这样会导致访问到别的网站,这个情况,轻一点是进入广告页面,重一点会盗取用户信息。而从前台来看,输入的域名没有错,我们以为我们访问的是正确的网站,但实际上我们已经掉坑里了。因此DNS污染和DNS劫持对于互联网访问体验的影响是非常大的。所以借助各种手段污染或者劫持DNS的已经纳入了违法行为。
二、WWW万维网服务
(一)WWW概述
World Wide Web是一种交互式图形界面的Internet服务,具有强大的信息连接功能,是目前Internet中最受欢迎的、增长速度最快的一种多媒体信息服务系统。WWW以客户服务器方式工作。
浏览器就是在用户计算机上的WWW客户程序。万维网文档所驻留的计算机则运行服务器程序,因此这个计算机也称为万维网服务器。
(二)常见计算机域名
(三)HTML(超文本标记语言)语言
1.基本概念
超文本指的是用超链接的方法,将各种不同空间的文字信息组织在一起的网状文字。
2.网页形态
静态网页是指该网页制作完毕后,在被用户浏览的过程中,内容不会改变。
动态网页指的是网页内容在浏览器访问时才由应用程序动态创建。
(四)URL统一资源定位符
是WWW页的地址,每一个网址都有唯一的一个URL。
统一资源定位符URL是对可以从因特网上得到的资源的位置和访问方法的一种简洁的表示。使用URL给资源定位,只要能够对资源定位,系统就可以对资源进行各种操作,如存取、更新、替换和查找。
格式:<协议><主机域名或IP地址><路径><文件名>
eg:http://www.sina.com.cn
(五)HTTP超文本传输协议
超文本传输协议是WWW文件都必须遵守的标注。HTTP是一个客户端和服务端请求和应答的标准(TCP)。
客户端是终端用户,服务端是网站。
客户端发起一个到服务器上指定端口(默认端口为80)的HTTP请求。
HTTP是面向事务的应用层协议,它是万维网上能够可靠地交换文件的重要基础。
(六)FTP文件传输服务——不懂
文件传送指的是将某台计算机中的文件通过网络传送到可能相距很远的另一台计算机中,是一项基本的网络应用。文件传送协议FTP是因特网上使用最广泛的文件传送协议。FTP使用TCP可靠的传输服务,使用客户服务器方式。
FTP的常见用途是指计算机之间传输文件,尤其是用于批量传输文件。另一个常见用途是让网站设计者将构成网站内容的大量文件批量上传到Web服务器。
1.传输模式
FTP服务器监听熟知端口号21,FTP客户随机选择一个临时端口号与其建立TCP连接。这条TCP连接用于FTP客户与服务器之间传送FTP相关控制命令。当有数据要传输时,FTP客户通过命令通道告知FTP服务器来与自己的另一个临时端口号建立TCP连接,建立数据通道。FTP服务器使用自己的熟知端口号20与另一个临时端口号建立TCP连接。这条TCP连接用于FTP客户与服务器之间传送文件。建立数据通道时,FTP服务器主动连接FTP客户,因此称为主动模式。控制连接在整个会话期间一直保持打开,用于传送FTP相关控制命令。数据连接用于文件传输,在每次文件传输时才建立,传输结束就关闭。
被动模式:对于FTP客户与服务器之间命令通道的建立,它与主动模式没有什么不同。不同之处在于,当有数据要传输时,FTP客户通过命令通道告知FTP服务器开启某个临时端口被动等待TCP连接,建立数据通道。因为建立数据通道时,FTP服务器被动等待FTP客户的连接,因此称为被动模式。
三、电子邮件服务
电子邮件是因特网上最早流行的一种应用,并仍然是当今因特网上最重要、最实用的应用之一。
发件人将邮件发送到自己使用的邮件服务器;发件人的邮件服务器将收到的邮件按其目的地址转发到收件人邮件服务器中的收件人邮箱;收件人在方便的时候访问收件人邮件服务器中自己的邮箱,获取收到的电子邮件。
电子邮件使用方便、传递迅速而且费用低廉,它不仅可以传送文字信息也可以附上声音和图像。
电子邮件系统采用客户/服务器方式。
电子邮件系统的三个主要组成构件:用户代理、邮件服务器,以及电子邮件所需的协议。
(一)简单邮件传送协议SMTP
发送方邮件服务器周期性地扫描邮件缓存,如果发现有待转发的邮件,则发送方邮件服务器中的SMTP客户会与接收方邮件服务器中的SMTP服务器进行TCP连接。SMTP客户就可以基于这条TCP连接给SMTP服务器发送SMTP命令。SMTP服务器也会给SMTP客户发送相应的应答,SMTP客户与服务器之间通过命令与应答的交互方式,最终实现SMTP客户发送邮件给SMTP服务器。
(二)邮件读取协议
1.邮局协议POP
POP3是其第三个版本,是因特网正式标准。是非常简单但功能有限的邮件读取协议。用户只能以下载并删除方式或下载并保留方式从邮件服务器下载邮件到用户计算机。不允许用户在邮件服务器上管理自己的邮件。
2.因特网邮件访问协议IMAP
IMAP4是其第四个版本,目前还只是因特网建议标准。功能比POP3强大的邮件读取协议,用户在自己的计算机上就可以操控邮件服务器中的邮箱。
POP3和IMAP4都采用基于TCP连接的客户/服务器方式。
五、TELNET远程登录服务(TCP连接)
TELNET让用户坐在自己的计算机前通过Internet登陆到另一台远程计算机上。
当登录上远程计算机后,用户的电脑就仿佛是远程计算机的一个终端,就可以用自己的计算机直接操纵远程计算机,享受远程计算机本地终端同样的权力。虚拟终端负责把用户输入的每个字符传递给主机,再将主机输出的每个信息回显在屏幕上。
第八节 安全技术手段
一、加密技术
(一)加密技术概念
加密技术是最常用的安全保密手段,利用技术手段把重要的数据变为乱码(加密)传送,到达目的地后再用相同或不同的手段还原(解密)。
(二)对称加密算法
1.对称加密算法概念
对称加密(私钥、单钥)指加密和解密使用相同密钥的加密算法。
加密密钥能够从解密密钥中推算出来,同时解密密钥也可以从加密密钥中推算出来。
2.工作过程
对称加密算法的前提条件是发送方和接收方都知道同一密钥。发送方将原始信息经过对称密钥K进行加密形成密文,密文经过公网传输发送到接收方。接收方收到密文后用对称密钥进行解密产生明文。
3.优点
计算量小,加密、解密速度快效率高。
4.确定
安全性差、密钥不易管理,使用范围小。
(三)非对称加密算法
1.非对称加密算法概念
非对称加密指加密和解密使用不同密钥的加密算法。
公钥用来加密,只能用私钥来解密。私钥用来加密,只能用公钥来解密。
私钥由用户自己拥有。
公钥、算法公开,只要有需求即可获得。
2.非对称加密算法工作过程
非对称加密算法的前提条件是发送方和接收方都拥有自己的私钥和公钥。
3.优点
安全性高、密钥容易管理
4.缺点
算法公开、计算量大、加密解密速度慢效率低
二、数字签名技术
(一)数字签名的概念
数字签名(又叫公钥数字签名)是使用了公钥加密领域的技术实现,用于鉴别数字信息的方法。一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证。
数字签名就是只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。
数字签名是对非对称密钥加密技术和数字摘要技术的应用。
(二)数字签名的工作过程
1.发送者先用一组数据产生摘要信息;
2.发送者将摘要信息用发送者的私钥加密,与原文一起传送给接收者;
3.接收者只有用发送者的公钥才能解密被加密的摘要信息;
4.然后用hash函数对收到的原文产生一个摘要信息,与解密的摘要信息对比;
5.如果相同,则说明收到的信息是完整的,在传输过程中没有被修改,否则说明信息被修改过,因此数字签名能够验证信息的完整性。
(三)数字签名的特性
1.签名是可信的:任何人都可以方便地验证签名的有效性;
2.签名是不可伪造的:除了合法的签名者之外,任何其他人伪造其签名是困难的;
3.签名是不可复制的:对一个消息的签名不能通过复制变为另一个消息的签名;
4.签名的消息是不可改变的:经签名的消息不能被篡改;
5.签名是不可抵赖的:签名者不能否认自己的签名。
三、安全协议
(一)安全超文本传输协议
1.概念
S-HTTP是安全超文本传输。使用安全套接字层SSL进行信息交换。依靠密钥对的加密,保障Web站点间的交易信息传输的安全性。
HTTPS是指HTTP上建立SSL加密层,并对传输数据进行加密,是HTTP协议的安全版。
2.HTTPS的主要作用
(1)对数据进行加密,建立一个信息安全通道,来保证传输过程中的数据安全;
(2)对网站服务器进行真实身份认证;
(3)SSL协议可以在HTTP信息基础上增加完整性校验、加密和身份验证功能。
3.HTTPS和HTTP的区别
(1)HTTPS是加密传输协议,HTTP是明文传输协议;
(2)HTTPS标准端口443,HTTP标准端口80;
(3)HTTPS基于传输层,HTTP基于应用层。
(二)安全套接层协议
1.TLS/SSL协议概念
SSL安全套接层协议和TLS安全传输协议为网络通信提供安全及数据完整性的保护。TLS和SSL在传输层对网络连接进行加密。
2.SSL提供服务
(1)认证用户和服务器,确保数据发送到正确的客户机和服务器;
(2)加密数据以防止数据中途被窃取;
(3)维护数据的完整性,确保数据中传输过程中不被改变。
第九节 防火墙技术
一、防火墙的定义——访问控制技术
防火墙是一个系统,通过过滤传输数据达到防止未经授权的网络传输侵入私人网络,也就是在私有和公共网络之间建立一道安全屏障。
二、防火墙的功能——屏障
(一)过滤进出网络的数据
防火墙会检查所有数据的细节,根据事先定义好的策略允许或者禁止这些数据进行通信。
(二)管理进出网络的访问行为
对网络访问服务加以限制,来达到保护网络安全的目的。
(三)记录通过防火墙的信息内容
网络管理员需要对通过防火墙的信息进行审计和记录。
(四)对网络攻击进行检测和告警
只有授权的协议和服务才能通过防火墙,这样提高了网络的安全性。
三、防火墙的弊端
(一)限制有用的网络服务
限制和关闭了很多有用但存在安全缺陷的网络服务。
(二)无法防范内部网络用户的攻击
防火墙无法禁止内部存在的间谍将敏感数据拷贝到软盘上带走。
(三)无法防备新的网络安全问题
防火墙是一种被动的防护手段,它只对已出现的网络威胁起作用,随着网络攻击手段的不断更新和一些新的网络应用的出现,不可能设置已出现的防火墙来解决永久的网络安全问题。
第十节 计算机安全
一、计算机病毒
(一)计算机病毒的定义
计算机病毒指破坏计算机功能或者毁坏数据,影响计算机使用,并能自我复制的一组计算机指令或者程序代码。
(二)计算机病毒的特点
(1)传染性
这是病毒的基本特征。计算机病毒会通过各种渠道从已被感染的计算机扩散到未被感染的计算机,造成被感染的计算机工作失常甚至瘫痪。
(2)隐蔽性
病毒通常附在正常程序中或磁盘较隐蔽的地方。如果不经过代码分析,很难区分病毒程序与正常程序。
(3)潜伏性
大部分病毒感染系统后,会长期隐藏在系统中,悄悄的繁殖和扩散而不被发觉,只有在满足其特定条件的时候才启动。
(4)破坏性
任何病毒只要入侵系统,就会对系统产生程度不同的影响。轻则会降低计算机工作效率,占用系统资源,重则可导致系统崩溃,根据病毒的这一特性可将病毒分为良性病毒和恶性病毒。良性病毒可能只显示些画面或无关紧要的语句,或者根本没有任何破坏动作,但会占用系统资源。恶性病毒具有明确的目的,或破坏数据、删除文件,或加密磁盘、格式化磁盘,甚至造成不可挽回的损失。
(5)寄生性
计算机病毒程序嵌入到宿主程序中,依赖于宿主程序的执行而生存,这就是计算机病毒的寄生性。病毒程序在浸入到宿主程序后,一般会对宿主程序进行一定的修改,宿主程序一旦执行,病毒程序就被激活,从而进行自我复制。
二、木马病毒
(一)木马病毒的定义
木马病毒是指隐藏在正常程序中的一段具有特殊功能的恶意代码,是具备破坏和删除文件、发送密码、记录键盘和攻击Dos等特殊功能的后门程序。
(二)简述木马病毒入侵方式
1.修改系统配置
通过修改系统配置文件Win.ini、System.ini来达到自动运行的目的。在win.ini文件中的【windwos】段中有如下加载项:run= load= ,一般为空。如果木马程序加载到这两个子项中之后,那么系统启动后即可自动运行或加载了。系统信息文件system.ini中也有一个启动加载项,那就是在【BOOT】子项中的Shell项。在这里木马最惯用的伎俩就是把本应是“Explorer”变成它自己的程序名,名称伪装成几乎与原来的一样,只需稍稍改“Explorer”的字母“I”改为数字“1”,或者把其中的“o”改为数字“0”,这些改变如果不仔细留意是很难被人发现的。
2.通过注册表中的Run来启动
通过在Run、RunOnce、RunOnceEx、 RunServices 、RunServicesOnce中添加键值,可以容易地实现程序加载。只要按照其指定的源文件路径一路查过去,并具体研究一下在系统中的作用就不难发现这些,不过同样要注意木马的欺骗性,同时还要仔细观察一下在这些键值项中是否有类似空格、.exe或其它可疑的文件名,如有则立即删除。
3.通过文件关联启动
木马程序发展到了今天,为了更加隐蔽自己,所采用手段也是越来越隐蔽,它们开始采用修改文件打开关联来达到加载的目的,当打开了一个已修改了打开关联的文件时,木马也就开始了它的运作。
4.利用Java applet
利用HTML把木马下载到缓存中,修改注册表,指向其程序。
木马病毒常常使用名字欺骗技术和运行假象配合,名字欺骗例如l和1,S和5,o和0。运行假象则是指运行某些木马时,程序给出一个虚假的提示来欺骗用户,就像运行以后什么都没有的程序,我们会意识到是不是电脑产生了某些安全隐患,而提示内存不足的程序,我们只会想到是内存的问题。
三、黑客攻击
(一)黑客攻击的分类
黑客攻击手段可分为非破坏性攻击和破坏性攻击两类。非破坏性攻击一般是为了扰乱系统的运行,并不盗窃系统资料,通常采用拒绝服务攻击或信息炸弹;破坏性攻击是以侵入他人电脑系统、盗窃系统保密信息、破坏目标系统的数据为目的。
(二)常见的黑客攻击
1.获取口令
一是通过网络监听非法得到用户口令,这类方法有一定的局限性,但危害性极大,监听者往往能够获得其所在网段的所有用户账号和口令,对局域网安全威胁巨大;二是在知道用户的账号后利用一些专门软件强行破解用户口令,这种方法不受网段限制,但黑客要有足够的耐心和时间;
2.欺骗技术
在网上用户可以利用IE等浏览器进行各种各样的WEB站点的访问,如阅读新闻组、咨询产品价格、订阅报纸、电子商务等。然而一般的用户恐怕不会想到有这些问题存在:正在访问的网页已经被黑客篡改过,网页上的信息是虚假的!例如黑客将用户要浏览的网页的URL改写为指向黑客自己的服务器,当用户浏览目标网页的时候,实际上是向黑客服务器发出请求,那么黑客就可以达到欺骗的目的了。
3.电子邮件攻击
电子邮件攻击主要表现为两种方式:一是电子邮件轰炸和电子邮件“滚雪球”,也就是通常所说的邮件炸弹,指的是用伪造的IP地址和电子邮件地址向同一信箱发送数以千计、万计甚至无穷多次的内容相同的垃圾邮件,致使受害人邮箱被“炸”,严重者可能会给电子邮件服务器操作系统带来危险,甚至瘫痪;二是电子邮件欺骗,攻击者佯称自己为系统管理员(邮件地址和系统管理员完全相同),给用户发送邮件要求用户修改口令(口令可能为指定字符串)或在貌似正常的附件中加载病毒或其他木马程序(据笔者所知,某些单位的网络管理员有定期给用户免费发送防火墙升级程序的义务,这为黑客成功地利用该方法提供了可乘之机),这类欺骗只要用户提高警惕,一般危害性不是太大。
四、如何保障系统安全
(一)使用MD5加密
MD5加密是一种安全性非常高的加密算法,是普遍使用广泛应用于文件验证,信息加密等领域,由于这种加密的不可逆性,几乎没有破解的可能性。
(二)COOKIES加密
保存COOKIES时,对保存于COOKIES中的数据采用了以MD5加密为基础,加入随机加密因子的改进型专用加密算法。由于使用的不是标准MD5 加密,因此本系统COOKIES中保存的数据不可能被解密。因此,黑客试图用伪造COOKIES攻击系统变得完全不可能,系统用户信息保密变得非常安全。
(三)SQL注入防护
系统在防SQL注入方面,设置了四道安全防护:
第一、 系统级SQL防注入检测,系统会遍历检测所有用GET、POST、COOKIES提交到服务器上的数据,如发现有可能用于构造可注入SQL的异常代码,系统将终止程序运行,并记录日志。这一道安全防护加在连接数据库之前,能在连接数据库前挡处几乎所有的SQL注入和危害网站安全的数据提交。
第二、 程序级安全仿SQL注入系统,在应用程序中,在构建SQL查询语句前,系统将对由外部获取数据,并带入组装为SQL的变量进行安全性合法性验证,过滤可能构成注入的字符。
第三、 禁止外部提交表单,系统禁止从本域名之外的其它域名提交表单,防止从外部跳转传输攻击性代码。
第四、数据库操作使用存储过程 系统所有的重要数据操作,均使用存储过程作参数查询,避免组装SQL字符串,令即使通过了层层SQL注入过滤的攻击性字符仍然无法发挥作用。
(四)木马和病毒防护
针对可能的木马和病毒问题,系统认为,在服务器设置安全的情况下,外部带来的安全问题,主要是用户可能上传病毒和木马,作如下四层的防护:
第一、 客户端文件检测,在上传之前,对准备上传的文件进行检测,如果发现不是服务器设置的允许上传的文件类型,系统拒绝进行上传。如果客户端屏蔽了检测语句,则上传程序同时被屏蔽,系统无法上传任何文件。
第二、 服务器端文件安全性检测,对上传到服务器的文件,程序在将文件写入磁盘前,检测文件的类型,如发现是可能构成服务器安全问题的文件类型,即所有可以在服务器上执行的程序,系统都拒绝写入磁盘。以此保证不被上传可能在服务器上传播的病毒和木马程序。
第三、对有权限的服务器,系统采用即上传即压缩策略,所有上传的除图片文件、视频文件外,其它各种类型的文件一但上传,立即压缩为RAR,因此,即使包含木马也无法运行。不能对网站安全带来威胁。
第四、底层的文件类型检测 系统对文件类型作了底层级检测,由于不仅检测扩展名,而是对文件的实际类型进行检测,所以无法通过改扩展名方式逃过安全性验证。
(五)权限控制系统
系统设置了严格有效的权限控制系统,何人可以发信息,何人能删除信息等权限设置系统一共有数十项详细设置,并且网站不同栏目可以设置完全不同的权限,所有权限均在多个层次上严格控制权限。
(六)IP记录
IP地址库除记录所有重要操作的IP外,还记录了IP所在地区。
详细的IP记录所有的创建记录、编辑记录行为(如发文章,发评论,发站内信等),均记录此操作发生的IP,IP所在地区,操作时间,以便日后备查。在发现安全问题时,这些数据会非常关键和必要。