阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

CentOS 6.7搭建Rsyslog日志服务器

473次阅读
没有评论

共计 6462 个字符,预计需要花费 17 分钟才能阅读完成。

前言:

随着机房内的服务器和网络设备增加,日志管理和查询就成了让系统管理员头疼的事。

系统管理员遇到的常见问题如下:

1、日常维护过程中不可能登录到每一台服务器和设备上去查看日志;
2、网络设备上的存储空间有限,不可能存储日期太长的日志,而系统出现问题又有可能是很久以前发生的某些操作造成的;
3、在某些非法入侵的情况下,入侵者一般都会清除本地日志,清除入侵痕迹;
4、zabbix 等监控系统无法代替日志管理,无法监控如系统登录、计划任务执行等项目。

基于上述原因,在当前的网络环境中搭建一台用于日志集中管理的 Rsyslog 日志服务器就显得十分有必要了。

Rsyslog 服务的优点如下:

1、Rsyslog 服务器可以大多数的网络设备支持,在网络设备的系统设备选项中大多都有远程日志服务的配置选项。只需要填写上 IP 地址和端口(大多数设备已经默认是 514 了),然后确定就可以了;
2、Linux 服务器只需要在本地的 Rsyslog 服务配置中加入简单的一行就可以将日志发送到日志服务器,布署和配置起来十分简单;
3、通过软件(如 evtsys)也可以支持 Windows 服务器,布署和配置也不是很难,但是有些软件是要收费的;
4、搭配前端的 loganalyzer 等软件,可以轻松实现图形化管理和查询日志。

一、Rsyslog 服务器的安装与配置

1、清空 iptabels, 关闭 selinux 避免安装过中报错

清空 iptables

iptables -F
service iptables save

关闭 selinux

setenforce 0
vim /etc/selinux/conifg

将配置文件中的
SELINUX=enforcing
修改为:
SELINUX=disabled

2、yum 安装 LAMP 环境及 rsyslog、rsyslog mysql 支持模块
yum install -y mysql-server mysql-devel libcurl-devel net-snmp-devel php php-gd php-xml php-mysql httpd rsyslog rsyslog-mysql
3、设置 mysqld 和 httpd 开机启动,并启动服务
chkconfig mysqld on
chkconfig httpd on

service mysqld start
service httpd start
4、修改 mysql 的 root 密码
mysqladmin -u root password "你的密码"

修改密码后就可以使用如下命令登录 mysql

mysql -u root -p
5、修改 mysql 的配置文件,支持 uft8

因为通过 yum 安装的 mysql 是不支持 uft8 的,在收集 Windows 服务器的日志和某些支持中文的设备的情况下,收集到的日志无法正确显示,因此需要修改 mysql 配置文件支持中文显示。

配置文件全文如下:

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
character_set_server=utf8
init_connect='SET NAMES utf8'
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysql.server]
default-character-set=utf8

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
default-character-set=utf8

[client]
default-character-set=utf8

重启 mysqld 服务

service mysqld restart
6、导入 Rsyslog 数据库到 mysql

Rsyslog 的 mysql 数据库默认文件是:

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

在 rsyslog-mysql 相应版本的文件夹中
你可以使用下列命令中查询到:

echo  $(rpm -ql rsyslog-mysql | grep sql$)

使用如下命令将文件导入到 mysql:

mysql -u root -p < $(rpm -ql rsyslog-mysql | grep sql$) 

随后输入你在第 3 步中设置的 mysql 密码就可以导入数据库了,数据库名为:Syslog

7、设置 Rsyslog 数据库的字符集

上一步导入的数据库只有二个表: SystemEvents 和 SystemEventsProperties
Syslog 数据库及这二个表的默认字符集也不是 uft8,需要进行修改

# 修改 Syslog 数据库的字符集 
mysql> ALTER DATABASE `Syslog` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

# 修改相应数据表的字符集 
mysql> alter table SystemEvents  default character set =utf8;

mysql> alter table SystemEventsPorperties  default character set =utf8;

查看修改后的效果:

# 查看数据库的字符集设置 
mysql> show variables like 'character%';

# 查看 Systlog 数据库所有表的字符集设置 
mysql> use Syslog;
mysql> show table status from Syslog\G;
8、创建 Rsyslog 数据库用户

登录 mysql 创建 Rsyslog 的数据库用户 logger

# 登录 mysql
mysql -u root -p

# 创建用户 
mysql> grant all privileges on Syslog.* to 'rsyslog'@'localhost' identified by '147258'; 
mysql> flush privileges; 
mysql> exit;
9、修改 rsyslog 配置文件
vim /etc/sysconfig/rsyslog

配置文件如下:

# Options for rsyslogd
# Syslogd options are deprecated since rsyslog v3.
# If you want to use them, switch to compatibility mode 2 by "-c 2"
# See rsyslogd(8) for more details
SYSLOGD_OPTIONS="-c 2 -r -x -m 180"
KLOGD_OPTIONS="-x"

