日志审计与分析实验三(rsyslog服务器端和客户端配置)(Linux日志收集)
Linux日志收集
一、实验目的:
1、掌握rsyslog配置方法
2、配置rsyslog服务收集其他Linux服务器日志:
C/S架构:客户端将其日志上传到服务器端,通过对服务器端日志的查询,来实现对其他客户端的日志进行集中管理;下面实现就是通过两套机器来实现,(server:198.168.220.134)——(client:198.168.220.137),将client上的日志传输到server上。
二、实验步骤:
配置前提:所有Linux均默认安装rsyslog服务。
1、前期配置
克隆一台虚拟机
一台当作rsyslog服务器,一台当作rsyslog客户端。本次实验中,我的rsyslog服务器名称是(CentOS7 64位),rsyslog客户端名称是(CentOS7 2)。

查看服务器端和客户端ip地址,确保在同一个网段。
本次实验中,服务器端ip地址:192.168.220.134
客户端ip地址为:192.168.220.137
ifconfig
- 1


将rsyslog服务器端和客户端清除防火墙规则和临时禁用selinux
iptables -F
- 1
setenforce 0
- 1
服务器端:

客户端:

测试rsyslog服务器端和客户端是否能够ping通

查看rsyslog服务状态
service rsyslog status
- 1

2. rsyslog的三种传输协议
(1) UDP 传输协议
基于传统UDP协议进行远程日志传输,也是传统syslog使用的传输协议;
可靠性比较低,但性能损耗最少, 在网络情况比较差,或者接收服务器压力比较高情况下,可能存在丢日志情况。在对日志完整性要求不是很高,在可靠的局域网环境下可以使用。
(2)TCP 传输协议
基于传统TCP协议明文传输,需要回传进行确认,可靠性比较高;
但在接收服务器宕机或者两者之间网络出问题的情况下,会出现丢日志情况。
这种协议相比于UDP在可靠性方面已经好很多,并且rsyslog原生支持,配置简单,同时针对可能丢日志情况,可以进行额外配置提高可靠性,因此使用比较广。
(3)RELP 传输协议
RELP(Reliable Event Logging Protocol)是基于TCP封装的可靠日志消息传输协议;是为了解决TCP 与 UDP 协议的缺点而在应用层实现的传输协议,也是三者之中最可靠的。需要多安装一个包rsyslog-relp以支持该协议。
1、udp传输方式
配置rsyslog服务器端
编辑配置文件
vim /etc/rsyslog.conf
- 1

开启传输端口监听
vim /etc/sysconfig/rsyslog
- 1

重启rsyslog服务
systemctl restart rsyslog
- 1
查看服务器运行的端口
netstat -anpu | grep 514
- 1

配置rsyslog客户端
指定日志传输方式
vim /etc/rsyslog.conf
- 1
如果是udp,则添加
*.* @192.168.220.134:514
- 1

重启rsyslog服务
systemctl restart rsyslog
- 1

服务器端实时查看日志记录
tail -f /var/log/messages
- 1
客户端进行测试
logger -t kern -p err "hello world"
- 1

2、tcp传输方式
配置rsyslog服务器端
编辑配置文件
vim /etc/rsyslog.conf
- 1
恢复对udp的注释,去掉对tcp的注释

开启传输端口监听
vim /etc/sysconfig/rsyslog
- 1

重启服务
systemctl restart rsyslog
- 1
查看服务器运行的端口
netstat -anpt | grep 514
- 1

配置rsyslog客户端
指定日志传输方式
vim /etc/rsyslog.conf
- 1
如果是tcp,则将udp的注释掉并添加
*.* @@192.168.220.134:514
- 1

重启rsyslog服务
systemctl restart rsyslog
- 1
服务器端实时查看日志记录
tail -f /var/log/messages
- 1
客户端进行测试
logger -t kern -p err "hello hello"
- 1

3、relp传输方式
配置rsyslog服务器端
安装relp服务
yum install rsyslog-relp
- 1


编辑配置文件
vim /etc/rsyslog.conf
- 1
恢复对udp,tcp的注释,添加以下两行:
$ModLoad imrelp
$InputRELPServerRun 2514
- 1
- 2

开启传输端口监听
vim /etc/sysconfig/rsyslog
- 1

重启服务
systemctl restart rsyslog
- 1
查看服务器运行的端口
netstat -anpt | grep ":2514"
- 1

配置rsyslog客户端
在客户端安装relp服务
yum install rsyslog-relp
- 1

指定日志传输方式
vim /etc/rsyslog.conf
- 1
如果是relp,则将udp,tcp的注释掉并添加
$ModLoad omrelp
*.* :omrelp:192.168.220.134:2514
- 1
- 2

重启rsyslog服务
systemctl restart rsyslog
- 1
服务器端实时查看日志记录
tail -f /var/log/messages
- 1
客户端进行测试
logger -t kern -p err "hello kitty"
- 1

