运输层概述
搞清楚一个概念,五层结构说的是TCP/IP协议,而大多数的设备通信都采用TCP/IP协议。
回顾:
网络层: IP协议(RIP,OSPF,BGP这些是选择路径的协议)、ICMP、ARP、IGMP
运输层:TCP协议(可靠传输)、UDP(不可靠传输)
应用层:HTTP协议 、HTTPS协议 、FTP、DNS 、SMTP(发邮件)、PoP3(收邮件)、RDP
1.1.运输层两个协议的应用场景
- TCP 分段传输,编号(给每段数据编号,接收端按编号检查,丢了哪个包就叫发送端重传),流量控制,是可靠性传输,建立会话:netstat -n可查看会话。例如:qq传文件(发送方要把数据分成多个数据包并编上号,接收端收到之后检查编号是否完整,再把所有数据包按编号串起来才能完整接受)、访问网站、上传文件。
- UDP不编号,一个数据包就能完成数据通信,只扔出一个数据包,丢了就连接失败,不建立会话,是不可靠传输。例如:qq聊天、多播(老师把自己的电脑画面播到每个学生电脑上);
1.2.运输层与应用层之间的关系
- 使用http不可靠传输时,使用80端口,http=TCP+80(端口);
- 使用https安全传输时,使用443端口,https=TCP+443(端口);
- ftp=TCP+21;
- SMTP=TCP+25;
- POP3=TCP+110;
- RDP=TCP+3389;
- 共享文件夹=TCP+445;
- SQL=TCP+1433;
- DNS=UDP+53 or TCP+53;
应用层协议其实就是传输层的两种主要协议加上相应端口来表示是哪一种应用层协议。其实就是传输层协议加上一个使用的端口号就表示一种应用。比如可以这样命名一个应用层协议:KON=TCP+4000 。
1.3.应用层协议和服务之间的关系
服务(对外提供的服务)运行后在TCP或UDP的某个端口侦听客户端请求。
一台计算机上可能运行有多种服务,但是只有一个IP地址。
- Web:80;
- ftp:21;
- smtp:25;
- pop3:110;
假设IP地址为:101.100.0.0,用端口来定位服务,用IP地址来定位计算机。
查看自己计算机侦听的端口:
netstat -an
测试远程计算机打开的端口:
telnet 10.7.1.53 21
端口代表服务,如果telnet命令返回提示端口失败,说明不能访问这个服务。
1.4.更改端口增加服务器安全
黑客可能会使用端口扫描工具,扫描到用户计算机打开侦听的端口,以此判断用户计算机提供的哪种服务,以展开攻击。
可以通过更改服务对应的端口增加服务器的安全性能。
1.5.Windows防火墙的作用
-
一台计算机对外提供一种服务就会监听一个对应的端口。比如装上ftp服务,该计算机就在网卡上侦听21端口,是可见的,可用netstat -an查看侦听端口,安装Web服务,计算机就打开80端口侦听客户端的请求,若没有启用该服务,使用netstat -an命令查看时看不到80端口的。客户端要连接时,数据包要写上目标端口,比如目标端口为21,服务器就知道客户端访问的是ftp服务,也就是上面所说的用端口来区分服务。
-
如果把计算机的所有端口都关闭,那么该计算机相当于在互联网上隐身了,谁也访问不了它。但是它却可以访问其他计算机,因为Windows防火墙不拦截出去的流量,拦截进来的流量(计算机与外界通信完毕,端口关闭,是动态的)。例如:你ping别人不通,别人ping你通,说明别人设置了防火墙。
-
如果该计算机装了许多服务,但是只向外提供Web服务,只需要在网卡上打开80端口,关闭其余端口,发送过来的数据包只能访问80端口服务,若数据包目标端口为21端口,网卡会进行拦截,这样即使服务器本身运行了ftp服务,打开了21端口侦听,外面也访问不了,即使ftp服务有漏洞外面用户也攻击不了。也就是说在服务器上只开必要的端口,其实是增加了服务器的安全。
-
以Win10为例:
打开Windows防火墙,点击“高级设置”;
选择“入站规则”或“出站规则”,点击新建规则;
选择“端口”,下一步;
这样便可设置对外提供的端口服务:
总结:Windows防火墙的特点为:拦截外界向内部的主动访问,不拦截内部向外部的访问;
了解该方法可以使服务器更安全!
1.6.Windows防火墙防不了木马程序
-
木马程序也就是所谓的后门,比如灰鸽子木马。通过伪装成图标、图片、或连接使用户主动下载并自动安装木马程序,把电脑控制权移交给黑客,由此绕开了Windows防火墙(防止的是外界主动入侵,不拦截内部向外访问)。
-
可以通过netstat -n命令查看建立的会话来观测新增端口,以此判断是否中了木马程序。木马程序与杀毒软件冲突,打开杀毒软件即可消灭木马程序。
-
也可以通过查看本计算机上的服务判断是否中了木马:
打开“应用”窗口,选择“服务”,勾选隐藏Microsoft服务,即可查看本计算机除微软以外安装的服务,通过制造商可查看服务提供商,以此判断是否木马程序。
1.7.网络层实现的安全
- 使用网络层安全设置,严格控制流量的出入。如果该计算机只提供Web服务,那么该计算机只允许目标地址或源地址为80端口的数据包通过,从而达到严格管控其他目标地址或源地址非80端口的数据包的出入。比如灰鸽子木马使用的是8000端口,即使用户主动下载并安装了木马程序,由于出去的相关数据包源地址为8000端口(非80端口),所以会被拦截,以此在网络层实现信息安全。
- 打开本地安全策略窗口,在IP安全策略...选项右键可新建安全策略,自定义计算机允许哪些网段的,以哪些端口为目标端口或源端口的相关数据包的进出。
- 再如:一个放在公网公开的服务器A,只要能猜对该计算机的用户名和密码,任何网段的计算机都可以通过远程桌面控制该计算机。可以新增的网络层安全措施为:在服务器A上设置只允许计算机B的IP地址通过远程桌面控制服务器A,这样想要黑服务器A必须先获取计算机B的用户名和密码,再获取服务器A的用户名和密码才能成功黑入服务器A。由此通过网络层提高了服务器A的安全性能。