CentOS 6.9开启iptables的日志实现调试
系统日志配置在CentOS 5上叫syslog,而在CentOS 6上叫rsyslog(增强版的syslog),CentOS 5上的配置文件在/etc/syslog.conf下,而CentOS 6在/etc/rsyslog.conf下。
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 9000 -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.csdn.net/jk110333/article/details/8229828
https://www.cnblogs.com/waitfate/p/4303537.html
http://blog.csdn.net/adamska0104/article/details/42584173
http://blog.csdn.net/xiexievv/article/details/48001261