步骤一:查看linux是否安装了iptable得ko,xt_LOG 模块需要在内核编译时启用,因此确保你的内核配置中启用了该模块。config文件中查看是否包含了 CONFIG_NETFILTER_XT_TARGET_LOG 或 CONFIG_NETFILTER_XT_LOG 相关的配置项:
注释:出现该错误请参考步骤一:
[root@bogon kernels]# modprobe xt_LOG
FATAL: Module xt_LOG not found.
[root@test~]# lsmod
Module Size Used by
xt_LOG 12690 0
nf_log_ipv4 12767 0
步骤二:加载iptable得log模块
[root@test]# sysctl net.netfilter.nf_log.2
net.netfilter.nf_log.2 = NONE
[root@test]# modprobe nf_log_ipv4
[root@test]# sysctl net.netfilter.nf_log.2
net.netfilter.nf_log.2 = nf_log_ipv4
步骤三:增加iptable得LOG规则
-j LOG表示该规则用来记录LOG,level 用来设置log级别,log_prefix 可以增加模块前缀;该规则只用来记录LOG,不对报文产生动作,如果需要产生动作需要后续其他iptable处理。LOG得规则匹配完成后继续查看iptable用来查找动作得iptable
iptables -t raw -I PREROUTING 1 -j LOG --log-level 5 --log-prefix "vwaf_black:" -s 172.172.1.193 -d 172.172.2.194 -p tcp port 9091
步骤四:log日志默认记录在 /var/log/message中,可以设置单独文件记录iptable得日志
1、在rsyslog.conf 中添加配置
# vim /etc/rsyslog.conf
//在文中添加如下行
kern.* /var/log/iptables.log
之后重启日志配置
# systemctl restart rsyslog.service
步骤五:日志格式
May 19 14:36:52 vwaf-192 kernel: vwaf_black:IN=ens4 OUT= MAC=52:54:00:e1:53:35:52:54:00:41:d1:a1:08:00 SRC=172.172.1.193 DST=172.172.2.194 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=42662 DF PROTO=ICMP TYPE=8 CODE=0 ID=4031 SEQ=1
May 19 14:36:52 vwaf-192 kernel: vwaf_black:IN=ens4 OUT= MAC=52:54:00:e1:53:35:52:54:00:41:d1:a1:08:00 SRC=172.172.1.193 DST=172.172.2.194 LEN=84 TOS=0x00 PREC=0x00 TTL=64 ID=42662 DF PROTO=ICMP TYPE=8 CODE=0 ID=4031 SEQ=1