zoukankan      html  css  js  c++  java
  • rsyslog日志服务部署

    rsyslog简介

    rsyslog是CentOS6和CentOS7默认的记录日志的服务

    支持特性:

    • UDP, TCP, SSL, TLS, RELP
    • MySQL, PGSQL, Oracle实现日志存储
    • 强大的过滤器,可实现过滤记录日志信息中任意部分
    • 自定义输出格式

     

    常见术语:

    • facility:设施,从功能或程序上对日志进行归类:

    auth, authpriv, cron, daemon,ftp,kern, lpr, mail, news, security(auth), user, uucp, local0-local7, syslog

    • Priority 优先级别,从低到高排序:

    debug, info, notice, warn(warning), err(error), crit(critical), alert, emerg(panic)

     

    配置文件格式:

        /etc/rsyslog.conf 配置文件由三部分组成

    • MODULES:相关模块配置
    • GLOBAL DIRECTIVES:全局配置
    • RULES:日志记录相关的规则配置

     

    RULES设置方式:

    • facility

    *: 所有的facility
    facility1,facility2,facility3,...:指定的facility列表

    • priority:

    *: 所有级别
    none:没有级别,即不记录
    PRIORITY:指定级别(含)以上的所有级别
    =PRIORITY:仅记录指定级别的日志信息

    • target:

    文件路径:通常在/var/log/,文件路径前的-表示异步写入
    用户:将日志事件通知给指定的用户,* 表示登录的所有用户
    日志服务器:@host,把日志送往至指定的远程服务器记录
    管道: | COMMAND,转发给其它命令处理

    启动网络日志服务:

        可以把开启自己的网络服务模式,把其他主机的日志保存到本机,相当于日志服务器的功能。

    • 通常的日志格式:

    事件产生的日期时间 主机 进程(pid):事件内容
    如: /var/log/messages,cron,secure等

    • 配置rsyslog成为日志服务器

    #### MODULES ####         在MODULES模块下把对应的配置注释取消即可
    # Provides UDP syslog reception
    $ModLoad imudp
    $UDPServerRun 514
    # Provides TCP syslog reception
    $ModLoad imtcp
    $InputTCPServerRun 514

    常用的日志说明:

    • /var/log/secure:系统安装日志,文本格式,应周期性分析
    • /var/log/btmp:当前系统上,用户的失败尝试登录相关的日志信息,二进制格式,lastb命令进行查看
    • /var/log/wtmp:当前系统上,用户正常登录系统的相关日志信息,二进制格式,last命令可以查看
    • /var/log/lastlog:每一个用户最近一次的登录信息,二进制格式,lastlog命令可以查看
    • /var/log/dmesg:系统引导过程中的日志信息,文本格式。可以通过文本查看工具查看,也可以通过专用命令dmesg查看
    • /var/log/messages :系统中大部分的信息
    • /var/log/anaconda : anaconda的日志

    rsyslog设置举例

    我们知道sshd的默认日志是保存在/var/log/secure的

    # 查看sshd的默认配置

    # cat /etc/ssh/sshd_config

    SyslogFacility AUTHPRIV    # 默认是保存在AUTHPRIV设施里的

     

    # 查看rsyslog配置

    # cat /etc/rsyslog.conf

    authpriv.* /var/log/secure    # 可以看到authpriv设施下的所有级别的日志都保存到/var/log/secure中

    这里我们设置把sshd的日志保存到一个没占用的设施local0中,并将local0的所有日志保存到/var/log/ssh文件中

    1、修改sshd配置
    
    # vim /etc/ssh/sshd_config
    
    SyslogFacility local0
    
    2、修改rsyslog配置
    #vim /etc/rsyslog.conf 
    在文挡最后新增如下行
    local0.*      
    /var/log/ssh
    
    
    3、启rsyslog和sshd服务
    # systemctl restart rsyslog sshd
    
    4、查看新生成的日志文件
    

    #cat /var/log/ssh

    rsyslog将日志记录在mysql中

    1、安装mariadb和rsyslog-mysql程序包

    # yum install mariadb-server rsyslog-mysql

     

    2、创建rsyslog-mysql依赖的数据库

    # rpm -ql rsyslog-mysql /usr/lib64/rsyslog/ommysql.so /usr/share/doc/rsyslog-8.24.0/mysql-createDB.sql

    # systemctl start mariadb

    # msyql < /usr/share/doc/rsyslog-8.24.0/mysql-createDB.sql

     

    3、创建用户,授权对Syslog数据库的全部访问权限

    mysql> GRANT ALL ON Syslog.* TO 'wangq'@'172.16.%' IDENTIFIED BY '123456';

     

    4、修改rsyslog配置

    # vim /etc/rsyslog.conf

    新增下面配置注意配置mysql的格式 :ommysql:DBHOST,DBNAME,DBUSER,PASSWORD

    $ModLoad ommysql

    *.info;mail.none;authpriv.none;cron.none    :ommysql:172.16.100.215,Syslog,wangqiang,123456

     

    5、重启服务 # systemctl restart rsyslog

    web显示rsyslog日志

    安装开源loganalyzer,通过web查看mysql存储的日志

    1、配置LAMP

    # yum install httpd php php-mysql php-gd # service httpd start

     

    2、网上下载 loganalyzer-4.1.7.tar.gz

    # tar xf loganalyzer-4.1.7.tar.gz

    # cd loganalyzer-4.1.7

    # cp src /var/www/html

    # cd /var/www/html

    # mv src log

    # cd log

    # touch config.php

    # chmod 666 config.php

     

    3、登录web页面(http://x.x.x.x)配置loganalyzer,然后把权限改回664

    # chmod 644 config.php

  • 相关阅读:
    Linux 下的类似Windows下Everything的搜索工具
    windows和linux环境下制作U盘启动盘
    程序调试手段之gdb, vxworks shell
    LeetCode 1021. Remove Outermost Parentheses (删除最外层的括号)
    LeetCode 1047. Remove All Adjacent Duplicates In String (删除字符串中的所有相邻重复项)
    LeetCode 844. Backspace String Compare (比较含退格的字符串)
    LeetCode 860. Lemonade Change (柠檬水找零)
    LeetCode 1221. Split a String in Balanced Strings (分割平衡字符串)
    LeetCode 1046. Last Stone Weight (最后一块石头的重量 )
    LeetCode 746. Min Cost Climbing Stairs (使用最小花费爬楼梯)
  • 原文地址:https://www.cnblogs.com/ysuwangqiang/p/11955804.html
Copyright © 2011-2022 走看看