分析系统日志有助于排查故障,管理几台服务器可以通过远程登录的方式逐台查看分析,随着服务器设备越来越多,集中分析管理各类日志信息也就显得越来越重要。如果对日志存储期限和查看方式的要求不高,可以直接把其他服务器日志以文本文件的形式存储在日志服务器。
实验环境
操作系统:RHEL 6.10
Rsyslog:8.1908.0
服务端IP:192.168.168.11
客户端IP:192.168.168.12
服务端篇
第一步 安装软件包
- # wget --no-check-certificate -O /etc/yum.repos.d/rsyslog.repo http://rpms.adiscon.com/v8-stable/rsyslog.repo
- # yum -y install rsyslog
第二步 配置服务
- # vim /etc/rsyslog.conf
- #使用IPv4协议
- global(net.ipprotocol = "ipv4-only")
- #加载本地系统日志记录模块
- module(load="imuxsock")
- #加载内核级别日志记录模块
- module(load="imklog")
- #加载TCP协议接收日志模块
- module(load="imtcp")
- input(type="imtcp" address="192.168.168.11" port="514")
- #加载UDP协议接收日志模块
- module(load="imudp")
- input(type="imudp" address="192.168.168.11" port="514")
- #日志截断最大容量
- $maxMessageSize 16K
- #设置允许发送日志的来路(传输协议、主机IP地址范围)
- $AllowedSender TCP,127.0.0.1,192.168.168.0/24
- $AllowedSender UDP,127.0.0.1,192.168.168.0/24
- #设置默认的TimeStamp格式
- $ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
- #设置配置文件路径
- $IncludeConfig /etc/rsyslog.d/*.conf
- #设置日志输出模版(当前格式:主机名/年月/日/信息名称.log)
- template(name="RSYSLOG_SERVER" type="string" string="/var/log/rsyslog_server/%HOSTNAME%/%$YEAR%/%$MONTH%/%$DAY%/%PROGRAMNAME%.log")
- #记录所有的kernel日志到/var/log/kernel
- kern.* /var/log/kernel
- #记录大于等于info级别的日志到/var/log/messages(不记录类型为mail、authpriv、cron的日志)
- *.info;mail.none;authpriv.none;cron.none /var/log/messages
- #记录类型为auth、authpriv的所有级别日志到/var/log/secure
- auth.*;authpriv.* /var/log/secure
- #记录类型为mail的所有级别日志到/var/log/maillog
- mail.* /var/log/maillog
- #记录类型为cron的所有级别日志到/var/log/cron
- cron.* /var/log/cron
- #记录类型为daemon的所有级别日志到/var/log/daemon
- daemon.* /var/log/daemon
- #记录类型为user的所有级别日志到/var/log/user
- user.* /var/log/user
- #记录所有类型的严重级别日志,并让全体用户看到
- *.emerg :omusrmsg:*
- #记录uucp、news的重要级别日志到/var/log/spooler
- uucp,news.crit /var/log/spooler
- #记录自定义程序(boot)的所有级别到/var/log/boot
- local7.* /var/log/boot
- #发送日志信息到本地
- *.info ?RSYSLOG_SERVER
第三步 配置开机启动、启动服务
- # chkconfig rsyslog on
- # service rsyslog start
客户端篇
第一步 安装软件包
- # wget --no-check-certificate -O /etc/yum.repos.d/rsyslog.repo http://rpms.adiscon.com/v8-stable/rsyslog.repo
- # yum -y install rsyslog
第二步 配置服务
- # vim /etc/rsyslog.conf
- #加载本地系统日志记录模块
- module(load="imuxsock")
- #加载内核级别日志记录模块
- module(load="imklog")
- #设置默认的TimeStamp格式
- $ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
- #设置配置文件路径
- $IncludeConfig /etc/rsyslog.d/*.conf
- #记录所有的kernel日志到/var/log/kernel
- kern.* /var/log/kernel
- #记录大于等于info级别的日志到/var/log/messages(不记录类型为mail、authpriv、cron的日志)
- *.info;mail.none;authpriv.none;cron.none /var/log/messages
- #记录类型为auth、authpriv的所有级别日志到/var/log/secure
- auth.*;authpriv.* /var/log/secure
- #记录类型为mail的所有级别日志到/var/log/maillog
- mail.* /var/log/maillog
- #记录类型为cron的所有级别日志到/var/log/cron
- cron.* /var/log/cron
- #记录类型为daemon的所有级别日志到/var/log/daemon
- daemon.* /var/log/daemon
- #记录类型为user的所有级别日志到/var/log/user
- user.* /var/log/user
- #记录所有类型的严重级别日志,并让全体用户看到
- *.emerg :omusrmsg:*
- #记录uucp、news的重要级别日志到/var/log/spooler
- uucp,news.crit /var/log/spooler
- #记录自定义程序(boot)的所有级别到/var/log/boot
- local7.* /var/log/boot
- #使用UDP协议发送日志到远程日志服务器(@@则表示TCP协议)
- *.info @192.168.168.11:514
第三步 配置搜集用户历史命令(可选)
- # echo "export PROMPT_COMMAND='{ msg=\$(history 1 | { read x y; echo \$y; });logger \"[euid=\$(whoami)]\":\$(who am i):[\`pwd\`]\"\$msg\"; }'" >> /etc/profile
- # source /etc/profile
第四步 配置开机启动、启动服务
- # chkconfig rsyslog on
- # service rsyslog start
您可以选择一种方式赞助本站
支付宝扫一扫
微信扫一扫
赏