📑 题目:21. 客户端不断进行请求链接会怎样?
参考解析
服务器端准备为每个请求创建一个链接,并向其发送确认报文,然后等待客户端进行确认后创建。如果此时客户端一直不确认,会造成 SYN 攻击,即:
SYN 攻击,英文为 SYN Flood ,是一种典型的 DoS/DDoS 攻击。
1、客户端向服务端发送请求连接数据包。
2、服务端向客户端发送确认数据包。
3、客户端不向服务端发送确认数据包,服务器一直等待来自客户端的确认。
这是这一步!!!
? 如何检测 SYN 攻击?检测 SYN 攻击非常的方便,当你在服务器上看到大量的半连接状态时,特别是源 IP 地址是随机的,基本上可以断定这是一次 SYN 攻击。在 Linux/Unix 上可以使用系统自带的 netstat 命令来检测 SYN 攻击。
? 怎么解决 SYN 攻击呢?答案是只能预防,没有彻底根治的办法,除非不使用 TCP 。方式如下:
- 1、限制同时打开 SYN 半链接的数目
- 2、缩短 SYN 半链接的 Timeout 时间
- 3、关闭不必要的服务。
- 4、增加最大半连接数。
- 5、过滤网关防护。
- 6、SYN cookie技术。