正如标题所说,如何检查端口 80 上的 Web 服务器的打开连接数和443?
我目前正在使用这条命令来获取端口 80 上每个 ipaddress 的打开连接数:
netstat -tn 2>/dev/null |
grep :80 |
grep -i established |
awk '{print $5}' |
cut -d: -f1 |
sort |
uniq -c |
sort -nr |
head
如何将端口号 443 添加到此查询?我尝试了以下方法:
netstat -tn 2>/dev/null |
grep ':80/|:443' |
grep -i established |
awk '{print $5}' |
cut -d: -f1 |
sort |
uniq -c |
sort -nr |
head
但最终没有得到任何结果,我做错了什么吗?
答案1
尝试
netstat -ant | egrep '(:80|:443) .*:.*ESTABLISHED' | awk '{print $5}' | cut -d: -f1 | sort | uniq -c
或者
netstat -nt | awk '$4 ~ /:(143|993)$/ && $6 ~ /ESTABLISHED/ {print $5}' | cut -d: -f1 | sort | uniq -c
netstat -nt
列出不包含 IP 地址 DNS 查找的 TCP 连接egrep ':(80|443) .*:.*ESTABLISHED'
选择端口 80 上已建立的连接,限制为本地地址'awk {print $5}'
分隔远程地址和端口cut -d: -f1
远程端口sort | uniq -c
统计唯一 IPawk '$4 ~ /:(80|443)$/ && $6 ~ /ESTABLISHED/ {print $5}'
选择远程 IP 与本地端口 80 和 443 建立连接
编辑:
如果您想按 IP 统计连接数,您可以{print $4, $5}
在打印语句中使用。
您可以通过改变的匹配来匹配不同或多个状态$6
,例如/(ESTAB|SYN)/
其中将包括打开连接。
答案2
- grep ':80/|:443'
+ egrep ':80|:443'