“每天一命令之netstat”的版本间的差异
跳到导航
跳到搜索
docker>Evan |
小 (导入1个版本) |
(没有差异)
|
2019年10月14日 (一) 13:55的最新版本
TCP连接状态
TCP连接的状态,TCP进行3次握手,其过程有很多状态,不同的连接状态,都有想对应的状态码,看下面列表: LISTEN:侦听来自远方的TCP端口的连接请求 ESTABLISHED:代表一个打开的连接 SYN-SENT:再发送连接请求后等待匹配的连接请求 SYN-RECEIVED:再收到和发送一个连接请求后等待对方对连接请求的确认 FIN-WAIT-1:等待远程TCP连接中断请求,或先前的连接中断请求的确认 FIN-WAIT-2:从远程TCP等待连接中断请求 CLOSE-WAIT:等待从本地用户发来的连接中断请求 CLOSING:等待远程TCP对连接中断的确认 LAST-ACK:等待原来的发向远程TCP的连接中断请求的确认 TIME-WAIT:等待足够的时间以确保远程TCP接收到连接中断请求的确认 CLOSED:没有任何连接状态
常用
<Socket>={-t|--tcp} {-u|--udp} -t或--tcp 显示TCP传输协议的连线状况。 -u或--udp 显示UDP传输协议的连线状况 -n, --numeric don't resolve names -n或--numeric 直接使用IP地址,而不通过域名服务器 显示当前所有活动的网络连接: #netstat -na 显示出所有处于监听状态的应用程序及进程号和端口号: #netstat -aultnp 这个命令可以查找出当前服务器有多少个活动的 SYNC_REC 连接。正常来说这个值很小,最好小于5。 当有Dos攻击或者邮件炸弹的时候,这个值相当的高。尽管如此,这个值和系统有很大关系,有的服务器值就很高,也是正常现象。 netstat -n -p | grep SYN_REC | sort -u 使用netstat命令计算每个主机连接到本机的连接数。 netstat -anp |grep 'tcp|udp' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n #应该这个才是可以的 netstat -anp | grep -E 'tcp|udp' 列出所有连接到本机的UDP或者TCP连接的IP数量。 netstat -ntu | grep ESTAB | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr
如何添加防火墙
直接 nmap 127.0.0.1 #就可以知道提供多少对外的端口了啦 如果真的发现有大量的假连接了,那么也不要慌,要先找出一些“另类的IP地址”,怎么解释呢,因为在进行Dos攻击时,会为造出大量的假IP去连接服务器,进行3次握手,所以,这就要根据经验去找出假IP,然后通过防火墙规则,添加一个规则拒接这个假IP的网段连接。 #iptables -A INPUT 1 -s $IPADRESS -j DROP/REJECT 注意,你需将$IPADRESS 替换成需要拒绝连接的IP地址。执行完iptables 后呢,要重启一下web服务