1. TCP连接的11中状态
tcp连接状态 SYN_SENT主动发起连接
ESTABLISHED建立连接(部分主机上是ESTAB)
FIN_WAIT_1主动发起关闭
FIN_WAIT_2
TIME_WAIT 关闭等待,此状态是防止最后的ACK丢失,可以允许再次发送
SYN_RCVD收到打开后被动打开端的状态,此状态过多可能是收到DDOS攻击
CLOSE_WAIT被动关闭
LAST_ACK等待最后的关闭
CLOSED关闭状态
LISTEN监控状态
CLOSING这个特殊,是服务器和客户端同时发起关闭
根据上述信息,监控TCP状态可以了解主机TCP连接状态,尤其是针对提供web服务的服务器,可以监控是否有DDOS,ESTAB过大说明用户很多,可以适当提高服务器性能等。
2. TCP监控客户端
在zabbix配置文件zabbix_agentd.conf,最后增加如下内容:
UserParameter=TCP_Status[*],ss -ant |grep -c $1
此处使用ss命令用来显示处于活动状态的套接字信息。ss命令可以用来获取socket统计信息,它可以显示和netstat类似的内容。但ss的优势在于它能够显示更多更详细的有关TCP和连接状态的信息,而且比netstat更快速更高效。
重启zabbix-agent。
在zabbix-server端验证:
/usr/local/zabbix-3.0.3/bin/zabbix_get -s 192.168.199.95 -p10041 -k TCP_Status[ESTAB]
3. TCP监控模版
可以创建如下监控项:
完整的监控项
我自己创建的tcp模版:TCP模版 使用模版时候需要注意有的监控项内容和你的是否匹配。可以使用
ss -a
查看
网友评论