1023.990天:Linux CentOS 7搭建日志服务器

1023.990天:Linux CentOS 7搭建日志服务器,第1张

#每日三件事,第990天#

      《中华人民共和国网络安全法》第二十一条第一款第三项规定网络运营者应采取监测、记录网络运行状态、网络安全事件的技术措施,并按照规定留存相关的网络日志不少于六个月。在GB/T22239《网络安全等级保护基本要求》的安全计算环境中,对安全审计也有明确的要求。

      在落实法律义务和责任,开展网络安全等级保护工作的过程中,日志服务器成了必不可少的一项。商用的日志审计系统固然好,但利用CentOS7也可以做一个简单的日志服务器,收集网络中其他设备的日志信息。

日志服务器端的配置:

yum install syslog,其实CentOS7默认就已经安装了rsyslog服务。系统会自动检测,并不会重新安装一遍syslog服务。

vim /etc/rsyslog.conf,找到#Providers TCP syslog reception这一行,把下面两行前面的#去掉即可:

#Providers TCP syslog reception

$ModLoad imtcp

$InputTCCPServerRun 514

======分割线 ======

在/etc/rsyslog.d/创建一个名为client_ip.conf的文件,每个日志发送客户端创建一个文件。我的实验环境中有一个ip为192.168.1.1的客户端,因此创建一个192.168.1.1.conf的文件。

vim /etc/rsyslog.d/192.168.1.1.conf

:fromhost-ip,isequal, "192.168.1.1" /var/log/client/192.168.1.1.log

systemctl restart rsyslog

重启之后一定要检查一下,使用命令:systemctl status rsyslog,并且保证rsyslog服务能够在开机时自动启动。

客户端的配置如下:

vim  /etc/rsyslog.conf,去掉#Providers TCP syslog reception下面两行的注释:

#Providers TCP syslog reception

$ModLoad imtcp

$InputTCCPServerRun 514

在最后一行添加:

*.*. @@192.168.1.10:514

其中192.168.1.10是日志服务器的IP地址。

systemctl restart rsyslog,并查看rsyslog的状态,保证服务在开机时自动启动。

此时在日志服务器上就可以接收到客户端发来的日志信息了。

在CentOS7中,系统的日志消息由两个服务负责处理:system-journald 和 rsyslog。

Linux 操作系统本身和大部分服务器程序的日志文件都默认放在目录/var/log/下。一部分程序共用一个日志文件,一部分程序使用单个日志文件,而有些大型服务器程序由于日志文件不止一个,所以会在/var/log/目录中建立相应的子目录来存放日志文件。有相当一部分日志文件只有root用户才有权限读取,这保证了相关日志信息的安全性。

有些应用程序会选择由自己独立管理一份日志文件(而不是交给rsyslog服务管理),用于记录本程序运行过程中的各种事件信息。由于这些程序只负责管理自己的日志文件,因此不同程序所使用的日志记录格式可能会存在较大的差异。

在 Linux 操作系统中,还有相当一部分应用程序没有使用 rsyslog 服务来管理日志,而是由程序自己维护日志记录。例如,httpd 网站服务程序使用两个日志文件 access_log 和error_log 分别记录客户访问事件和错误事件。

/var/log/message大多数系统日志消息记录都在此处。但不包括与身份验证,电子邮件处理相关的定期作业任务等

/var/log/secure安全和身份验证相关的信息以及登录失败的日志文件。主要ssh远程连接产生的日志。

/var/log/maillog 与邮件相关的信息日志文件

/var/log/cron 与定期执行任务相关的日志文件

/var/log/boot.log 与系统启动相关的信息记录

/var/log/dmesg 与系统启动相关的信息记录

/var/log/wtmp 是一个二进制文件,记录每个用户的登录次数和持续时间等信息,可以用last命令查看其中内容

/var/log/btmp与/var/log/wtmp类似,但记录的是错误登录系统的日志,使用lastb命令查看其中内容。如果此文件大于1M,就需要注意是否有人在暴力破解

0 EMERG(紧急):会导致主机系统不可用的情况

1 ALERT(警告):必须马上采取措施解决的问题

2 CRIT(严重):比较严重的情况

3 ERR(错误):运行出现错误

4 WARNING(提醒):可能会影响系统功能的事件

5 NOTICE(注意):不会影响系统但值得注意

6 INFO(信息):一般信息

7 DEBUG(调试):程序或系统调试信息等

    linux系统中/var/log/目录日志 默认保存四周 并不生成系统日志(syslog.log),当用户有规定保存多少天时才需要进行修改。系统日志路径/var/log/目录下

二、修改方法

1、添加系统日志文件

修改/etc/logrotate.conf 中的

# keep 4 weeks worth of backlogs

rotate 4  #改为rotate12

将/var/log/wtmp {

monthly

create 0664 root utmp

rotate 1   #中的1改为3,

}

保存后通过service syslog restart命令重启syslog进程。

修改日志保存时间:由于有安全方面的需求,要求可追溯系统操作记录,因此想让系统日志保存6个月。开始以为是 syslogd.service 服务,但是发现系统里没有这项服务,因此网上冲浪了一下,发现在 centos 7.3 中已经被 rsyslog 替代了。

下面记录一下修改保存时间:

修改/etc/logrotate.conf 中的

# keep 4 weeks worth of backlogs

rotate 4

# 改为rotate 24

将/var/log/wtmp {

   monthly

   create 0664 root utmp

   rotate 1

    #rotate 1改为rotate 3,

}

# 保存后,重启 rsyslog 服务

sudo systemctl restart rsyslog

安全日志保存了用户登录、退出系统等相关信息

/var/log/lastlog:最近的用户登录事件

/var/log/wtmp:用户登录、注销及系统开、关机事件

/var/run/utmp:当前登录的每个用户的详细信息

/var/log/secure:与用户验证相关的安全性事件分析工具部分命令

users、who、w、last、lastb由相应的应用程序独立进行管理

Web服务:/var/log/httpd/

access_log、error_log

代理服务:/var/log/squid/

access.log、cache.log、

FTP

服务:/var/log/xferlog

查看工具部分命令文本查看、grep过滤检索、Webmin管理套件中查看

awk、sed等文本过滤、格式化编辑工具

Webalizer、Awstats等专用日志分析工具


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/212982.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-05
下一篇2023-04-05

发表评论

登录后才能评论

评论列表(0条)

    保存