你还在花钱防御DDoS?巧用iptables 5招免费搞定 SYN洪水攻击!

 SYN Flood (SYN洪水) 是种典型的DoS (Denial of Service,拒绝服务) 攻击,属于DDos攻击的一种。遭受攻击后服务器TCP连接资源耗尽,停止响应正常的TCP连接请求。尽管这种攻击已经出现了十多年,但它的变种至今仍能看到。虽然能有效对抗SYN洪泛的技术已经存在,但是没有对于TCP实现的一个标准的补救方法出现。今天小编将详述这种攻击原理以及对抗SYN洪水的方法~

攻击原理

正常的三次握手:

  1. 先发起一个 SYN=1 的包,并且带一个序列号( Seq );
  2. 服务器收到这个包以后,将这个数据放入到一个队列中,这个队列叫 syn_table 。并且发送一个返回包,作为响应,这个返回包有自己的序列号( Seq ),以及一个 Ack , Ack 的值就是客户端发来的 Seq 值加一;
  3. 客户端收到返回信息以后,将服务器的 Seq 加一作为 Ack 又发给服务器;
  4. 服务器收到这第三个包,验证没问题以后,就将这个连接放入到 request_sock_queue,三次握手完成。

 

 

SYN Flood 主要是利用了TCP协议的三次握手的缺陷,在这个攻击中,Flood带有一系列的syn数据包,每个数据包都会导致服务端发送SYN-ACK响应,然后服务器等待SYN+ACK之后的第三次握手ACK,由于客户端是软件生成的虚拟IP,永远不会再发送ACK响应服务端,服务端会利用从传机制直到超时后删除,整个系统资源也会被队列积压消耗,导致服务器无法对正常的请求进行服务。

 

 

如何判断自己是否遭受 SYN 攻击?

检测SYN攻击非常的简单,当你在服务器上看到大量的半连接状态时,特别是源IP地址是随机的,基本上可以断定这是一次SYN攻击。我们使用系统自带的netstat 工具来检测SYN攻击:

  1. # netstat -n -p TCP 

反馈如图

 

 

防御 SYN Flood攻击

配置iptables规则

Iptables防火墙我们可以理解为Linux系统下的访问控制功能,我们可以利用Iptables来配置一些规则来防御这种攻击。强制SYN数据包检查,保证传入的tcp链接是SYN数据包,如果不是就丢弃。

  1. #iptables -A INPUT -p tcp --syn -m state --state NEW -j DROP 

强制检查碎片包,把带有传入片段的数据包丢弃。

  1. #iptables -A INPUT -f -j DROP 

丢弃格式错误的XMAS数据包。

  1. #iptables -A INPUT -p tcp --tcp-flags ALL ALL -j DROP 

丢弃格式错误的NULL数据包。

  1. #iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP 

当Iptables配置完成后我们可以使用nmap命令对其验证

  1. # nmap -v -f FIREWALL IP 
  2. # nmap -v -sX FIREWALL IP 
  3. # nmap -v -sN FIREWALL IP 

例如:

 

 

其他防御方式:

除此之外针对SYN攻击的几个环节,我们还可以使用以下处理方法:

方式1:减少SYN-ACK数据包的重发次数(默认是5次)

  1. sysctl -w net.ipv4.tcp_synack_retries=3 
  2. sysctl -w net.ipv4.tcp_syn_retries=3 

方式2:使用SYN Cookie技术

  1. sysctl -w net.ipv4.tcp_syncookies=1 

方式3:增加backlog队列(默认是1024):

  1. sysctl -w net.ipv4.tcp_max_syn_backlog=2048 

方式4:限制SYN并发数:

  1. iptables -A INPUT -p tcp --syn -m limit --limit 1/s -j ACCEPT --limit 1/s 

 

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/131097.html<

(0)
运维的头像运维
上一篇2025-02-26 09:29
下一篇 2025-02-26 09:31

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注