各参数详解:
-c 指定运行兼容模式。
-r 指定监听端口。默认 514
-x 在接收客户端消息时,禁用 DNS 查找。需和 - r 参数配合使用。
-m 标记时间戳。单位是分钟,为 0 时,表示禁用该功能。

10、配置服务端支持 rsyslog-mysql 模块,并开启 UDP 服务端口
vim /etc/rsyslog.conf

在 #### MODULES #### 下添加这两行

$ModLoad ommysql.so
*.* :ommysql:localhost,Syslog,rsyslog,147258

注:localhost 表示本地主机,Syslog 为数据库名,rsyslog 为数据库的用户,147258 为该用户密码

取消下面三行注释

$ModLoad immark
$ModLoad imudp
$UDPServerRun 514

重启 rsyslog 服务:

service rsyslog restart
11、添加服务端 iptables 防火墙规则

如果服务端有需要配置 iptables 规则的话,执行如下命令开放 TCP 和 UDP 的 514 端口

iptables -I INPUT -p tcp --dport 514 -j ACCEPT

iptables -I INPUT -p udp --dport 514 -j ACCEPT

service iptables save

二、Loganalyzer 安装与配置

1、下载 Loganalyzer

从 Loganalyzer 官网下载安装文件到 /usr/local/src 目录下
最新版本是 4.1.3 稳定版本是:3.6.6

