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
判断CC攻击命令详解
防cc攻击,推荐使用HttpGuard
# 查看所有80端口的连接数 netstat -nat|grep -i "80"|wc -l # 对连接的IP按连接数量进行排序 netstat -ntu | awk \'{print $5}\' | cut -d: -f1 | sort | uniq -c | sort -n # 查看TCP连接状态 netstat -nat |awk \'{print $6}\'|sort|uniq -c|sort -rn netstat -n | awk \'/^tcp/ {++S[$NF]};END {for(a in S) print a, S[a]}\' netstat -n | awk \'/^tcp/ {++state[$NF]}; END {for(key in state) print key,"\t",state[key]}\' netstat -n | awk \'/^tcp/ {++arr[$NF]};END {for(k in arr) print k,"\t",arr[k]}\' netstat -n |awk \'/^tcp/ {print $NF}\'|sort|uniq -c|sort -rn netstat -ant | awk \'{print $NF}\' | grep -v \'[a-z]\' | sort | uniq -c # 查看80端口连接数最多的20个IP netstat -anlp|grep 80|grep tcp|awk \'{print $5}\'|awk -F: \'{print $1}\'|sort|uniq -c|sort -nr|head -n20 netstat -ant |awk \'/:80/{split($5,ip,":");++A[ip[1]]}END{for(i in A) print A,i}\' |sort -rn|head -n20 # 用tcpdump嗅探80端口的访问看看谁最高 tcpdump -i eth0 -tnn dst port 80 -c 1000 | awk -F"." \'{print $1"."$2"."$3"."$4}\' | sort | uniq -c | sort -nr |head -20 # 查找较多time_wait连接 netstat -n|grep TIME_WAIT|awk \'{print $5}\'|sort|uniq -c|sort -rn|head -n20 # 查找较多的SYN连接 netstat -an | grep SYN | awk \'{print $5}\' | awk -F: \'{print $1}\' | sort | uniq -c | sort -nr | more