服務器出現緩慢的狀況可能由很多事情導致,比如錯誤的配置,腳本和差的硬件。但是有時候它可能因為有人對你的服務器用DoS或者DDoS進行洪水攻擊。
DoS攻擊或者DDoS攻擊是試圖讓機器或者網絡資源不可用的攻擊。這種攻擊的攻擊目標網站或者服務通常是托管在高防服務器比如銀行,信用卡支付網管,甚至根域名服務器,DOS攻擊的實施通常迫使目標重啟計算機或者消耗資源,使他們不再提供服務或者妨礙用戶,訪客訪問。
在這篇小文章中,你可以知道在受到攻擊之后如何在終端中使用netstat命令檢查你的服務器。
一些例子和解釋
netstat -na顯示所有連接到服務器的活躍的網絡連接netstat -an | grep :80 | sort只顯示連接到80段口的活躍的網絡連接,80是http端口,這對于web服務器非常有用,并且對結果排序.對于你從許多的連接中找出單個發動洪水攻擊IP非常有用netstat -n -p|grep SYN_REC | wc -l這個命令對于在服務器上找出活躍的SYNC_REC非常有用,數量應該很低,最好少于5.在dos攻擊和郵件炸彈,這個數字可能非常高.然而值通常依賴于系統,所以高的值可能平分給另外的服務器.netstat -n -p | grep SYN_REC | sort -u列出所有包含的IP地址而不僅僅是計數.netstat -n -p | grep SYN_REC | awk '{print $5}' | awk -F: '{print $1}'列出所有不同的IP地址節點發送SYN_REC的連接狀態netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n使用netstat命令來計算每個IP地址對服務器的連接數量netstat -anp |grep 'tcp|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n列出使用tcp和udp連接到服務器的數目netstat -ntu | grep ESTAB | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr檢查ESTABLISHED連接而不是所有連接,這可以每個ip的連接數netstat -plan|grep :80|awk {'print $5'}|cut -d: -f 1|sort|uniq -c|sort -nk 1顯示并且列出連接到80端口IP地址和連接數.80被用來作為HTTP
如何緩解DDoS攻擊
當你發現攻擊你服務器的IP你可以使用下面的命令來關閉他們的連接:
iptables -A INPUT 1 -s $IPADRESS -j DROP/REJECT
請注意你必須用你使用netstat命令找到的IP數替換$IPADRESS
在完成以上的命令,使用下面的命令殺掉所有httpd連接,清除你的系統,然后重啟httpd服務。