Bootstrap

网络基础知识扫盲-持续更新

网线水晶头接法

1、网线水晶头有两种接法,一种是直连互联法,一种是交叉互联法。 交叉线的做法是:一头采用568A标准,一头采用568B标准。平行(直通)线的做法是:两头同为568A标准或568B标准。

2、568A标准:白绿 绿 白橙 蓝 白蓝 橙 白棕 棕        

       568B标准:白橙 橙 白绿 蓝 白蓝 绿 白棕 棕

交叉线是指:一端是568A标准,另一端是568B标准的双绞线。 
直通线则指:两端都是568A或都是568B标准的双绞线。

 

使用直通线的情况: 

1. 将交换机或HUB与路由器连接; 

2. 计算机(包括服务器和工作站)与交换机或HUB连接。

 

使用交叉线的情况: 

1. 交换机与交换机之间通过UPLINKS口连接; 

2. 两台PC直接相连(网卡对网卡); 

3. 路由器接口与其它路由器接口的连接; 

4. Ethernet接口的ADSL Modem连接到PC机的网卡接口。

 

防火墙和路由器的区别:

1.两种设备产生的根源不同

路由器的产生是基于对网络数据包路由而产生的。路由器需要完成的是将不同网络的数据包进行有效的路由,至于为什么路由、是否应该路由、路由过后是否有问题等根本不关心,所关心的是:能否将不同的网段的数据包进行路由从而进行通讯。 

防火墙是产生于人们对于安全性的需求。数据包是否可以正确的到达、到达的时间、方向等不是防火墙关心的重点,重点是这个(一系列)数据包是否应该通过、通过后是否会对网络造成危害。

2.根本目的不同 

路由器的根本目的是:保持网络和数据的"通"。
防火墙根本的的目的是:保证任何非允许的数据包"不通"。

路由器核心的ACL列表是基于简单的包过滤,从防火墙技术实现的角度来说,防火墙是基于状态包过滤的应用级信息流过滤。

对性能的影响不同

路由器是被设计用来转发数据包的,而不是专门设计作为全特性防火墙的,所以用于进行包过滤时,需要进行的运算非常大,对路由器的CPU和内存的需要都非常大,而路由器由于其硬件成本比较高,其高性能配置时硬件的成本都比较大。

防火墙的硬件配置非常高(采用通用的INTEL芯片,性能高且成本低),其软件也为数据包的过滤进行了专门的优化,其主要模块运行在操作系统的内核模式下,设计之时特别考虑了安全问题,其进行数据包过滤的性能非常高。

路由器本身没有日志、事件的存储介质,只能通过采用外部的日志服务器(如syslog,trap)等来完成对日志、事件的存储;路由器本身没有审计分析工具,对日志、事件的描述采用的是不太容易理解的语言;路由器对攻击等安全事件的相应不完整,对于很多的攻击、扫描等操作不能够产生准确及时的事件。审计功能的弱化,使管理员不能够对安全事件进行及时、准确的响应。

防火墙的日志存储介质有两种,包括本身的硬盘存储,和单独的日志服务器;针对这两种存储,防火墙都提供了强大的审计分析工具,使管理员可以非常容易分析出各种安全隐患;防火墙对安全事件的响应的及时性,还体现在他的多种报警方式上,包括蜂鸣、trap、邮件、日志;NetEye 防火墙还具有实时监控功能,可以在线监控通过防火墙的连接,同时还可以捕捉数据包进行分析,非分析网络运行情况,排除网络故障提供了方便。

路由器,其普通版本不具有应用层的防范功能,不具有入侵实时检测等功能,如果需要具有这样的功能

在各层之间,数据是以什么单位进行传输的?
数据在各层之间的单位都是不一样的,在物理层数据的单位称为比特(bit);在数据链路层,数据的单位称为帧(frame);在网络层,数据的单位称为数据包(packet);传输层,数据的单位称为数据段(segment)。

 

简述TCP三次握手的过程?

在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认。第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态。第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。完成三次握手,客户端与服务器开始传送数据简版:首先A向B发SYN(同步请求),然后B回复SYN+ACK(同步请求应答),最后A回复ACK确认,这样TCP的一次连接(三次握手)的过程就建立了。

 

为什么需要第三次握手?

