Centos6开启独立iptables日志

iptables日志管理
Iptables的man参考页中提到: 我们可以使用iptables在linux内核中建立, 维护和检查IP包过滤规则表. 几个不同的表可能已经创建, 每一个表包含了很多内嵌的链, 也可能包含用户自定义的链.
Iptables默认把日志信息输出到/var/log/messages文件. 不过一些情况下你可能需要修改日志输出的位置. 下面向大家介绍如何建立一个新的日志文件/var/log/iptables.log. 通过修改或使用新的日志文件, 你可以创建更好的统计信息或者帮助你分析网络攻击信息.

Iptables默认的日志文件,屏幕将显示/var/log/messages文件中的iptables日志信息:

# tail -f /var/log/messages


一、iptables日志输出到syslog 
在CentOS5上叫syslog,而在CentOS6上叫rsyslog,叫增强版的syslog,CentOS5上的配置文件在/etc/syslog.conf下,而CentOS6在/etc/rsyslog.conf下

1. vim /etc/rsyslog.conf 添加配置
 /etc/rsyslog.conf中添加不同的日志级别(默认warn(=4))
kern.warning     /var/log/iptables.log
kern.debug       /var/log/iptables.log
kern.info        /var/log/iptables.log
不过推荐全部日志都记录:  kern.*     /var/log/iptables.log
重启日志配置: service rsyslog restart

2. 让日志滚动,这一步是可选的
 vim /etc/logrotate.d/syslog
加入/var/log/iptables

二、iptables添加日志规则
1. 在iptables添加日志选项-A参数添加到最后 
iptables -A INPUT  -j LOG --log-prefix "iptables"
这样就可以记录所有的记录了,只要通过了防火墙都会记录到日志里

iptables -A INPUT  -p tcp -j LOG --log-prefix "iptables icmp warn"
这样就只记录tcp日志

iptables -A INPUT -s 192.168.100.250 -d 192.168.100.1 -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -s 192.168.100.250 -d 192.168.100.1 -m tcp -p tcp --dports 21,22,23,80 -j ACCEPT

2. 在iptables插入 自定义TEMP链 日志选项-I参数插入到第几条规则 
iptables -I TEMP28 -s 198.168.1.0/24 -d 198.0.0.0/8 -p tcp -j LOG --log-prefix "iptables_198 "
iptables -I TEMP 28 -s 198.0.0.0/8 -d 198.168.1.0/24 -p tcp -j LOG --log-prefix "iptables_198168 "
iptables -I INPUT 5 -d 120.76.190.28 -j LOG --log-prefix "iptables "
iptables -I INPUT 5 -j LOG --log-prefix "iptables "

iptables -D INPUT 5
3. 清空所有iptables规则
iptables --flush  或者 iptables -F
iptables -t NAT -F  有些linux内核差别,上面命令不能清空NAT表

4. 然后保存并重启防火墙配置
service iptables save
service iptables restart

你可能感兴趣的:(linux,防火墙)