rsyslog服务器实现通过loganalyzer管理

简单罗列基础命令,只分享我的想法!

  • rsyslog简述

(1)关于rsyslog介绍

rsyslog服务是多线程的日志管理工具,因为是多线程所以比之前的syslog处理事务的能力更加出色,支持SSL/TCP/UDP/TLS/RELP,并且日志可以记录在MySQL/PGSQL/Oracle等关系库中。

rsyslog是CentOS提供的,主要是记录系统产生的日志信息,并且专门为那些产生日志较少的第三方程序或不愿意开发日志功能的程序提供记录日志的功能,以更加统一的管理日志。

(2)配置文件/etc/syslog.conf中关于####RULES ####说明

rsyslog的配置文件是/etc/rsyslog.conf,主要理解两个核心概念,主要在RULE部分体现(facility.priority target),即facility和priority,一般记录日志的时候,已经明确说明由哪个facility记录,记录的级别是什么。

facility是从功能或程序上对日志进行分类,并由专门的工具负责记录相应的日志信息,也就是说,记录关于什么的日志。如auth记录关于认证方面的日志、cron记录定期任务的日志等。

priority,记录日志的级别。Debug代表事无巨细全部记录,从一般信息到严重信息分别为,info/notice/warn/err/crit/alert/emerg。

指定级别的方式有:

  • *:所有级别;
  • none:没有级别,任何信息都不记录;
  • PRIORITY:比PRIORITY这个优先级高的(包括PRIORITY)所有级别的日志信息全部记录;
  • =PRIORITY:仅记录PRIORITY这个级别的日志记录;

target主要是说明日志所在的路径:

  • 文件路径:将日志记录于指定的文件中,如果在路径之前有“-”号,代表是async,一般日志信息sync;
  • 用户:将日志信息通知给用户,比如*.emerg *,代表不管哪一种emerg级别的日志信息都会通知在线的所有用户。
  • 日志服务器:@SERVER;
  • 管道:|COMMAND;

(3)关于日志文件的格式说明

事件产生的时间 主机 进程(pid) 事件

(4)关于/etc/syslog.conf中#### MODULES####说明

$ModLoad 模块名(不要加.so后缀,只是模块的名字)。

  • 配置rsyslog服务器并通过loganalyzer工具进行管理

(1)环境说明

rsyslog服务器使用CentOS6.6,IP为192.168.0.22通过mysql保存日志信息。

client使用CentOS 6.6,IP为172.16.49.5。

(2)client配置说明

Client配置较为简单。

vim /etc/rsyslog.conf

在#### RULES ####中修改下面一行(主要是测试用)

*.info;mail.none;authpriv.none;cron.none @192.168.0.22

重新启动rsyslog服务

/etc/init.d/rsyslog restart

(3)rsyslog服务器配置说明

vim /etc/rsyslog.conf

修改#### MODULES ####中的以下两行,启用rsyslog服务器

$ModLoad imudp
$UDPServerRun 514

rsyslog服务器的日志信息仍然记录在本地

必须重启该服务

/etc/init.d/rsyslog restart

查看UDP的514端口是否开启

ss –lnup

(注意:此时在client卸载telnet-server,那么rsyslog服务器的/var/log/message中会有记录,如下图:)

图1

因为loganalyzer需要用到php而日志的存储用到MySQL,所以安装lamp。还需要安装另一个库,那就是rsyslog与mysql连接的一个库,叫做rsyslog-mysql

yum install httpd php mysql-server php-mysql php-gd rsyslog-mysql –y

确保httpd正常工作

vim /var/www/html/index.html
<h> 192.168.0.22 <h\>

确保php正常工作

vim /var/www/html/index.php
<?php
        phpinfo();
?>

初始化函数库

/etc/init.d/mysqld start

创建rsyslog依赖的函数库

cd /usr/share/doc/rsyslog-mysql-5.8.10/
mysql < createDB.sql

进入数据库查看是否已经有了Syslog数据库

mysql> SHOW DATABASES;

创建rsyslog用户并授权查看Syslog数据库中的任何数据

mysql> GRANT ALL ON Syslog.* TO ‘rsyslog‘@‘localhost‘ IDENTIFIEDBY ‘rsyslog‘;
mysql> GRANT ALL ON Syslog.* TO ‘rsyslog‘@‘127.0.0.1‘ IDENTIFIEDBY ‘rsyslog‘;

可以看到Syslog数据库中有两个表

mysql> SHOW TABLES;
+------------------------+
| Tables_in_Syslog       |
+------------------------+
| SystemEvents           |
| SystemEventsProperties |
+------------------------+
2 rows in set (0.00 sec)

配置rsyslog启用ommysql(可以通过rpm -qlrsyslog-mysql知道模块)模块

vim /etc/rsyslog.conf

添加一行

$ModLoad ommysql

修改一行

//*.info;mail.none;authpriv.none;cron.none :ommysql:SQL-IP,DATABASE,USERNAME,PASSWORD
*.info;mail.none;authpriv.none;cron.none     :ommysql:127.0.0.1,Syslog,rsyslog,rsyslog

注意:测试是否已经已经把日志存储到数据库中,在client中安装telnet-server,在server端打开SystemEvents进行查看,如下图:

图2

(4)配置loganalyzer这个GUI管理rsyslog的工具

解压缩loganalyzer-3.6.5.tar.gz