如果没有第三次握手,可能会出现如下情况:如果只有两次握手,那么server收到了client的SYN=1的请求连接数据包之后,便会分配资源并且向client发送一个确认位ACK回复数据包。那么,如果在client与server建立连接的过程中,由于网络不顺畅等原因造成的通信链路中存在着残留数据包,即client向server发送的请求建立连接的数据包由于数据链路的拥塞或者质量不佳导致该连接请求数据包仍然在网络的链路中,这些残留数据包会造成如下危害危害:当client与server建立连接,数据发送完毕并且关闭TCP连接之后,如果链路中的残留数据包才到达server,那么server就会认为client重新发送了一次连接申请,便会回复ACK包并且分配资源。并且一直等待client发送数据,这就会造成server的资源浪费。

 

三次握手有什么缺陷可以被黑客利用,用来对服务器进行攻击?

黑客仿造IP大量的向server发送TCP连接请求报文包,从而将server的半连接队列(上文所说的未连接队列,即server收到连接请求SYN之后将client加入半连接队列中)占满,从而使得server拒绝其他正常的连接请求。即拒绝服务攻击。

 

怎么防范dos这种攻击?

缩短服务器接收客户端SYN报文之后的等待连接时间,即SYNtimeout时间,也就是server接收到SYN报文段,到最后放弃此连接请求的超时时间,将SYNtimeout设置的更低,便可以成倍的减少server的负荷,但是过低的SYNtimeout可能会影响正常的TCP连接的建立,一旦网络不通畅便可能导致client连接请求失败2,SYNcookie + SYN proxy 无缝集成(较好的解决方案)SYNcookie:当server接收到client的SYN之后,不立即分配资源,而是根据client发送过来的SYN包计算出一个cookie值,这个cookie值用来存储server返回给client的SYN+ACK数据包中的初始序列号,当client返回第三次握手的ACK包之后进行校验,如果校验成功则server分配资源,建立连接。SYNproxy代理,作为server与client连接的代理,代替server与client建立三次握手的连接,同时SYNproxy与client建立好了三次握手连接之后,确保是正常的TCP连接,而不是TCP泛洪攻击,那么SYNproxy就与server建立三次握手连接,作为代理(网关?)来连通client与server。(类似VPN了解一下。)

 

网站出现500,502,400,403,404都是什么意思,怎么排查和解决?

500:服务器内部错误,因为服务器上的程序写的有问题,需要打开错误日志,查看日志,分析错误信息。502:网关错误,服务器作为网关或代理,从上游服务器收到无效响应。Nginx出现最多,出现502要么是nginx配置的不对,要么是php-fpm资源不够,可以分析php-fpm的慢执行日志,优化php-fpm的执行速度。400:错误请求,服务器不理解请求的语法。这可能是用户发起的请求不合理,需要检查客户端的请求。

403:服务器拒绝请求。检查服务器配置,是不是对客户端做了限制。

404:未找到请求的资源。检查服务器上是否存在请求的资源,看是否是配置问题。

 

简述DNS进行域名解析的过程。

客户端发出DNS请求翻译IP地址或主机名。DNS服务器在收到客户机的请求后:

(1)检查DNS服务器的缓存,若查到请求的地址或名字,即向客户机发出应答信息;

(2)若没有查到,则在数据库中查找,若查到请求的地址或名字,即向客户机发出应答信息;

(3)若没有查到,则将请求发给根域DNS 服务器,并依序从根域查找顶级域,由顶级查找二级域,二级域查找三级,直至找到要解析的地址或名字,即向客户机所在网络的DNS服务器发出应答信息,DNS服务器收到应答后现在缓存中存储,然后,将解析结果发给客户机。

(4)若没有找到,则返回错误信息。

 

dns既采用了tcp协议,又采用了udp协议,什么时候采用tcp协议?什么时候采用udp协议?为什么要这么设计?

从数据包大小上分:UDP的最大包长度是65507个字节,响应dns查询的时候数据包长度超过512个字节,而返回的只要前512个字节,这时名字解释器通常使用TCP 从发原来的请求。b,从协议本身来分:大部分的情况下使用UDP协议,大家都知道UDP协议是一种不可靠的协议,dns不像其它的使用UDP的Internet应用(如:TFTP,BOOTP和SNMP等),大部分集中在局域网,dns查询和响应需要经过广域网,分组丢失和往返时间的不确定性在广域网比局域网上更大,这就要求dns客户端需要好的重传和超时算法,这时候使用TCP。

TCP/IP的七层模型

