Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> Linux 教學

Linux 使用 netstat 偵測與分析 DDoS 攻擊實戰指南

編輯:Linux 教學

當伺服器疑似遭受 DDoS 攻擊時,netstat 是快速診斷連線狀態、鎖定攻擊來源的得力工具。本文整理常用指令與分析邏輯,協助管理員快速應對。

核心診斷指令集

1. 檢視所有活躍連線

netstat -na

2. 專注 HTTP (Port 80) 連線並排序

netstat -an | grep :80 | sort

用途:快速找出發動 HTTP Flood 攻擊的單一 IP。

3. 統計 SYN_RECV 狀態連線數(偵測 SYN Flood)

netstat -n -p | grep SYN_RECV | wc -l

正常值通常 < 5;若極高(如數百),極可能遭受 SYN Flood 攻擊。

4. 列出所有發送 SYN_RECV 的唯一 IP

netstat -n -p | grep SYN_RECV | sort -u

5. 擷取發送 SYN_RECV 連線的 IP 位址

netstat -n -p | grep SYN_RECV | awk '{print $5}' | awk -F: '{print $1}'

6. 統計每個 IP 的總連線數

netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

7. 列出 TCP/UDP 連線總數

netstat -anp | grep 'tcp\|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

8. 只檢查 ESTABLISHED 狀態連線數

netstat -ntu | grep ESTAB | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr

9. 專門監控 Port 80 連線 IP 與數量

netstat -plan | grep :80 | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nk 1

緊急封鎖攻擊 IP

確認攻擊 IP 後,立即用 iptables 封鎖:

iptables -A INPUT -s 攻擊者IP -j DROP
# 或 REJECT 回應連線重設
iptables -A INPUT -s 攻擊者IP -j REJECT

注意:需將 攻擊者IP 替換為實際偵測到的 IP。建議搭配 iptables-save 持久化規則。

進階防護建議

  • 部署 fail2ban 自動封鎖異常連線
  • 啟用 SYN Cookies:echo 1 > /proc/sys/net/ipv4/tcp_syncookies
  • 調整核心參數:/etc/sysctl.conf 設定 net.ipv4.tcp_max_syn_backlog、net.ipv4.tcp_synack_retries
  • 雲端防護:Cloudflare、AWS Shield 等 WAF 服務
  • 流量清洗:專業 DDoS 緩解設備或服務商

總結

netstat 配合 awk/sort/uniq 可快速定位異常流量來源。但 DDoS 防禦是系統工程,需結合核心調優、應用層限流、雲端清洗多層防護,平時更應建立基準流量畫像,才能在攻擊發生時精準判斷與快速響應。

Copyright © Windows教程網 All Rights Reserved