海运的博客

Iptables下TCP标志tcp-flags匹配模块使用

发布时间:November 12, 2012 // 分类:Iptables // No Comments

Iptables可通过匹配TCP的特定标志而设定更加严谨的防火墙规则,tcp-flags参数使用如下:

-p tcp --tcp-flags
#匹配指定的TCP标记,有两个参数列表,列表内部用逗号为分隔符,两个列表之间用空格分开。
#第一个列表用作参数检查,第二个列表用作参数匹配。
#可用以下标志:
SYN、ACK、FIN、RST 、URG、PSH、ALL、NONE
#ALL是指选定所有的标记,NONE是指未选定任何标记。
--syn
#https://www.haiyun.me
#SYN标志设置为1,其它标志未设置,相当于:
-p tcp --tcp-flags ALL SYN

很多人在使用tcp-flags匹配时遇到以下错误:

iptables v1.4.6: --tcp-flags requires two args.

原因是只定义了参数检查,未设置参数匹配,ROS下使用一组参数就可以了,正确使用tcp-flags应用示例:
防止Xmas扫描:

iptables -A INPUT -p tcp --tcp-flags ALL FIN,URG,PSH -j DROP

防止TCP Null扫描:

iptables -A INPUT -p tcp --tcp-flags ALL NONE -j DROP

拒绝TCP标记为SYN/ACK但连接状态为NEW的数据包,防止ACK欺骗。

iptables -A INPUT -p tcp --tcp-flags SYN,ACK SYN,ACK -m state --state NEW -j DROP

Linux服务器TCP连接状态查看及详细说明

发布时间:September 30, 2012 // 分类:网络工具 // No Comments

Linux下统计当前TCP连接状态:

netstat -ant | awk '{print $NF}' | grep -v '[a-z]' | sort | uniq -c
33 ESTABLISHED
3 FIN_WAIT2
7 LISTEN
221 TIME_WAIT

TCP连接状态说明:

#https://www.haiyun.me
LISTEN:服务器正在监听的端口
SYN_SENT:客户发出新连线请求后,还未收到服务器回应;
SYN_RECV:服务器接收到新连线请求;
ESTABLISED:已建立数据连接;
FIN_WAIT1:客户端主动断开请求,等待服务端ack确认
FIN_WAIT2:收到服务器端断开ack确认,等待服务端FIN;
TIME_WAIT:主动断开方发送最后ack后等待2MSL时间。

TCP的状态变迁图:
TCP状态变迁图.png
TCP连接建立和终止所对应的状态图:
TCP连接建立和终止状态图.png

Cacti监控TCP连接状态

发布时间:May 19, 2012 // 分类:Cacti // No Comments

Cacti服务端新建TCP状态获取脚本:

wget https://www.haiyun.me/download/tcp-connections.zip
unzip tcp-connections.zip

修改get_tcp_connections脚本目录:

CACTIDIR=/cactipath/scripts

修改cacti_graph_template_tcp_connections.xml模板内脚本路径:

/bin/bash /var/www/htdocs/cacti/scripts/get_tcp_connections

然后在Cacti界面导入cacti_graph_template_tcp_connections.xml模板。
TCP连接状态监控效果如下:
cacti监控tcp连接.png

分类
最新文章
最近回复
  • 海运: 地址格式和udpxy一样,udpxy和msd_lite能用这个就能用。
  • 1: 怎么用 编译后的程序在家里路由器内任意一台设备上运行就可以吗?比如笔记本电脑 m参数是笔记本的...
  • 孤狼: ups_status_set: seems that UPS [BK650M2-CH] is ...
  • 孤狼: 擦。。。。apcupsd会失联 nut在冲到到100的时候会ONBATT进入关机状态,我想想办...
  • 海运: 网络,找到相应的url编辑重发请求,firefox有此功能,其它未知。
  • knetxp: 用浏览器F12网络拦截或监听后编辑重发请求,修改url中的set为set_super,将POS...
  • Albert: 啊啊啊啊啊啊啊啊啊 我太激动了,终于好了英文区搜索了半天,翻遍了 pve 论坛没找到好方法,博...
  • jiangker: good, very helpful to me
  • fengfeng: N1 armbian 能有编译下内核吗。。我要开启can 不懂怎么操作
  • 1: 方法一ngtcp2要改下:./configure PKG_CONFIG_PATH=/usr/l...