应用层 (Application):网络服务与最终用户的一个接口。协议有:HTTP FTP TFTP SMTP SNMP DNS TELNET HTTPS POP3 DHCP表示层(Presentation Layer):

数据的表示、安全、压缩。(在五层模型里面已经合并到了应用层)

格式有,JPEG、ASCll、DECOIC、加密格式等

会话层(Session Layer):

建立、管理、终止会话。(在五层模型里面已经合并到了应用层)

对应主机进程,指本地主机与远程主机正在进行的会话

传输层 (Transport):

定义传输数据的协议端口号,以及流控和差错校验。

协议有:TCP UDP,数据包一旦离开网卡即进入网络传输层

网络层 (Network):

进行逻辑地址寻址,实现不同网络之间的路径选择。

协议有:ICMP IGMP IP(IPV4 IPV6) ARP RARP

数据链路层 (Link):

建立逻辑连接、进行硬件地址寻址、差错校验等功能。(由底层网络定义协议)

将比特组合成字节进而组合成帧,用MAC地址访问介质,错误发现但不能纠正。

物理层(Physical Layer):

是计算机网络OSI模型中最低的一层。

物理层规定:为传输数据所需要的物理链路创建、维持、拆除而提供具有机械的,电子的,功能的和规范的特性。

简单的说,物理层确保原始的数据可在各种物理媒体上传输。局域网与广域网皆属第1、2层。物理层是OSI的第一层,它虽然处于最底层,却是整个开放系统的基础。物理层为设备之间的数据通信提供传输媒体及互连设备,为数据传输提供可靠的环境。如果您想要用尽量少的词来记住这个第一层,那就是“信号和介质”。

 

基于mac地址划分vlan

基于mac地址划分的vlan只处理untagged报文,对于tagged报文处理方式和基于端口的vlan一样。

当接口收到报文为untagged报文时,接口会以报文的源mac地址为根据去匹配mac-vlan表项。

如果匹配成功,则按照匹配到的vlan id和优先级进行转发。

如果匹配失败,则按其他匹配原则进行匹配。

 

交换机绑定ip+mac+端口(vlan)

DHCP Snooping是 DHCP 的一种安全特性,主要应用在 交换机 上,作用是屏蔽接入网络中的非法的 DHCP 服务器。即开启 DHCP Snooping 功能后,网络中的客户端只有从管理员指定的 DHCP 服务器获取 IP 地址。由于 DHCP 报文缺少认证机制,如果网络中存在非法 DHCP 服务器,管理员将无法保证客户端从管理员指定的 DHCP服务器获取合法地址,客户机有可能从非法 DHCP 服务器获得错误的 IP 地址等配置信息,导致客户端无法正常使用网络。启用 DHCP Snooping 功能后,必须将 交换机上的端口设置为信任(Trust)和非信任(Untrust)状态,交换机 只转发信任端口的 DHCP OFFER/ACK/NAK报文,丢弃非信任端口的 DHCP OFFER/ACK/NAK 报文,从而达到阻断非法 DHCP 服务器的目的。建议将连接 DHCP 服务器的端口设置为信任端口,其他端口设置为非信任端口。此外 DHCP Snooping 还会监听经过本机的 DHCP 数据包,提取其中的关键信息并生成 DHCP Binding Table 记录表,一条记录包括 IPMAC、租约时间、端口、VLAN、类型等信息,结合 DAI(Dynamic ARP Inspection)和 IPSG(IP Source Guard)可实现ARP防欺骗和IP流量控制功能。

启用DHCP Snooping功能

[Huawei]dhcp enable

[Huawei]dhcp snooping enable

//启用DHCP Snooping功能;

对目标Vlan启用Vlan检测功能:

[Huawei]vlan 2

[Huawei-vlan2] dhcp snooping enable

[Huawei-vlan2]quit

在Vlan下添加ip source check user-bind enable,绑定命令如下后user-bind static ip-address 192.168.3.222 mac-address 3c97-0e60-0fe1 vlan 2,可以不对端口做操作;

对目标端口启用端口检测功能:

[Huawei] interface GigabitEthernet0/0/2

[Huawei-GigabitEthernet0/0/2] arp anti-attack check user-bind enable

//启用arp 协议抗攻击检查绑定服务

[Huawei-GigabitEthernet0/0/2] ip source check user-bind enable

//启用端口检测功能

# 执行命令display arp anti-attack configuration check user-bind interface,查看各接口下动态ARP检测的配置信息,以GE1/0/1为例。