cd loganalyzer-3.6.5/
mv src/ /var/www/html/loganalyzer
cp contrib/* /var/www/html/loganalyzer

给configure和secure这两个脚本执行权限

cd /var/www/html/loganalyzer
chmod +x configure.sh secure.sh

创建config.php文件,loganalyzer需要

vim config.php
chmod 666 config.php

运行脚本

./configure.sh
./secure.sh

(5)通过浏览器访问http://192.168.0.22/loganalyzer/install.php进行配置,主要的几个配置截图

图3

图4

时间: 2024-08-09 10:44:20

rsyslog服务器实现通过loganalyzer管理的相关文章

Samba服务器的配置与管理

Samba服务器配置 一.认识samba Samba是一套让Linux系统能够应用Microsoft网络通信协议的软件,利用Samba服务可以实现Linux与Windows系统的文件与打印共享.本次将主要介绍Linux系统下Samba服务器的配置方法,以实现Linux和Windows系统的资源共享. Samba最先在Linux和Windows两个平台之间架起了一座桥梁,通过Samba我们可以在Linux系统和Windows系统之间互相通信,比如拷贝文件.实现不同操作系统之间的资源共享等,我们可以

NFS服务器的配置与管理

配置与管理NFS网络文件系统 一.NFS服务概述 Linux和Windows之间可以通过Samba进行文件共享,那么Linux之间怎么进行资源共享呢?这就要说到NFS(Network File System,网络文件系统),它最早是UNIX操作系统之间共享文件和操作系统的一种方法,后来被Linux操作系统完美继承. NFS最早是由Sun公司于1984年开发出来的,其目的就是让不同计算机.不同操作系统之间可以彼此共享文件.由于NFS使用起来非常方便,因此很快得到了大多数UNIX/Linux系统的广

Apache服务器的配置与管理

Apache服务器的建立 一.项目设计 利用Apache服务建立普通Web站点.基于主机和用户认证的访问控制. 二.项目准备 安装有企业服务器版Linux的PC计算机一台.测试用计算机一台(Windows XP).并且两台计算机都在连入局域网.该环境也可以用虚拟机实现.规划好各台主机的IP地址. 三.安装过程 Apache相关软件 httpd软件包 httpd-manual软件包 1.检测是否安装httpd 2.开启httpd服务 3.查看80端口是否被监听 4.查看ip地址,并测试服务器是否能

DNS服务器的配置与管理

配置与管理DNS服务器 一.DNS服务概述 DNS(Domain Name Service,域名系统)是一个分布式数据库系统,其作用将域名解析成IP地址.域名系统允许用户使用友好的名字而不是难以记忆的数字--IP地址来访问Internet上的主机. 二.项目设计 为了保证校园网中的计算机能够安全可靠地通过域名访问本地网络以及Internet资源,需要在网络中部署主DNS服务器.辅助DNS服务器.缓存DNS服务器. 三.项目准备 (1)安装Linux企业服务器版的计算机1台,用作DHCP服务器:

Linux-DNS服务器的配置与管理(上)

DNS服务器的配置与管理 ****************首先要知道下面几个与域名解析相关的文件/etc/hosts         --早期(DNS之前)对主机名称的解析方法,一般有三个字段组成:IP .主机完全域名.别名/etc/resolv.conf   --在DNS客户端指定所使用的DNS服务器的参数./etc/nsswitch      --该文件用来定义网络数据库的搜索顺序,如:主机名称.用户口令.网络协议等网络参数./etc/host.conf     --解析器配置文件,用于指定

rsyslog 服务器重启后 发现不能接受到外部日志 只能接受本地日志 关闭防火墙即可

rsyslog 服务器重启后 发现不能接受到外部日志 只能接受本地日志  关闭防火墙即可 1 关闭防火墙: # systemctl stop firewalld 2 将SELINUX设置为disabled # setenforce 0 # sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config

日志分析-2.发送windows日志到一个远程的rsyslog服务器上

要将一个Windows客户端的日志消息转发到我们的rsyslog服务器,需要一个安装 Windows syslog 代理. 1.SyslogAgent http://download.cnet.com/Datagram-SyslogAgent/3000-2085_4-10370938.html 2.安装SyslogAgent 这里省略安装步骤 3.相应的设置 需要将其配置为作为服务运行,连接install,点 Rsyslog 服务器如何配置,请查看 http://yuanji6699.blog.

ssh key 免密码登陆服务器,批量分发管理以及挂载远程目录的sshfs 功能

ssh key 免密码登陆服务器,批量分发管理以及挂载远程目录的sshfs 第一部分:使用ssh key 实现服务器间的免密码交互登陆 步骤1: 安装openssh-clients [[email protected] ~]# yum install openssh-clients -y 步骤2: 创建用户,所有机器同时操作,可直接使用root [[email protected] ~]# useradd test #如果使用root,这里跳过 [[email protected] ~]# ec

Web服务器的配置与管理

Web服务器的配置与管理(2) 虚拟主机技术 在上篇博文中,我们已经利用IIS搭建好了一台Web服务器,并可以成功访问IIS中自带的默认站点,那么我们是否可以在这台服务器中再创建另外一个Web站点?也就是说,在一台Web服务器中是否可以同时存在多个网站呢? 答案当然是肯定的,其实很多中小企业的网站都是从网上租用的空间,提供空间租用的Web服务器里就同时存在了很多个网站. 但是当多个网站同时存在于一台服务器里时,就必须得有一种方法能够将它们区分开,这种方法也就是虚拟主机技术. 有三种方法可以实现虚