日志审计与分析实验三(rsyslog服务器端和客户端配置)(Linux日志收集)的更多相关文章
- 20135327郭皓--Linux内核分析第三周 构造一个简单的Linux系统MenuOS
Linux内核分析第三周 构造一个简单的Linux系统MenuOS 前提回顾 1.计算机是如何工作的三个法宝 1.存储程序计算机 2.函数调用堆栈 3.中断 2.操作系统的两把宝剑 中断上下文的切换 ...
- Linux内核分析实验三----跟踪分析Linux内核的启动过程
一.Linux内核源代码介绍 1.根目录 arch/x86目录下的代码是我们重点关注的,arch中包括支持不同CPU的源代码. init目录下包含内核启动相关的代码,如main.c(start_ker ...
- “Linux内核分析”实验三报告
构造一个简单的Linux系统 张文俊+原创作品转载请注明出处+<Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-10000290 ...
- Linux内核分析 实验三:跟踪分析Linux内核的启动过程
贺邦 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程 http://mooc.study.163.com/course/USTC-1000029000 一. 实验过程 ...
- 【MOOC EXP】Linux内核分析实验三报告
程涵 原创博客 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 [跟踪分析Linux内核的启动过程] ...
- linux内核分析 第三周 构造一个简单的Linux系统MenuOS
一.计算机的三个法宝 存储程序计算机,函数调用堆栈,中断二.操作系统的两把剑:1.中断上下文的切换,保存现场和恢复现场2.进程上下文的切换. 三.linux内核源代码的分析: ·arch/目录保存支持 ...
- Linux内核分析第三周——构造一个简单的Linux系统MenuOS
构造一个简单的Linux系统MenuOS 李雪琦 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/UST ...
- vss安装及服务器端、客户端配置图文教程
安装VSS 一.双击setup. 之后点完成.就安装完了! 服务器端VSS配置 一.选择开始——所有程序——打开 一直下一步 到完成 二.然后再打开 说明:把这个enable rights and ...
- Linux系统实战项目——sudo日志审计
Linux系统实战项目——sudo日志审计 由于企业内部权限管理启用了sudo权限管理,但是还是有一定的风险因素,毕竟运维.开发等各个人员技术水平.操作习惯都不相同,也会因一时失误造成误操作,从而 ...
随机推荐
- 【原创】记一次对X呼APP的渗透测试
获取CMS并本地安装 X呼是一款开源的客服CMS系统,访问官网,下载安卓版本的app和源码本地搭建: 发现这cms预留admin表中的用户就不少.... 直接用预留的密码解密,然后就能登录手机APP了 ...
- 不要使用Java Executors 提供的默认线程池
线程池构造方法 public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUni ...
- 为 map 中不存在的 key 提供缺省值
需求 需要往一个复杂的 map 中写入数据,或为 map 中不存在 key 提供 default value java standard library Map<K, List<V> ...
- 零基础学Java第三节(基本输入输出)
本篇文章是<零基础学Java>专栏的第三篇文章,文章采用通俗易懂的文字.图示及代码实战,从零基础开始带大家走上高薪之路! 本文章首发于公众号[编程攻略] Java程序的命令行参数 我们可以 ...
- Java 15 新特性:隐藏类
什么是隐藏类 隐藏类,是一种不能被其他类直接使用的类.引入隐藏类的主要目的是给框架来使用,使得框架可以在运行时生成类,并通过反射间接使用它们.可能有点抽象,不要紧,下面我们通过一个例子来直观的认识它! ...
- js颜色调试器
1 /* ColorTestViewer 颜色调试器 2 3 attribute: 4 onchange: Function; //颜色改变回调; 默认null 5 6 //以下属性不建议直接修改 7 ...
- application.properties文件中暗藏玄机
上次分享了如何一步一步搭建一个springboot的项目,详细参见<5分钟快速搭建一个springboot的项目>,最终的结果是在"8080"端口搭建起了服务,并成功访 ...
- ngx_http_fastcgi_module 的那些事
是什么? 顾名思义,是Nginx用来处理FastCGI的模块.FastCGI是什么?这个以后再讲,可以说的是现在LNMP架构里面,PHP一般是以PHP-CGI的形式在运行,它就是一种FastCGI,我 ...
- 【转载】浅谈大规模k8s集群关于events的那些坑
原文链接:一流铲屎官二流程序员[浅谈大规模k8s集群关于events的那些坑] 背景 随着k8s集群规模的增加,集群内的object数量也与日俱增,那么events的数量也会伴随其大量增加,那么当用户 ...
- Django从数据库导model迁移乱码
python manage.py inspectdb > [your app name]\models.py 执行后 model.py乱码,将models.py以 UTF-16LE打开.