当前位置: 首页 > news >正文

CentOS 7 搭建rsyslog日志服务器

CentOS 7 搭建rsyslog日志服务器

  • 前言
  • 一、IP地址及主机名称规划
    • 1.修改主机名
  • 二、配置rsyslog日志服务器
    • 1.安装rsyslog服务
    • 2.编辑/etc/rsyslog.conf 文件
    • 3.启动并启用rsyslog服务
    • 4.验证端口是否侦听
  • 三、在rsyslog日志服务器上配置firewalld防火墙
  • 四、配置rsyslog日志客户端
    • 1.编辑/etc/rsyslog.conf文件
    • 2.重启客户端的rsyslog服务
    • 3.服务端和客户端相互ping一下
  • 五、验证日志服务器配置是否生效
    • 1.在服务端tail日志文件
    • 2.在客户端logger一段自定义内容
  • 六、配置日志存到指定位置文件
    • 1.IP地址及主机名称规划
    • 2.修改两个客户端主机名
    • 3.在服务端编辑/etc/rsyslog.conf 文件
    • 4. 在服务端创建对应的目录并设置权限
    • 3.重启服务端的rsyslog服务
    • 4.再次验证日志服务器配置是否生效
      • 1)在客户端1 logger一段自定义内容
      • 2)在客户端2 logger一段自定义内容
      • 3)在服务端分别tail两个日志文件

前言

搭建rsyslog日志服务器是在Linux系统上集中收集和管理日志的常见方法。

一、IP地址及主机名称规划

在这里插入图片描述

1.修改主机名

hostnamectl set-hostname serverlog
bashhostnamectl set-hostname clientlog
bash

二、配置rsyslog日志服务器

1.安装rsyslog服务

Centos 7默认是安装了rsyslog服务的,如果没有,可以使用以下命令进行安装:

yum update
yum install rsyslog -y

2.编辑/etc/rsyslog.conf 文件

编辑rsyslog配置文件:
nano /etc/rsyslog.conf

将以下内容取消注释,去掉行首的#

$ModLoad imudp
$UDPServerRun 514
$ModLoad imtcp
$InputTCPServerRun 514

在这里插入图片描述

3.启动并启用rsyslog服务

#启动rsyslog服务
systemctl start rsyslog#开机自启动rsyslog服务
systemctl enable rsyslog#重新启动rsyslog服务
systemctl restart rsyslog#查看rsyslog服务
systemctl status rsyslog

在这里插入图片描述

4.验证端口是否侦听

netstat -tunlp | grep "514"

在这里插入图片描述

三、在rsyslog日志服务器上配置firewalld防火墙

#查看默认区域
firewall-cmd --get-default-zone#允许icmp
firewall-cmd --permanent - --add-protocol=icmp#允许tcp514端口
firewall-cmd --permanent  --add-port=514/tcp#允许udp514端口
firewall-cmd --permanent  --add-port=514/udp#使配置生效
sudo firewall-cmd --reload#查看防火墙规则
firewall-cmd --list-all

在这里插入图片描述

四、配置rsyslog日志客户端

1.编辑/etc/rsyslog.conf文件

nano /etc/rsyslog.conf*.* @10.10.10.10:514
*.* @@10.10.10.10:514

在这里插入图片描述

2.重启客户端的rsyslog服务

systemctl restart rsyslog

3.服务端和客户端相互ping一下

在这里插入图片描述

五、验证日志服务器配置是否生效

1.在服务端tail日志文件

tail -f /var/log/messages 

在这里插入图片描述

2.在客户端logger一段自定义内容

#发送自定义的一段内容,验证配置是否生效
logger chen789789

在这里插入图片描述

六、配置日志存到指定位置文件

为什么要指定位置,当前试验环境下,只有一个服务端,一个客户端,当有多个客户端的时候,我们如何区分不同的客户端的日志信息,我觉得最好的方法就是,将其存储在不同的日志文件中。

1.IP地址及主机名称规划

在这里插入图片描述

2.修改两个客户端主机名

hostnamectl set-hostname clientlog1
bashhostnamectl set-hostname clientlog2
bash

3.在服务端编辑/etc/rsyslog.conf 文件

实现来自不同客户端的日志,存储在不同的日志文件中

nano /etc/rsyslog.conf if ($fromhost-ip == '10.10.10.20') then /var/log/client_logs/10.10.10.20.log
& stopif ($fromhost-ip == '10.10.10.22') then /var/log/client_logs/10.10.10.22.log
& stop

在这里插入图片描述

4. 在服务端创建对应的目录并设置权限

 mkdir -p /var/log/client_logschmod -R 755 /var/log/client_logsls -ldi /var/log/client_logs

在这里插入图片描述

3.重启服务端的rsyslog服务

systemctl restart rsyslog

4.再次验证日志服务器配置是否生效

1)在客户端1 logger一段自定义内容

logger client1_chen1111

在这里插入图片描述

2)在客户端2 logger一段自定义内容

logger client2_chen2222

在这里插入图片描述

3)在服务端分别tail两个日志文件

tail -f /var/log/client_logs/10.10.10.20.log 
tail -f /var/log/client_logs/10.10.10.22.log 

在这里插入图片描述

end

http://www.lryc.cn/news/389333.html

相关文章:

  • 使用Spring Boot Actuator监控应用健康状态
  • leetcode刷题:vector刷题
  • CGI面试题及参考答案
  • 论文调研_物联网漏洞检测综述
  • Java学习【IO流:深入理解与应用(上)】
  • 干货系列:SpringBoot3第三方接口调用10种方式
  • KVM性能优化之CPU优化
  • lua中判断2个表是否相等
  • uni-app 自定义支付密码键盘
  • 抖音微短剧小程序源码搭建:实现巨量广告数据高效回传
  • springboot数字化医院产科系统源码
  • uniapp微信接口回调 response.sendRedirect nginx 报404错误
  • Python系统教程02
  • JS面试题6——深拷贝和浅拷贝
  • Scrapy实现关键词搜索的数据爬取
  • 【Linux】ip命令详解
  • 软降工程学系统实现
  • 001 SpringMVC介绍
  • 深入解析scikit-learn中的交叉验证方法
  • 分布式kettle调度管理平台简介
  • 002-基于Sklearn的机器学习入门:基本概念
  • ubuntu 默认的PATH配置
  • JAVA妇产科专科电子病历系统源码,前端框架:Vue,ElementUI
  • 代码随想录算法训练营Day56|所有可达路径、797.所有可能的路径
  • DNF手游鬼剑士攻略:全面解析流光星陨刀的获取与升级!云手机强力辅助!
  • npm创建一个空的vue3项目的方法或者pnpm创建vue3项目
  • LSH算法:高效相似性搜索的原理与Python实现I
  • cesium 添加 Echarts图层(人口迁徒图)
  • Windows下快速安装Open3D-0.18.0(python版本)详细教程
  • 无法下载 https://mirrors./ubuntu/dists/bionic/main/binary-arm64/Packages