Linux中日志(rsyslog)分析及管理和日志转储(logrotate)功能

知识要点

  • 日志的作用
  • rsyslog服务介绍
  • 日志文件的存放位置
  • 常见日志文件内容介绍
  • 用户验证相关日志
  • 常用日志操作命令
  • 日志管理策略
  • 日志转储功能(logrotate)
    日志的作用
  • 用于记录系统、程序运行中发生的各种事件
  • 通过阅读日志,有助于诊断和解决系统故障
    日志文件的分类
  • 内核及系统日志
  • 由系统服务rsyslog统一进行管理,日志格式基本相似
  • 用户日志
  • 记录系统用户登录及退出系统的相关信息
  • 程序日志
  • 由各种应用程序独立管理的日志文件,记录格式不统一

rsyslog系统日志

由系统服务 rsyslog统一管理

  • 软件包:rsyslog-5.8.10-8
  • 主要程序:/sbin/rsyslogd
  • 配置文件:/etc/rsyslog.conf
    在这里插入图片描述
    配置文件:/etc/rsyslog.conf语法
  • 日志设备(类型).(连接符号)日志级别 日志处理方式(action)
  • 日志设备(可以理解为日志类型):
    在这里插入图片描述
    日志级别
    NONE: 什么都不记录
    EMERG(紧急):会导致主机系统不可用的情况
    ALERT(警告):必须马上采取措施解决的问题
    CRIT(严重):比较严重的情况
    ERR(错误):运行出现错误
    WARNING(提醒):可能会影响系统功能的事件
    NOTICE(注意):不会影响系统但值得注意
    INFO(信息):一般信息
    DEBUG(调试):程序或系统调试信息等
    从下到上,级别从低到高,记录的信息越来越少

连接符号
. :记录大于等于后面的级别日志
.=:只记录等于后面的级别日志
.!=:只记录不等于后面的级别日志
日志处理方式
本地文件:通常就是文件的绝对路径
打印机:例如 /dev/lp0 这个打印机装置
用户名称:显示给用户
远程主机:例如 @202.100.100.1
*:所有在线的用户
系统日志保存位置
默认位于:/var/log 目录下
主要日志文件介绍
内核及公共消息日志:/var/log/messages
计划任务日志:/var/log/cron
系统引导日志:/var/log/dmesg
邮件系统日志:/var/log/maillog
由相应的应用程序独立进行管理

  • Web服务:/var/log/httpd/
  • access_log、error_log
  • 代理服务:/var/log/squid/
  • access.log、cache.log、squid.out、store.log
  • FTP服务:/var/log/xferlog
    ……
    分析工具
    文本查看、grep过滤检索、Webmin管理套件中查看
    awk、sed等文本过滤、格式化编辑工具
    Webalizer、Awstats等专用日志分析工具
    保存了用户登录、退出系统等相关信息
    /var/log/lastlog:最近的用户登录事件
    /var/log/wtmp:用户登录、注销及系统开、关机事件
    /var/run/utmp:当前登录的每个用户的详细信息
    /var/log/secure:与用户验证相关的安全性事件
    用户登录分析
    who、w、users、last、ac、lastlog
    主动记录日志工具
    logger:从命令行直接向系统日志文件写入一行信息
    日志管理策略
  • 及时作好备份和归档
  • 控制日志访问权限
  • 日志中可能会包含各类敏感信息,如账户、口令等
  • 集中管理日志
  • 使用日志服务器便于日志的统一收集、整理和分析
  • 杜绝日志信息的意外丢失、恶意篡改或删除

日志设置的一般步骤

1、修改/etc/rsyslog.conf文件,在最后加一行,内容如下:
日志设备.日志级别 存储位置
2、重启rsyslog服务
service rsyslog restart
测试
在客户机通过logger添加日志
在服务器上查看日志

日志转储功能

  • 系统时时刻刻都在产生日志,如果不及时清理,很快就会填满硬盘,但如果要手工清理,又很麻烦。这种情况下,logrotate
    这个程序很好的完成这个任务。

  • logrotate
    用来把旧的日志文件删除,并创建新的日志文件,我们把它叫做“转储”。我们可以根据日志文件的大小,也可以根据天数来转储,这个过程一般通过crond进程来执行,logrotate还可以用于压缩日志文件
    logrotate的主配置文件:/etc/logrotate.conf
    主要参数
    在这里插入图片描述
    在这里插入图片描述
    Logrotate的次要配置文件:/etc/logrotate.d/*

  • 每个文件代表一种日志的配置
    一般对次要配置文件进行修改 在这个目录 /etc/logrotate.d/创建文件
    下面为配置文件的一般格式:

    [root@localhost ~]# cat /etc/logrotate.d/syslog
         /var/log/messages  #要转储的文件  {
             #转储的一些参数
             daily     #每天
             size  20M  #每20M转储一次
             rotate   3  #保留三份转储文件
             
             postrotate
                 需要执行的命令
             endscript
         }
    

    日志转储
    logrotate -v /etc/logrotate.conf
    -f:强制转储
    使用这个命令可以立即使转储文件达到条件进行转储
    注意事项:
    若转储一次后就不在转储,需要在配置文件中加上要执行的命令 service rsyslog restart 重启rsyslog服务
    若未能转储:需要关掉selinux
    selinux是一个Linux安全子系统
    修改/etc/selinux/config 文件

 This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.

SELINUX=enforcing    把这一行改为    SELINUX=disabled


# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted
重启生效
  • 7
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在虚拟机上安装日志服务器并使用Rsyslog进行VMware vSphere和vCenter重要日志管理的步骤如下: 1. 安装Rsyslog 在虚拟机上使用以下命令安装Rsyslog: ``` sudo apt-get update sudo apt-get install rsyslog ``` 2. 配置Rsyslog 打开Rsyslog配置文件`/etc/rsyslog.conf`,并添加以下内容: ``` # VMware vSphere和vCenter重要日志 if $programname == 'vmkernel' then /var/log/vmkernel.log if $programname == 'vmkwarning' then /var/log/vmkwarning.log if $programname == 'vmksummary' then /var/log/vmksummary.log if $programname == 'vpxa' then /var/log/vpx/vpxa.log if $programname == 'vpxd' then /var/log/vpx/vpxd.log if $programname == 'hostd' then /var/log/vmware/hostd.log if $programname == 'vpxa-probe' then /var/log/vpx/vpxa-probe.log if $programname == 'vws' then /var/log/vmware/vws.log if $programname == 'fdm' then /var/log/fdm.log if $programname == 'vmsyslogd' then /var/log/vmware/vmsyslogd.log ``` 这些配置将确保Rsyslog收集和记录VMware vSphere和vCenter的重要日志。 3. 重新启动Rsyslog 使用以下命令重新启动Rsyslog服务: ``` sudo service rsyslog restart ``` 4. 配置VMware vSphere和vCenter 要将VMware vSphere和vCenter发送到Rsyslog服务器,请进行以下操作: - 在vSphere Web客户端,选择您的vCenter服务器,并选择“管理”>“设置”>“高级设置”。 - 找到“Syslog.global.loghost”设置,并输入Rsyslog服务器的IP地址和端口号,例如`tcp://192.168.1.100:514`。 - 单击“确定”保存更改。 现在,VMware vSphere和vCenter的重要日志将被发送到Rsyslog服务器并记录在指定的文件。您可以使用工具如Logwatch等来监视这些日志并接收警报。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值