[SwitchA] display arp anti-attack configuration check user-bind interface gigabitethernet 1/0/1 arp anti-attack check user-bind enable
 arp anti-attack check user-bind alarm enable

# 执行命令display arp anti-attack statistics check user-bind interface,查看各接口下动态ARP检测的ARP报文丢弃计数,以GE1/0/1为例。

[SwitchA] display arp anti-attack statistics check user-bind interface gigabitethernet 1/0/1 Dropped ARP packet number is 966                                                 
 Dropped ARP packet number since the latest warning is 605

由显示信息可知,接口GE1/0/1下产生了ARP报文丢弃计数,表明防ARP中间人攻击功能已经生效。

当在各接口下多次执行命令display arp anti-attack statistics check user-bind interface时,管理员可根据显示信息中“Dropped ARP packet number is”字段值的变化来了解ARP中间人攻击频率和范围

交换机安全

交换机的网络安全主要包括以下三个方面:

  • 保密性:交换机存储、处理和传输的信息,不会被泄露到非授权的用户、实体或过程。即信息只为授权用户使用。
  • 完整性:信息未经授权不能进行改变的特性。即网络信息在交换机存储或传输过程中保持不被偶然或蓄意地删除、修改、伪造、乱序、重放、插入等行为破坏和丢失的特性。
  • 可用性:在要求的外部资源得到保证的前提下,交换机在规定的条件下和规定的时刻或时间区间内处于可执行规定功能状态的能力。业务持续可用,满足电信级服务质量要求。

为了满足上述要求,交换机从以下三个平面对网络安全进行规划和部署。

交换机安全规划部署图

 

管理平面

管理平面的安全重点在于确保设备能够被合法管理,包括哪些用户可以登录设备,登录到设备上的用户又可以进行哪些操作等。如图1所示,交换机管理平面的安全主要通过只允许管理员登录设备来实现。管理员登录就是保证管理员安全的管理设备,交换机通过设置用户名和密码、ACL限制用户登录,通过STelnet登录方式保证管理员登录过程安全,通过设置用户的级别控制用户操作权限。

控制平面

控制平面主要通过CPU实现转发控制。CPU就像我们的大脑,指挥着设备各项机能的正常运转。CPU的安全是设备和协议正常运行的前提。如果上送CPU处理的协议报文过多导致CPU繁忙,设备性能就会下降,业务就会中断。因此,作为交换机的核心部件,CPU也就成为非法用户攻击的对象。交换机支持的控制平面的安全配置主要包括本机防攻击和攻击防范。

如图所示,为了保证CPU的正常运行,交换机使用默认的CPCAR值对上送的协议报文进行限速。如果经过交换机默认的CPCAR限速后,上送CPU的报文依然超过了CPU可以处理的范围,CPU利用率很高,还可以通过以下方式做进一步的处理:

  • 调整CPCAR值:缩小CPCAR值,减少上送CPU的协议报文的数量。
  • 攻击溯源:对上送CPU的报文进行分析统计,设置检查阈值,对于超过检查阈值的报文执行相应的惩罚措施,如丢弃报文、Shutdown接口、设置黑名单等。

CPU防攻击处理流程

转发平面

转发平面的作用就是通过查询转发表项指导数据流量正确转发,因此针对转发平面的攻击主要为以下两种:

  • 耗尽转发表资源,导致合法用户的转发表无法被学习,合法用户的流量无法被转发。
  • 篡改转发表,导致合法用户的流量转发至错误的地方。

基于交换机网络部署位置,主要分为二层网络的防攻击方法和三层网络的防攻击方法。

  • 二层网络:二层网络数据转发依赖MAC表,所有数据流量的转发都需要查找MAC表,因此MAC表也就成为非法用户攻击二层网络的主要目标。非法用户通过发送大量的报文,迅速耗尽MAC表资源,使报文因查找不到MAC表项进行广播,从而占用带宽资源,产生广播风暴。交换机支持通过MAC学习控制、端口安全、DHCP Snooping和风暴抑制等方式来保护MAC表的安全。
  • 三层网络:三层网络数据转发依赖ARP表和路由表。路由表是通过路由协议协商生成的,因此非法用户很难对此进行攻击。ARP表是通过协议报文生成的,非法用户可以发送大量的协议报文或者伪造协议报文使ARP表项出现异常。因此ARP表是交换机在三层网络中保护的主要对象。交换机支持通过ARP安全、DAI、EAI、IPSG防止此类攻击。
;