rsysconfig-日志回滚方式

    xiaoxiao2021-12-14  19

    文件:

    #vim /etc/rsyslog.conf

    [root@localhost ~]# vim /etc/rsyslog.conf # Log anything (except mail) of level info or higher. # Don't log private authentication messages! *.info;mail.none;authpriv.none;cron.none /var/log/messages # The authpriv file has restricted access. authpriv.* /var/log/secure # Log all the mail messages in one place. mail.* -/var/log/maillog # Log cron stuff cron.* /var/log/cron # Everybody gets emergency messages *.emerg :omusrmsg:* # Save news errors of level crit and higher in a special file. uucp,news.crit /var/log/spooler # Save boot messages also to boot.log local7.* /var/log/boot.log 1. kern.* 内核类型的所级别的日志

    2 *.info;mail.none;news.none;authpriv.none;cron.none ; 由于mail, news , authpriv,cron 等类别产生的讯息较多,因此在 /var/log/messages 里面不记录这些项目

    除此其他讯息都写入/var/log/messages 中。所以messages文件很重要

    3. authpriv.*: 认证方面的讯息均写入 /var/log/secure 档案

    4.mail.* 邮件方面的讯息则都写入 /var/log/maillog 档案

    5. cron.* 例行性工作排程都写入 /var/log/cron 档案

    6.local7.* 将本机开机时应该显示到屏幕的讯息写入到 /var/log/boot.log 档案中

    # Log all the mail messages in one place. mail.* -/var/log/maillog【-】号的作用:

    由于邮件所产生的讯息比较多,因此我们希望邮件产生的讯息先储存在速度较快的内存中(buffer),等到数据量够大了才一次性的将所有数据都填入磁盘内,

    这样将有利于减少对磁盘读写的次数,减少IO读写开销。另外,由于讯息是暂存在内存中,因此若不正常关机导致登录信息未写入到文档中,可能会减少部分

    数据的遗失

    服务重启和开机启动

    [root@localhost ~]# service rsyslog restart Redirecting to /bin/systemctl restart rsyslog.service [root@localhost ~]# chkconfig rsyslog on Note: Forwarding request to 'systemctl enable rsyslog.service'.

    日志的存储格式(怎么看日志)

    DATA TIME HOSTNAME APP(NAME) [PID] :MESSGAGES

    说明:

    DATA TIME: 日志记录的日期和时间

    HOSTNAME APP(NAME) [PID] : 什么机器 什么程序(程序的PID)

    例: sshd+rsyslog 练习(sshd单独记录一个叫sshd.log的日志文件)

    修改配置文件:#vim /etc/ssh/sshd_config

    修改:

          #SyslogFacility AUTHPRIV

    为:

         SyslogFacility local0

    重启:

            #service  sshd  restart

    修改配置文件:

            #vim /etc/rsyslog.conf  #在最后添加一行

    local0.*                   /var/log/sshd.log

    重启:

        #service rsyslog restart

    #这时没有这个文件/var/log/sshd.log ,因为没有产生任何日志

    [root@localhost ~]# service sshd restart #动作 产生日志 Redirecting to /bin/systemctl restart sshd.service [root@localhost ~]# cat /var/log/sshd.log #查看日志 Dec 2 20:28:09 localhost sshd[7416]: Received signal 15; terminating. Dec 2 20:28:09 localhost sshd[7678]: Server listening on 0.0.0.0 port 22. Dec 2 20:28:09 localhost sshd[7678]: Server listening on :: port 22.

    如何防止日志被黑客删除?

    命令chattr

    a:即append,设定该参数后,只能向文件中添加数据,而不能删除,多用于服务器日志文件安全,只有root才能设定这个属性。

    [root@localhost ~]# chattr +a /var/log/sshd.log [root@localhost ~]# rm -rf !$ rm -rf /var/log/sshd.log rm: cannot remove ‘/var/log/sshd.log’: Operation not permitted加入这个属性后, /var/log/messages 登录档从此就只能被增加 而不能被删除 直到root 以 【chattr -a /var/log/messages】取消这个a的参数后,才能被移除

    日志回滚:

    原因:日志太大 需要分开

    logrotate(日志回滚过程:创建新文件 改名旧文件)

    系统配置属性

    [root@localhost ~]# vim /etc/logrotate.conf # see "man logrotate" for details # rotate log files weekly weekly # keep 4 weeks worth of backlogs rotate 4 # create new (empty) log files after rotating old ones create # use date as a suffix of the rotated file dateext参数说明:

    weekly 预设每个礼拜对日志进行一次rotate工作

    rotate    保留几个日志文档 预设是保留4个

    create   回滚日志后 创建一个新的空文件来存储

    [root@localhost ~]# vim /etc/logrotate.conf /var/log/btmp { missingok monthly create 0600 root utmp rotate 1 }

    说明: /var/log/btmp   仅对 /var/log/btmp 所设定的参数   monthly   每个月一次 取代每周 minsize 1M 档案容量一定要超过1M后才进行 rotate(略过时间参数) create 0600 root utmp 设定新建文件的权限 所有者 用户组 rotate 1 仅保留一个 也就是说 仅有 wtmp.1 保留而已

    实战: 配置远程日志服务器,实现日志集中管理: 【服务端设置】 [root@localhost ~]# vim /etc/rsyslog.conf # Provides TCP syslog reception      #启动Tcp接收 #$ModLoad imtcp #$InputTCPServerRun 514 改为 # Provides TCP syslog reception #启动Tcp接收$ModLoad imtcp$InputTCPServerRun 514#端口 514 [root@localhost ~]# service rsyslog restart Redirecting to /bin/systemctl restart  rsyslog.service 查看端口514是否启动成功

    [root@localhost ~]# netstat -anutp | grep 514 tcp 0 0 0.0.0.0:514 0.0.0.0:* LISTEN 8530/rsyslogd tcp6 0 0 :::514 :::* LISTEN 8530/rsyslogd -a  all所有 -n   number 数字 -u   udp协议 -t    tcp协议 -p    pid 进程 【客户端】 [root@localhost ~]# vim /etc/rsyslog.conf参照 #*.* @@remote-host:514 修改 *.* @@IP地址:端口号 @@代表tcp @代表udp 重启生效 [root@localhost ~]# service rsyslog restart

    转载请注明原文地址: https://ju.6miu.com/read-968585.html

    最新回复(0)