log日志都是一个系统不可缺少的一个重要组成部分,出现问题通过日志解决是非常有效的方法,如果能将日志收集在一个指定的服务器,对生产环境来说是很重要的。本文主要是日志的远程收集。

准备实验环境(关闭selinux和防火墙)
——————————————————————————————————
客户端:
[root@luc ~]# hostname -I
192.168.88.150
环境:
[root@luc ~]# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)
——————————————————————————————————
Log服务器:
[root@logserver ~]# hostname -I
192.168.88.148
环境:
[root@logserver ~]# cat /etc/redhat-release
CentOS release 6.9 (Final)
——————————————————————————————————
日志服务:rsyslog
默认安装软件,可以用yum –y install rsyslog
端口:514 udp/tcp
配置文件: /etc/rsyslog.conf 和 /etc/rsyslog.d/*.conf
日志位置: /var/log

=====================================================
配置文件
——————————————————————————————
client:192.168.88.150
[root@luc ~]# vim /etc/rsyslog.d/mon.conf
##使用@时udp传输,@@是用户tcp传输,. 任何日志的任何级别信息
. @192.168.88.148:514

[root@luc ~]# systemctl restart rsyslog && systemctl enable rsyslog
——————————————————————————————
server:
[root@logserver ~]# vim /etc/rsyslog.conf
/# Provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514
/# Provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514

[root@logserver ~]# mkdir –p /app/logs/rsyslog/
[root@logserver ~]# vim /etc/rsyslog.d/mon.conf
. /app/logs/rsyslog/mon.log

[root@logserver ~]# /etc/init.d/rsyslog restart

==========================================================================
验证:
在通过192.168.88.1使用root用ssh登录client:192.168.88.150,故意输入错密码
在server查看结果
[root@logserver ~]# tail -f /app/logs/rsyslog/mon.log
linux日志远程收集_第1张图片

密码输入正确,日志结果:
linux日志远程收集

共勉:I hear and I forget. I see and I remember. I do and I understand!