2、解压文件并复制源代码到 apache 的 loganalyzer 目录
cd /usr/local/src
tar -zxvf loganalyzer-4.1.3.tar.gz
cd loganalyzer-4.1.3
mkdir -p /var/www/html/loganalyzer/
cp -r src/* /var/www/html/loganalyzer/
cp -r contrib/* /var/www/html/loganalyzer/
3、生成空的配置文件并设置权限
cd /var/www/html/loganalyzer/
touch config.php
chmod 666 config.php
4、修改 php 环境

为配合 LogAnalyzer 对 php 环境的要求,请修改 /etc/php.ini 中的内容为:

memory_limit = 512M  
max_execution_time = 120
5、创建 apache 日志目录
# mkdir -p  /var/log/httpd/loganalyzer
6、配置 apache

这部分,请根据 apache 实际情况操作。以默认系统为例,虚拟主机配置文件都放在 /etc/httpd/conf/httpd.conf

配置文件修改如下:

Listen 80
ServerAdmin root@localhost
ServerName log_server:80
DocumentRoot "/var/www/html/loganalyzer"
<Directory />
    Options FollowSymLinks
    AllowOverride All
</Directory>
<Directory "/var/www/html/loganalyzer">
    Options Indexes FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

ErrorLog /var/log/httpd/loganalyzer/error.log
LogLevel warn
CustomLog /var/log/httpd/loganalyzer/access_log combined
ServerSignature On

重启 httpd 服务

service httpd restart
7、Loganalyzer 初始化配置

在浏览器输入网址,进入安装向导
访问 http://serverip:80
一共 8 个步骤,这里只将需要修改的步骤列出,其余只需要”Next”即可

第 3 步:”Enable User Database”选择“Yes”;

CentOS 6.7 搭建 Rsyslog 日志服务器

第 4、5 二个步骤是指定用户数据库信息(数据库指定为:Syslog)和创建用户

第 7 步:”Source Type”选择“MYSQL Native”并在下载配置数据库信息

CentOS 6.7 搭建 Rsyslog 日志服务器 

第 8 步 Finish 后,完成安装就可登录并查看日志信息了。

三、Linux 客户端配置

CentOS 默认都会安装 rsyslog。

1、确认 rsyslog 服务是否启动
chkconfig | grep rsyslog

如果没有设置为开机启动,执行如下命令:

chkconfig rsyslog on
service rsyslog start
2、配置 Rsyslog 客户端发送本地日志到服务端
vim /etc/rsyslog.conf

在末行添加一行:

*.* @192.168.7.201

注:192.168.7.201 为日志服务器端 IP 地址

3、重启 Rsyslog 服务
service rsyslog restart

这时在服务端刷新就可以看到相关日志信息了。

四、Windows 客户端配置

Loganalyzer 官网推荐在 Winodws 上使用 Winsyslog 来实现日志数据的收集和发送,但是这个软件是收费的。这里用一个开源的软件 Evtsys,但这个软件也有个问题无法在 Server 2012 以上的系统中使用,在 Server 2008 中是没有问题的

Evtsy 官网由于是布署在 google 服务器上的因此现在无法访问,可以到网上去搜索下载。
下载后的文件解压将里面的 evtsys.exe 文件放到 c:\windows\System32 目录下,然后运行 cmd 执行下面的命令:

evtsys -i -s 10 -h log-server-ip -p 514 
net start evtsys

只要看到最后的安装成功即可。
以下附上命令的详细参数

Version: 4.4 (32-bit) 
Usage: evtsys.exe -i|-u|-d [-h host] [-b host] [-f facility] [-p port] 
       [-s minutes] [-l level] [-n] 
  -i           Install service 
  -u           Uninstall service 
  -d           Debug: run as console program 
  -h host      Name of log host 
  -b host      Name of secondary log host (optional) 
  -f facility  Facility level of syslog message 
  -l level     Minimum level to send to syslog.\n", stderr); 
           0=All/Verbose, 1=Critical, 2=Error, 3=Warning, 4=Info 
  -n           Include only those events specified in the config file. 
  -p port      Port number of syslogd 
  -q bool      Query the Dhcp server to obtain the syslog/port to log to 
               (0/1 = disable/enable) 
  -s minutes   Optional interval between status messages. 0 = Disabled 

Default port: 514 
Default facility: daemon 
Default status interval: 0 
Host (-h) required if installing. 

这时在刷新 Loganalyzer 就可以看到相关日志了.

————————————– 分割线 ————————————–

CentOS 上配置 rsyslog 客户端用以远程记录日志  http://www.linuxidc.com/Linux/2015-02/112989.htm

CentOS 6.3 下利用 Rsyslog+LogAnalyzer+MySQL 部署日志服务器 http://www.linuxidc.com/Linux/2013-07/86956.htm

使用 rsyslog mysql 和 logAnalyzer 的日志服务器 http://www.linuxidc.com/Linux/2012-09/70717.htm

Rsyslog 配置及使用教程  http://www.linuxidc.com/Linux/2015-02/113614.htm

RHEL5.4 部署中央日志服务器之 rsyslog+loganalyzer  http://www.linuxidc.com/Linux/2010-12/30801.htm

————————————– 分割线 ————————————–

Rsyslog 的详细介绍 :请点这里
Rsyslog 的下载地址 :请点这里

本文永久更新链接地址 :http://www.linuxidc.com/Linux/2016-06/132418.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计6462字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19351
评论数
4
阅读量
7995576
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸

一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸

一句话生成拓扑图!AI+Draw.io 封神开源组合,工具让你的效率爆炸 前言 作为天天跟架构图、拓扑图死磕的...
飞牛NAS玩转Frpc并且配置,随时随地直连你的私有云

飞牛NAS玩转Frpc并且配置,随时随地直连你的私有云

飞牛 NAS 玩转 Frpc 并且配置,随时随地直连你的私有云 大家好,我是星哥,最近在玩飞牛 NAS。 在数...
星哥带你玩飞牛NAS硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话?

星哥带你玩飞牛NAS硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话?

星哥带你玩飞牛 NAS 硬件 01:捡垃圾的最爱双盘,暴风二期矿渣为何成不老神话? 前言 在选择 NAS 用预...
如何免费使用强大的Nano Banana Pro?附赠邪修的用法

如何免费使用强大的Nano Banana Pro?附赠邪修的用法

如何免费使用强大的 Nano Banana Pro?附赠邪修的用法 前言 大家好,我是星哥,今天来介绍谷歌的 ...
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
免费无广告!这款跨平台AI RSS阅读器,拯救你的信息焦虑

免费无广告!这款跨平台AI RSS阅读器,拯救你的信息焦虑

  免费无广告!这款跨平台 AI RSS 阅读器,拯救你的信息焦虑 在算法推荐主导信息流的时代,我们...
恶意团伙利用 PHP-FPM 未授权访问漏洞发起大规模攻击

恶意团伙利用 PHP-FPM 未授权访问漏洞发起大规模攻击

恶意团伙利用 PHP-FPM 未授权访问漏洞发起大规模攻击 PHP-FPM(FastCGl Process M...
如何安装2026年最强个人助理ClawdBot、完整安装教程

如何安装2026年最强个人助理ClawdBot、完整安装教程

如何安装 2026 年最强个人助理 ClawdBot、完整安装教程 一、前言 学不完,根本学不完!近期,一款名...
星哥带你玩飞牛NAS-14:解锁公网自由!Lucky功能工具安装使用保姆级教程

星哥带你玩飞牛NAS-14:解锁公网自由!Lucky功能工具安装使用保姆级教程

星哥带你玩飞牛 NAS-14:解锁公网自由!Lucky 功能工具安装使用保姆级教程 作为 NAS 玩家,咱们最...
星哥带你玩飞牛 NAS-9:全能网盘搜索工具 13 种云盘一键搞定!

星哥带你玩飞牛 NAS-9:全能网盘搜索工具 13 种云盘一键搞定!

星哥带你玩飞牛 NAS-9:全能网盘搜索工具 13 种云盘一键搞定! 前言 作为 NAS 玩家,你是否总被这些...