阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

iptables+rsyslog(syslog)+logrotate访问日志分析

528次阅读
没有评论

共计 2985 个字符,预计需要花费 8 分钟才能阅读完成。

最近,因为相应的业务需求需要对服务器的相应服务做访问分析,在做之前大致思考了下,可以利用 iptables 的 log 日志功能用来做相应的日志分析,在此就以做 ssh 端口访问做日志分析来简单讲解下,在实际生产环境下也可以根据实际情况调整,可以用来做 WEB 服务等等的相应的访问日志分析。

首先,在使用日志分析之前最重要的就是 iptables 的 log 功能,至于 iptables 中的 log 功能使用 也很简单, 在开启后会把日志写入 /var/log/messages 内核日志中,而 iptables 的日志功能使用的几个参数也很简单,如下:

--log-level level        记录级别
--log-prefix prefix      在纪录信息前加上特定的前缀:最多 14 个字母长,用来和记录中其他信息区别。
--log-tcp-sequence       记录 TCP 序列号。使用此日志会打印 tcp 的重要信息,要注意日志的相应权限,确保信息不泄露。
--log-tcp-options        记录来自 TCP 包头部的选项,tcp3 次握手的一些具体信息。
--log-ip-options         记录来自 IP 包头部的选项,源 ip 目的 ip 的详细信息。

因为分析的服务是 tcp 的端口那么在这里就每一次的 NEW 的信息写入日志,而系统日志都是通过 rsyslog 进行管理日志的,rsyslog 是 syslog 的升级版,在 CentOS 中的 6.9 及其以上版本和大部分的 Ubuntu 系统中都是使用 rsyslog,而升级后的 rsyslog 在功能更强大后基本的配置同 syslog 差不多,当然如果是旧版的系统中使用 syslog 也是可以的,而 syslog 在以前有提过,在此就不做过多的说明了,需要的可以参看:http://www.linuxidc.com/Linux/2017-02/140474.htm,而在定义 iptables 的中日志级别的参数中日志级别就是使用 rsyslog,如果没有定义默认级别是 4,而主要的日志级别,大致如下:

等级等级名称说明
1info一些基本信息说明,这个级别日志也最为详细
2notice除了 info 级别外还多一些需要注意的信息
3warning(warn)警告信息,可能会出现的问题,还还不至于影响某个进程
4err(error)一些重大的错误信息,一般 err 信息就可以就可以排查相应的问题了
5crit比 err 更为重要的错误信息,一般到这个级别错误就很严重了
6alart警告比 crit 更为严重
7emerg(panic)panic 级别,快要死机的状态,很严重的错误信息

当然 rsyslog 日志中还有 2 个级别 debug(错误检测等级)和 none(不需要登录等级),一般很少使用,而在 iptables 的日志是写在内核日志中,那么为了便于收集日志用来分析,那么可以修改 rsyslog 日志的配置文件重新指定下 iptables 的日志,追加以下这一行,然后重启 rsyslog,这里日志级别也可以使用 warning 级别,在此就用 * 代表收集所有日志

[root@localhost ~]# echo "kern.* /var/log/iptables.log" >> /etc/rsyslog.conf
[root@localhost ~]# /etc/init.d/rsyslog restart

当然,如果是做 WEB 的 80 端口分析,可能日志会非常多,那么就需要使用 logrotate 用来切割日志做分析,logrotate 的配置以前也有提过此处就不做更多的赘述了,需要可以参看:http://www.linuxidc.com/Linux/2017-02/140261.htm

配置如下:

[root@localhost ~]# vim /etc/logrotate.d/iptables
/var/log/iptables.log {
          
        copytruncate
        daily
        rotate 7
        dateext
        missingok
        compress
        create 600 root root
}
[root@localhost ~]# echo "59 23 * * * /usr/sbin/logrotate -f /etc/logrotate.conf" >> /var/spool/cron/root

在 iptables 中添加一条策略, 把要做日志分析的服务端口做记录:

[root@localhost ~]# vim /etc/sysconfig/iptables
…略…
-A INPUT -i eth0 -p tcp -m state --state NEW -m tcp --dport 22 -j LOG --log-prefix "ssh_access-" --log-tcp-sequence --log-tcp-options --log-ip-options
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 
-A INPUT -j REJECT --reject-with icmp-host-prohibited 
[root@localhost ~]# /etc/init.d/iptables restart

