Linux高级之日志管理

news2024/12/28 9:44:59

Linux高级之日志管理

  • 1.系统常用日志
  • 2.日志服务的稳定性
  • 3.自定义日志服务
  • 4.日志轮替
  • 5.内存日志

1.系统常用日志

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

在这里插入图片描述

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

案例:secure日志记录演示:

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

sudo cat secure

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

在这里插入图片描述

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

sudo chmod 777 secure
sudo 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 2022
rpcuser                                    **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

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/128018.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

React学习04-React_Ajax

写在前面 React本身只关注于界面,并不包含发送ajax请求的代码前端应用需要通过ajax请求与后台进行交互(json数据)React应用中需要集成第三方ajax库(或自己封装) 常用的ajax请求库 jQuery:比较重&#xf…

C|%输出各种类型的值总结

参考: C语音输出各种类型数据的方式 c语言中%s的用法 %d:十进制有符号整数 输出的数据范围是 signed int 的范围,即 0x80000000 ~ 0x7FFFFFFF(-2147483648~2147483647) %u:十进制无符号整数 输出范围0~0xF…

JVM-垃圾回收

1、GC分类 (1)部分收集(Partial GC) 新生代收集(Minor GC/Young GC):只对新生代进行垃圾收集。(读音[ˈmaɪnə(r)]) 老年代收集(Major GC/Old GC&#xff09…

基于SpringBoot+mybatis+mysql+html家具城进销存管理系统

基于SpringBootmybatismysqlhtml家具城进销存管理系统一、系统介绍二、功能展示1.用户登陆2.进货管理(货物管理员)3.退货管理(货物管理员)4.商品销售、商品销售退货(商品管理员)5.管理商品、商品类别、供应商、客户(商品管理员)6.…

DirtyPipe(CVE-2022-0847)漏洞分析

前言 CVE-2022-0847 DirtyPipe脏管道漏洞是Linux内核中的一个漏洞,该漏洞允许写只读文件,从而导致提权。 调试环境 ubuntu 20.04Linux-5.16.10qemu-system-x86_64 4.2.1 漏洞验证 首先创建一个只读文件foo.txt,并且正常情况下是无法修改…

微信小程序集成three.js--6.利用raycastor选择对象

1.实例演示 小程序集成Three.js,利用raycaster实现对象的2.源码 (1)引入库并声明变量 import * as THREE from ../../libs/three.weapp.js import {OrbitControls } from ../../jsm/controls/OrbitControls const app getApp()// 声明一个…

知识付费系统源码搭建流程讲解、代码分析

知识付费系统是现在多数教培机构优先考虑的线上教学系统,而很多机构自身有技术人员常驻,所以不需要再花费资金去直接购买搭建好的成品系统,转而直接购买源码后,自行搭建配置。 目前,知识付费系统是许多教培机构转型的首…

BOSS直聘自动投简历聊天机器人的实现过程

这两年疫情,公司业务越来越差,必须得准备后路了,每天睡前都会在直聘上打一遍招呼,一直到打哈欠有睡意为止...,这样持续了一周,发现很难坚持,身为一名资深蜘蛛侠,怎么能这样下去呢?于…

Jmeter二次开发实现rsa加密

jmeter函数助手提供了大量的函数,像 counter、digest、random、split、strLen,这些函数在接口测试、性能测试中大量被使用,但是大家在实际工作,形形色色的测试需求不同,导致jmeter自带或者扩展插件给我们提供的函数无法…

LeetCode —— 二叉树

持续更新中................ 二叉树的定义 public class TreeNode {int val;TreeNode left;TreeNode right;public TreeNode() {}public TreeNode(int val) {this.val val;}public TreeNode(int val, TreeNode left, TreeNode right) {this.val val;this.left left;this.r…

nginx看这一篇文章就够了

一、Nginx简介 Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。是由伊戈尔赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的。其特点是占有内存少&#xff0c…

智能机柜PDU助力中小型数据中心机房末端配电系统建设

数据中心作为我国已确定“新基建”的七大领域之一,在国民经济和社会发展中扮演中越来越重要的角色,成为各行各业的关键基础设施,为各产业转型升级提供了重要支撑。据相关数据显示,2018年至今,我国的数据中心市场年均复…

项目管理工具dhtmlxGantt甘特图入门教程(四):可见性和布局视图大小设置

dhtmlxGantt是用于跨浏览器和跨平台应用程序的功能齐全的Gantt图表,可满足项目管理控件应用程序的所有需求,是完善的甘特图图表库。这篇文章给大家讲解 dhtmlxGantt的可见性组、布局大小和隐藏父布局视图。 DhtmlxGantt正版试用下载(qun&…

【BP靶场portswigger-服务端3】目录遍历漏洞-6个实验(全)

目录 一、目录遍历 1、意义 二、通过目录遍历阅读任意文件 1、示例 实验1:文件路径遍历(简单) 三、利用文件路径遍历漏洞的常见障碍 1、对于../等的限制 实验2:文件路径遍历(用绝对路径旁路阻止遍历序列&#xf…

相距两千多公里,仅仅数月,从相亲走到结婚 | 2022年复盘日记

👨‍🎓作者:bug菌 🎉简介:CSDN、掘金等社区优质创作者,全网合计7w粉,对一切技术都感兴趣,重心偏Java方向,目前运营公众号「猿圈奇妙屋」,欢迎小伙伴们的加入&…

制造型企业如何利用WMS系统在大环境中取胜

如今数字化转型已经成为制造型企业高质量高发展的重要手段,越来越多的企业开始加大对数字化转型的投入来提升竞争力。例如:有些企业会上线WMS系统来搭建自己的数字化仓库管理平台,实现仓库业务的自动化和数字化升级。随着制造企业市场规模的不…

基于Xlinx的时序分析与约束(6)----如何读懂vivado下的时序报告?

写在前面 在《基于Xlinx的时序分析与约束(3)----基础概念(下)》文章中写了一些时序分析的基础概念,同时还说了文章中提到的公式根本就不需要记忆,因为综合工具vivado会帮你把所有时序路径都做详尽的分析&am…

Springboot延伸之自定义Banner

前言 前几周陆陆续续花了5万多字写了我读到的Springboot启动过程的源码,收获颇多,其中给自己留了扩展的作业。我们每次启动Springboot的时候,都有一个Spring的Banner,读源码的过程中可以得知我们可以自定义属于自己的Banner&…

领域驱动设计

DDD的代码结构_ronshi的博客-CSDN博客_ddd代码结构 DDD( 领域驱动设计)概念来源于2004年著名建模专家eric evans的书籍:《domain-driven design –tackling complexity in the heart of software》(中文译名:领域驱动设计—软件核心复杂性应对之道)。 DDD领域驱动设…

全流量安全分析为IT运维提供高效保障(二)

前言 某高校信息中心老师反应,用户反馈教务系统有访问慢的情况,需要通过流量分析系统来了解系统的运行情况,此报告专门针对系统的性能数据做了分析。 前一章做了系统功能模块分析和整体流量分析,本章将进行异常分析、其他信息发…