zoukankan      html  css  js  c++  java
  • 10.与分析登录档


    /etc/syslog.conf        ----syslogd这支程序的配置文件(规定了什么服务的什么等级的讯息被记录在什么位置)

    /etc/init.d/syslogd

    /etc/sysconfig/syslog

    /etc/cron.daily/logrotate        ----规范登录档轮替行为的cron文件

    /etc/logorate.config        ----logorate的主要参数档案

    /etc/logorate.d/        ----该目录里的所有档案都会被主动读入到/etc/logrotate.config执行


    1. 什么是登录档:登录档的重要性、常见档名、服务与程序

      1.1用途:

        1.1.1解决系统方面的错误

        1.1.2解决网络服务的问题

        1.1.3过往事件记录簿

      1.2常见档名【1-0】

       注意:不同发行版会有些许不同

        /var/log/cron        ----crontab排程问题

        /var/log/dmesg        ----开机时核心侦测硬件信息

        /var/log/lastlog        ----所有账号最近一次登入系统的相关信息

        /var/log/maillog或者/var/log/mail/*        ----邮件往来信息

        /var/log/messages        ----系统错误信息

        /var/log/wtmp,/var/log/faillog        ----登入系统的账户信息

        /var/log/httpd/*,/var/log/news/*,/var/log/samba/*        ----个别网络服务制定的登录档

      1.3服务与程序

        syslogd:主要记录登录系统与网络等服务的讯息

        klogd:主要记录核心产生的各种信息

        logrotate:登录档的轮替功能

    2. syslogd:记录登录文件的服务

      # ps aux |grep syslogd        ----看看是否启动了syslogd这个服务

      # chkconfig --list syslog        ----看看syslogd在哪些run level下开机启动

      2.1登录档内容的一般格式【1-1,2,3】

      # vim /etc/syslog.config        ----查看系统预设该文件的内容(可以知道syslogd管理的一些服务的登录档的位置)【1-10】

      2.2syslog的配置文件:/etc/syslog.config,预设的syslog.conf内容

        2.2.1 规范每条信息分为三个部分:服务名称【1-4】[.|.=|.!]信息等级【1-5】 讯息记录的文件名或装置或主机【1-6】

        # vim /etc/syslog.conf        ----几个案例

        mail .info                             /var/log/maillog        ----mail所有登录信息都写入/var/log/maillog【1-7】

        new.*;cron.*                        /var/log/cronnews        ----新闻资料组(news)及例行性工作排程(cron)的讯息都写入            到/var/log/cronnews中

        *.*;news,cron,mail.none      /var/log/messages     <==>    *.*;news.none;cron.none;mail.none        /var/log/messages         ----除了news,mail,cron,所有syslog管理的服务的信息都写到/var/log/messages【1-9】

        2.2.2自行增加文件记录软件运行信息

            案例:所有的信息额外记录到/var/log/admin.log

            # vim /etc/syslog.config

            # Add by nemo 2013/12/12

            *.info         /var/log/admin.log

            # /etc/init.d/syslogd restart

            # ll /var/log/admin.log        ----这个文件被自动建立起来了

      2.3登录档的安全性设置

      注意:如果登录档被vi或vim编辑并:wq离开,那么syslogd将无法再写入信息,因为这样子导致文档保持已更新状态 

      # chattr +a  /var/log/messages           ----添加只能添加不能做其他更动的属性(可以防止黑客擦除登陆信息)

      # lsattr /var/log/messages            ----查看这个属性

      # chaatr -a /var/log/messages        ----root身份可以再将这个属性去掉

      2.4登录档服务器的设定【1-11】

      注意:登录档服务器会启动514端口

      serveer端

      # vim /etc/sysconfig/syslog        ----修改syslog的启动配置文件

       SYSLOGD_OPTIONS="-m 0"       ==》SYSLOGD_OPTIONS="-m 0 -r"  ----修改这一行

      # /etc/init..d/syslogd restart        ----重启syslogd服务

      # netstat -lunp | grep syslog        ----查看514端口是否已经开启

      client端

      # vim /etc/syslog.conf   

      *.*        @192.168.1.100        ----假设登录档服务器ip为192.168.0..100

      # /etc/init..d/syslogd restart        ----重启syslogd服务

    3. 登录档的轮替(logrotate)

      注意:logrotate是挂在cron下进行的(查看/etc/cron.daily/logrotate)

      3.1ogrotate的配置文件

      # vim /etc/logrotate.conf        ----【1-12】

      # vi /etc/logrotate.d/syslog        ----查看logrotate程序对syslogd这支程序的轮转设定【1-13,14】 

      3.2实际测试logrotate的动作【1-15 】

      # logorate -v /etc/logorate.conf        ----实际执行一遍logorate并观察整个流程(因为时间没到可能不会执行)

      # logorate -vf /etc/logorate.conf        ----强行进行logorate动作

      # ll /var/log/messages;lsattr /var/log/messages            ----观察一下/var/log/messages文件的变化 

      3.3自定义登录文件的轮替功能【1-16】

      第一步:先建立+a这个属性

      # chattr +a /var/log/admin.log        ----添加+a这个属性

      # lsattr /var/log/admin.log        ----查看这个属性

      # mv /var/log/admin.log /var/log/admin.log.1        ----因为+a属性无法进行这个操作

       第二步:建立logorate的配置文件

      # vim /etc/lograte.d/admin

      # This configration iss from nemo 2013.12.12

      /var/log/admin.log{

          monthly        ----每个月进行一次轮换

          size=10M         ----档案容量大于10M时不论是否到时间都进行轮换

          rotate 5         ----最多保留最近5次备份

          compress         ----进行压缩

          sharescripts

          prerotate        ----下面是每次轮换前执行的脚本

                      /usr/bin/chattr -a /var/log/admin.log        ----去掉+a属性

          endscript

          sharedscripts

          postrotate          ----下面的脚本每次轮换操作结束后执行

                       /usr/bin/killall -HUP syslogd        ----重启syslogd程序

                       /usr/bin/chattr +a /var/log/admin.log        ----加上+a属性

          endscript

      }

       # logrotate -v /etc/lograte.conf        ----这个配置文件会呼叫/etc/logrorate.d/下的所有配置文件,包括上面编辑的admin

       # logrotate -vf /etc/lograte.d/admin        ----强制执行试试

    4. 分析登录档

      4.1centos预设提供的logwatch

      4.2鸟哥自己写的登录档分析工具

      # mkdir /usr/local/virus

      # tar -zxvf logfile-0.1-4-2.tgz -C /usr/local/virus

      # cd /usr/local/virus/logfile

      # vim logfile.sh        ----对源脚本文件做些修改

      email="root@localhost"        ----这一行可以修改成自己的email地址

      basedir="/usr/local/virus/logfile.sh"        ----默认的logfile.sh脚本的位置

      # sh logfile.sh

      # vim /etc//crontab

      10 0 * * * root /usr/local/virus/logfile/logfile.sh         ----设置工作排程

    5. 重点回顾【1-17】

    6. 本章习题练习

    7. 针对本文的建议

  • 相关阅读:
    Spring Security11、登录用户管理
    Spring Security10、账号登录并发控制
    win10下怎么打开notepad++多个实例
    gnu make
    es学习记录
    upj
    JConsole连接远程Java进程
    常用的几种成本核算方法
    SQL SERVER 统计字符串中某字符出现的次数
    centos误删除系统自带的python解决方法
  • 原文地址:https://www.cnblogs.com/eli01/p/3559673.html
Copyright © 2011-2022 走看看