最后在添加一条 logrotate 定时任务使日志切割生效即可,总之用这套日志分析方案可以解决很多需要分析日志的服务,不过要注意写好 iptables 的相应规则及 logrotate 日志切割日志,以免日志太大塞满磁盘。

更多 iptables 相关教程见以下内容

CentOS 7.0 关闭默认防火墙启用 iptables 防火墙  http://www.linuxidc.com/Linux/2015-05/117473.htm

Iptables 工作原理使用详解 http://www.linuxidc.com/Linux/2016-09/134945.htm

Ubuntu 14.04 配置 iptables 防火墙 http://www.linuxidc.com/Linux/2017-02/140556.htm

Linux 下编译安装 iptables  http://www.linuxidc.com/Linux/2017-04/142615.htm

iptables 的备份、恢复及防火墙脚本的基本使用 http://www.linuxidc.com/Linux/2013-08/88535.htm

Iptables 工作原理使用详解  http://www.linuxidc.com/Linux/2016-09/134945.htm

CentOS7 下 iptables 配置过程 http://www.linuxidc.com/Linux/2017-01/139622.htm

Linux 下 iptables 防火墙设置 http://www.linuxidc.com/Linux/2015-10/123843.htm

Linux 防火墙 iptables 详解  http://www.linuxidc.com/Linux/2016-12/138474.htm

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-07/145359.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计2985字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19351
评论数
4
阅读量
7978836
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
星哥带你玩飞牛NAS硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话?

星哥带你玩飞牛NAS硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话?

星哥带你玩飞牛 NAS 硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话? 前言 在选择 NAS 用预...
还在找免费服务器?无广告免费主机,新手也能轻松上手!

还在找免费服务器?无广告免费主机,新手也能轻松上手!

还在找免费服务器?无广告免费主机,新手也能轻松上手! 前言 对于个人开发者、建站新手或是想搭建测试站点的从业者...
安装并使用谷歌AI编程工具Antigravity(亲测有效)

安装并使用谷歌AI编程工具Antigravity(亲测有效)

  安装并使用谷歌 AI 编程工具 Antigravity(亲测有效) 引言 Antigravity...
【1024程序员】我劝你赶紧去免费领一个AWS、华为云等的主机

【1024程序员】我劝你赶紧去免费领一个AWS、华为云等的主机

【1024 程序员】我劝你赶紧去免费领一个 AWS、华为云等的主机 每年 10 月 24 日,程序员们都会迎来...
零成本上线!用 Hugging Face免费服务器+Docker 快速部署HertzBeat 监控平台

零成本上线!用 Hugging Face免费服务器+Docker 快速部署HertzBeat 监控平台

零成本上线!用 Hugging Face 免费服务器 +Docker 快速部署 HertzBeat 监控平台 ...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
星哥带你玩飞牛NAS硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话?

星哥带你玩飞牛NAS硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话?

星哥带你玩飞牛 NAS 硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话? 前言 在选择 NAS 用预...
还在找免费服务器?无广告免费主机,新手也能轻松上手!

还在找免费服务器?无广告免费主机,新手也能轻松上手!

还在找免费服务器?无广告免费主机,新手也能轻松上手! 前言 对于个人开发者、建站新手或是想搭建测试站点的从业者...
240 元左右!五盘位 NAS主机,7 代U硬解4K稳如狗,拓展性碾压同价位

240 元左右!五盘位 NAS主机,7 代U硬解4K稳如狗,拓展性碾压同价位

  240 元左右!五盘位 NAS 主机,7 代 U 硬解 4K 稳如狗,拓展性碾压同价位 在 NA...
开源MoneyPrinterTurbo 利用AI大模型,一键生成高清短视频!

开源MoneyPrinterTurbo 利用AI大模型,一键生成高清短视频!

  开源 MoneyPrinterTurbo 利用 AI 大模型,一键生成高清短视频! 在短视频内容...
4盘位、4K输出、J3455、遥控,NAS硬件入门性价比之王

4盘位、4K输出、J3455、遥控,NAS硬件入门性价比之王

  4 盘位、4K 输出、J3455、遥控,NAS 硬件入门性价比之王 开篇 在 NAS 市场中,威...