linux 开启独立iptables日志

简介: iptables的日志(log)由syslogd纪录和管理。初始存放在 /var/log/messages里面。自动采取循环纪录(rotation)的方式记录。但是由于混在 messages中,对于管理和监视产生了不便。

iptables的日志(log)由syslogd纪录和管理。初始存放在 /var/log/messages里面。自动采取循环纪录(rotation)的方式记录。但是由于混在 messages中,对于管理和监视产生了不便。


由于iptables是linux的内核本身的功能,由dmesg或syslogd的facility结合内核管理。iptables的日志的初始值是[warn(=4)], 需要修改 rsyslog.conf。


注:系统日志配置在CentOS5上叫syslog,而在CentOS6上叫rsyslog,叫增强版的syslog,CentOS5上的配置文件在/etc/syslog.conf下,而CentOS6在/etc/rsyslog.conf下。


1、修改/etc/rsyslog.conf 

*.info;mail.none;authpriv.none;cron.none                /var/log/messages

修改为

*.info;*.!notice;mail.none;authpriv.none;cron.none                /var/log/messages

同时添加

kern.=notice                                            /var/log/iptables.log

建议改为notice,将iptables产生的日志放在 /var/log/iptables.log


2、iptablse添加日志选项

iptables -t nat -I POSTROUTING -o eth0 -j LOG --log-level notice --log-prefix "iptables "

--log-level 为日志级别

--log-prefix 添加日志前缀便于分析处理 


2、让日志滚动

在/etc/logrotate.d/syslog中 添加 

/var/log/iptables.log,默认使用的是系统的轮替规则,当然也可以根据自己的需要去修改


3、用自己的轮替规则

(1)在目录/etc/logrotate.d/下创建一个日志转储的配置文件(名字可以自己定义,只要在该目录下就会被执行),比如iptables

(2)配置文件iptables的内容如下

/var/log/iptables.log {
daily
dateext
copytruncate
nocompress
rotate 15
}

第一行的左大括号之前的/var/log/iptables.log 指出了要转储的日志文件的具体位置和文件名;

daily:按天去转储;

dateext:表示转储后的日志文件会附加上日期信息

copytruncate 用于还在打开中的日志文件,把当前日志备份并截断;

nocompress 不要对转储的日志压缩

rotate 15 保留多少个转储之后的日志文件;

(3)确保iptables的权限为:-rw-r--r--



A 七种信息等级

   1)info

   2)notice

   3)warning或warn

   4)err或error

   5)crit

   6)alert

   7)emerg或panic:导致系统几乎要死机

B 信息等级的指定方式

   1). xxx: 表示大于xxx级别的信息

   2).=xxx:表示等于xxx级别的信息

   3).!xxx:表示在xxx之外的等级的信息


附加:

更改linux rsyslog 日期格式

默认时间格式:Dec 16 09:52:01,看起来不习惯,修改成 2014-12-16 09:52:01

vim /etc/rsyslog.conf
# 定义自己的本土化的时间格式
$template myformat,"%$NOW% %TIMESTAMP:8:15% %hostname% %syslogtag% %msg%\n"
# Use default timestamp format
#$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
# 使用自定义的格式
$ActionFileDefaultTemplate myformat


相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
20天前
|
Linux 应用服务中间件 PHP
性能工具之linux常见日志统计分析命令
通过本文的介绍,我相信同学们一定会发现 linux三剑客强大之处。在命令行中,它还能够接受,和执行外部的 AWK 程序文件,可以对文本信息进行非常复杂的处理,可以说“只有想不到的,没有它做不到的。
58 1
|
1月前
|
运维 监控 安全
在Linux系统中,认证日志
Linux系统中的认证日志对于安全监控和故障排查至关重要,常见的日志文件包括:`/var/log/auth.log`(Debian、Ubuntu)、`/var/log/secure`(RPM发行版)、`/var/log/lastlog`、`/var/log/faillog`、`/var/log/wtmp`和`/var/run/utmp`。这些文件记录登录尝试、失败、当前用户等信息。日志管理可通过文本编辑器、日志查看工具或`rsyslog`、`syslog-ng`等工具进行。注意日志位置可能因发行版和配置差异而变化,应确保日志文件的安全访问,并定期轮转归档以保护敏感信息和节省空间。
26 3
|
1月前
|
Linux
linux定位日志文件
在Linux中查找名为"log.txt"的日志文件,可使用`find`命令从根目录开始搜索:`find / -name log.txt 2>/dev/null`。此命令会忽略错误信息,确保只显示找到的文件路径。
19 1
|
1月前
|
Linux Shell
Linux手动清理Linux脚本日志定时清理日志和log文件执行表达式
Linux手动清理Linux脚本日志定时清理日志和log文件执行表达式
246 1
|
2月前
|
监控 安全 Shell
防止员工泄密的措施:在Linux环境下使用Bash脚本实现日志监控
在Linux环境下,为防止员工泄密,本文提出使用Bash脚本进行日志监控。脚本会定期检查系统日志文件,搜索敏感关键词(如"password"、"confidential"、"secret"),并将匹配项记录到临时日志文件。当检测到可疑活动时,脚本通过curl自动将数据POST到公司内部网站进行分析处理,增强信息安全防护。
114 0
|
2月前
|
Shell Linux C语言
【Shell 命令集合 网络通讯 】Linux 查看系统中的UUCP日志文件 uulog命令 使用指南
【Shell 命令集合 网络通讯 】Linux 查看系统中的UUCP日志文件 uulog命令 使用指南
35 0
|
2月前
|
监控 Shell Linux
【Shell 命令集合 系统管理 】Linux 自动轮转(log rotation)日志文件 logrotate命令 使用指南
【Shell 命令集合 系统管理 】Linux 自动轮转(log rotation)日志文件 logrotate命令 使用指南
58 0
|
1月前
|
存储 监控 安全
Linux系统日志
【4月更文挑战第6天】Linux系统日志,关键用于记录系统状态和事件,包括内核、系统、安全和应用日志,助力管理员诊断问题、确保系统正常运行。日志管理涉及收集、分析、备份等,常用工具如rsyslog、systemd-journal和logrotate(用于日志轮转)。重视日志文件的存储管理,防止空间占用过多。
20 1
Linux系统日志
|
7天前
|
存储 监控 安全
Linux ContOS7 日志管理(rsyslog)
Linux ContOS7 日志管理(rsyslog)
|
28天前
|
SQL 监控 安全
Linux&Windows 日志分析 陇剑杯 CTF
Linux&Windows 日志分析 陇剑杯 CTF