基础命令 ·

Linux常用netstat命令收集中…..

1. 查看请求80服务的client ip按照连接数排序  

 netstat -nat|grep ":80"|awk '{print $5}' |awk -F: '{print $1}' | sort| uniq -c|sort -n

2. 查看apache详细链接情况   

netstat -aptol

3.查看所有80端口的连接数

netstat -nat|grep -i "80"|wc -l

4.对连接的IP按连接数量进行排序

netstat -anp | grep 'tcp|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
netstat -ntu | awk '{print $5}' | egrep -o "[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}" | sort | uniq -c | sort -nr

5.查看TCP连接状态

netstat -nat |awk '{print $6}'|sort|uniq -c|sort -rn
netstat -n | awk '/^tcp/ {print $NF}'|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 -ant | awk '{print $NF}' | grep -v '[a-z]' | sort | uniq -c

6.查看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

7.查找较多time_wait连接

netstat -n|grep TIME_WAIT|awk '{print $5}'|sort|uniq -c|sort -rn|head -n20

8.查找较多的SYN连接

netstat -an | grep SYN | awk '{print $5}' | awk -F: '{print $1}' | sort | uniq -c | sort -nr | more

9.查看DDOS攻击

netstat -na

10.查看DDOS攻击只显示连接到80段口的活跃的网络连接,80是http端口,这对于web服务器非常有用,并且对结果排序.对于你从许多的连接中找出单个发动洪水攻击IP非常有用

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

11.这个命令对于在服务器上找出活跃的SYNC_REC非常有用,数量应该很低,最好少于5.
在dos攻击和邮件炸弹,这个数字可能非常高.然而值通常依赖于系统,所以高的值可能平分给另外的服务器.

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

12.列出所有包含的IP地址而不仅仅是计数

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

13.列出所有不同的IP地址节点发送SYN_REC的连接状态

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

14.使用netstat命令来计算每个IP地址对服务器的连接数量

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

15.列出使用tcp和udp连接到服务器的数目

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

16.检查ESTABLISHED连接而不是所有连接,这可以每个ip的连接数,显示并且列出连接到80端口IP地址和连接数.80被用来作为HTTP如何缓解ddos攻击当你发现攻击你服务器的IP你可以使用下面的命令来关闭他们的连接:

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

iptables -A INPUT 1 -s $IPADRESS -j DROP/REJECT请注意你必须用你使用netstat命令找到的IP数替换$IPADRESS

17.获取用户登录失败的用户

grep "Accepted password for root from" /var/log/messages | awk '{print $13}' | uniq -c | sort -nr | more

评论已关闭