CentOS 6.9开启iptables的日志实现调试

时间:2024-12-13 19:05:02

系统日志配置在CentOS 5上叫syslog,而在CentOS 6上叫rsyslog(增强版的syslog),CentOS 5上的配置文件在/etc/syslog.conf下,而CentOS 6在/etc/rsyslog.conf下。

iptables的执行顺序表:

CentOS 6.9开启iptables的日志实现调试

说明:

1、如果从外网请求到内网,那么将从头走到尾,经过上图的每一个点。

2、如果是本机请求本机,那么将从local process开始往下执行;打比方nat来说,如果请求本机的转发规则时,那么经历的阶段就只能从OUTPUT链开始,不会经过PREROUTING链。

日志调试的思路:

1、先在指定的表和链增加日志的输出。

2、指定日志的级别以及日志的前缀,注意,前缀非常重要,可以加快问题的分析。

3、最后就是使用ping或者crul进行访问测试,观察日志。

4、iptables是按顺序执行的,但是如果在某一处地方跳转了之后以下的规则就不会再执行,这一个可以日志打点后再慢慢观察发现。

日志文件的配置:

1、在rsyslog.conf添加配置

/etc/rsyslog.conf中添加不同的日志级别

kern.warning     /var/log/iptables.log
kern.debug /var/log/iptables.log
kern.info /var/log/iptables.log

不过推荐全部日志都记录:

kern.*     /var/log/iptables.log

重启日志配置:

/etc/init.d/rsyslogd restart

如果不进行配置,那么这些日志会记录到/var/log/messages中,当然,在/var/log/kern.log也可以找得到。

iptables日志打点配置:

比如下面针对nat表的POSTROUTING链进行日志打点

iptables -t nat -A POSTROUTING -d 192.168.0.61 -p tcp --dport  -j LOG --log-prefix "*** nat-POSTROUTING ***" --log-level warning

--log-prefix:日志前缀

--log-level:日志级别

详细配置说明参考:https://www.frozentux.net/iptables-tutorial/cn/iptables-tutorial-cn-1.1.19.html#LOGTARGET

参考:

https://www.frozentux.net/iptables-tutorial/cn/iptables-tutorial-cn-1.1.19.html

http://blog.sina.com.cn/s/blog_702eef650101moqb.html

http://blog.51cto.com/jafy00/651856

http://blog.****.net/jk110333/article/details/8229828

https://www.cnblogs.com/waitfate/p/4303537.html

http://blog.****.net/adamska0104/article/details/42584173

http://blog.****.net/xiexievv/article/details/48001261

http://www.linuxidc.com/Linux/2007-05/4097p2.htm

http://blog.****.net/chinalinuxzend/article/details/1765259