09
2023
11
20:42:55

Linux高级之日志管理



推荐点击下面图片,通过本站淘宝优惠价购买:

image.png

1.系统常用日志

日志文件用于记录linux系统的各种运行信息的文件,相当于linux主机的日记,不同的日志文件记载了不同类型的信息,如Linux内核消息、用户登录事件、程序错误等。日志文件对于诊断和解决问题很有帮助,因为linux运行的程序通常把系统的消息和错误写入对应的日志文件,这样系统可以有据可查, 此外,当主机遭受攻击时,日志文件还可以帮助寻找攻击者留下的痕迹

在这里插入图片描述

Linux系统本身和大部分服务器程序的日志文件默认放在/var/log/下?

案例:secure日志记录演示:

我们先看一下secure日志的内容:

sudo cat secure

可以看到很多的登录内容:

在这里插入图片描述

为了方便演示,我们先将此日志文件里面的内容清空:

sudo chmod 777 securesudo echo '' > secure

在这里插入图片描述

接着使用Xshell连接虚拟机,故意输错两次密码,随后输入正确密码连接,我们看secure日志能否记录:

[centos@centtos7 log]$ cat secure

Dec 27 08:04:54 centtos7 unix_chkpwd[3261]: password check failed for user (centos)Dec 27 08:04:54 centtos7 sshd[3225]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=192.168.192.1  user=centos
Dec 27 08:04:56 centtos7 sshd[3225]: Failed password for centos from 192.168.192.1 port 55502 ssh2
Dec 27 08:05:00 centtos7 unix_chkpwd[3262]: password check failed for user (centos)Dec 27 08:05:02 centtos7 sshd[3225]: Failed password for centos from 192.168.192.1 port 55502 ssh2
Dec 27 08:05:04 centtos7 sshd[3225]: Accepted password for centos from 192.168.192.1 port 55502 ssh2
Dec 27 08:05:04 centtos7 sshd[3225]: pam_unix(sshd:session): session opened for user centos by (uid=0)

果不其然!日志记录了我们成功登录和失败登录的详细信息!

案例:lastlog演示:

查看所有用户上次的系统登录时间:

[centos@centtos7 log]$ lastlog
Username         Port     From             Latest
root                                       **Never logged in**...
qemu                                       **Never logged in**
gluster                                    **Never logged in**
gdm              :0                        Tue Dec 27 07:57:51 -0500 2022rpcuser                                    **Never logged in**
nfsnobody                                  **Never logged in**
gnome-initial-setup                           **Never logged in**
sshd                                       **Never logged in**
avahi                                      **Never logged in**
postfix                                    **Never logged in**
ntp                                        **Never logged in**
tcpdump                                    **Never logged in**
centos           pts/1    192.168.192.1    Tue Dec 27 08:05:04 -0500 2022

2.日志服务的稳定性

rsyslogd服务是处理日志的核心服务,为了防止日志服务出现问题,请确保下面两项:

  • rsyslogd服务处在启动状态

sudo ps -aux | grep "rsyslog" | grep -v "grep"

在这里插入图片描述

  • rsyslogd服务可以自启动(处在enabled状态)

systemctl is-enabled rsyslog

在这里插入图片描述


3.自定义日志服务

我们可以根据自己的需求,增加自定义性质的日志:

修改日志配置文件:

sudo vim /etc/rsyslog.conf

新增自定义日志,该例会记录系统所有的操作内容到dahe.log中:

# add dahe log*.*        /var/log/dahe.log

在这里插入图片描述

之后创建属于我们自己的日志文件:

sudo touch /var/log/dahe.log

之后重启系统,看下我们自定义的日志是否会记录:

cat /var/log/dahe.log

记录成功!

在这里插入图片描述


4.日志轮替

日志轮替就是把旧的日志文件移动并改名,同时建立新的空日志文件,当旧日志文件超出保存的范围之后,就会进行删除

日志轮替文件命名:?️

  • centos7使用logrotate进行日志轮替管理,要想改变日志轮替文件名字,通过/etc/logrotate.conf配置文件中“dateext”参数:

  • 如果配置文件中有"dateext”参数,那么日志会用日期来作为日志文件的后缀,例如"secure-20201010"。这样日志文件名不会重叠,也就不需要日志文件的改名,只需要指定保存日志个数,删除多余的日志文件即可。

  • 如果配置文件中没有"dateext’”参数,日志文件就需要进行改名了。当第一次进行日志轮替时,当前的secure日志会自动改名为secure.1,然后新建secure日志,用来保存新的日志。当第二次进行日志轮替时,secure.1会自动改名为secure.2,当前的secure日志会自动改名为secure.1,然后也会新secure日志,用来保存新的日志,以此类推。

自定义日志轮替参数:?

在这里插入图片描述

案例:加入自己定义的日志文件到日志轮替机制中:?

在这里插入图片描述

我们先看一下/etc/logrotate.d/中的轮替文件都有哪些:

[centos@centtos7 logrotate.d]$ ll
total 56-rw-r--r--. 1 root root  91 Sep 30  2020 bootlog
-rw-r--r--. 1 root root 160 Sep 19  2018 chrony
-rw-r--r--. 1 root root  71 Sep 30  2020 cups
-rw-r--r--. 1 root root  93 Apr 28  2021 firewalld
-rw-r--r--. 1 root root 172 Sep 29  2016 iscsiuiolog
-rw-r--r--. 1 root root 165 Nov 16  2020 libvirtd
-rw-r--r--. 1 root root 142 Nov 16  2020 libvirtd.qemu
-rw-r--r--. 1 root root 106 Apr 10  2018 numad
-rw-r--r--. 1 root root 136 Feb 27  2020 ppp
-rw-r--r--. 1 root root 408 Aug  3  2017 psacct
-rw-r--r--. 1 root root 115 Sep 30  2020 samba
-rw-r--r--. 1 root root 224 Sep 30  2020 syslog
-rw-r--r--. 1 root root 100 Oct 30  2018 wpa_supplicant
-rw-r--r--. 1 root root 103 Oct  1  2020 yum

新增我们自己的日志的日志轮替文件:

sudo vim dahelog

编写轮替文件的配置信息:(如下是一个实例)

/var/log/dahe.log{
    missingok
    daily
    copytruncate
    rotate 7
    notifempty}

如下:加入成功!

在这里插入图片描述


5.内存日志

注意:系统的内存日志,重启之后就会清空?

常用关于内存日志的命令:

在这里插入图片描述

案例:查看最近3条的内存日志:

sudo journalctl -n 3

在这里插入图片描述


本文链接:https://hqyman.cn/post/4524.html 非本站原创文章欢迎转载,原创文章需保留本站地址!

分享到:





休息一下,本站随机推荐观看栏目:


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

您的IP地址是: