查看Linux服务器的客户端连接情况
Shell实现服务器客户端连接数统计
安装net-tools
1 | apt install net-tools |
执行命令
1 | netstat -nt | tail -n +3 | awk -F "[ :]+" -v OFS="" '{printf("%45s => %s:%-5s\n",$6,$4,$5)}' | sort | uniq -c | sort -rn |
参数解释:
- netstat -nt: 查看客户端链接情况
- tail -n +3: 从第3行(包括)开始显示
- awk -F “[ :]+”: 指定文件的分隔符为一个或多个的空格或冒号
- -v OFS=””: 设置变量OFS(输出字段分隔符)为””
- {printf(“%45s => %s:%-5s\n”,$6,$4,$5)}: 格式化输出结果
- sort | uniq -c: 去重并显示重复出现的次数,即端口连接数(uniq只会去重相邻的,所以使用前必须使用sort)
- sort -rn: 端口连接数从大到小排序
输出
1 | 3 61.177.173.22 => 66.42.76.76:22 |
从输入结果我们可以看到有哪些IP连接了我们的服务器,并且可以看到连接的数量和连接的端口