rsyslog同步history日志

前言


  由于公司业务是由公司内部开人员及外包团队共同开发,所以需要使用rsyslog对history日志做收集、审计。虽然搭建及配置非常简单,但是在日常运维工作中很实用,所以记录下,方便日后快速搭建。如果有错误,望大神指正。

syslog简介


syslog是Linux系统默认的日志守护进程。默认的syslog配置文件是/etc/syslog.conf文件。程序,守护进程和内核提供了访问系统的日志信息。因此,任何希望生成日志信息的程序都可以向 syslog 接口呼叫生成该信息。

而rsyslog作为syslog的代替,功能多,性能好。

rsyslog的新功能:


rsyslog是一个加强版的syslog,具有各种各样的新功能,典型的有:

    1、直接将日志写入到数据库。

    2、日志队列(内存队列和磁盘队列)。

    3、灵活的模板机制,可以得到多种输出格式。

    4、插件式结构,多种多样的输入、输出模块。

    5、可以把日志存放在Mysql ,PostgreSQL,Oracle等数据库中

PS:好吧以上内容其实都是大部分引用了别人的blog对rsyslog介绍,这边我主要讲下如何快速使用rsyslog及收集history日志。

部署环境

系统:Centos 6.4 X86_64

应用:rsyslogd 5.8.10

rsyslog服务端

    IP:10.1.4.180

rsyslog客户端

    IP:10.1.4.181

部署及配置

rsyslog部署

因系统自带rsyslog所以不需要安装,如果系统没带的话且能上网,则直接yum install rsyslog -y安装。

server端rsyslog.conf配置

vim /etc/rsyslog.conf

去掉以下项注释

$ModLoad imuxsock # provides support for local system logging (e.g. via logger command)
$ModLoad imklog   # provides kernel logging support (previously done by rklogd)
$ModLoad imudp            #开启支持upd的模块
$UDPServerRun 514         #允许接收udp 514的端口传来的日志
ModLoad imtcp             #开启支持tcp的模块
$InputTCPServerRun 514    #允许接收tcp 514的端口传来的日志

在最后添加以下行

local5.* /var/log/history.log  #将local类型5的日志存放到/var/log/history.log下

或在最后添加以下行

$template HistoryiLogFile, "/var/log/history/%HOSTNAME%.log" #以主机名为日志模板,模板名称为HistoryiLogFile
if $syslogfacility-text == 'local5' then -?HistoryiLogFile #接收local类型5的日志

重启rsyslog

service rsyslog restart

client端配置

vim /etc/rsyslog.conf

在最后添加以下行

local5.*  @10.1.4.180 #local类型5的日志通过UDP传输给10.1.4.180

vim /etc/bashrc

在最后添加

用来实时输出history日志

HISTFILESIZE=2000
HISTSIZE=2000
HISTTIMEFORMAT="%Y%m%d-%H%M%S: "
export HISTTIMEFORMAT
export PROMPT_COMMAND='{ command=$(history 1 | { read x y; echo $y; }); logger -p local5.notice -t bash -i "user=$USER,ppid=$PPID,from=$SSH_CLIENT,pwd=$PWD,command:$command"; }'

然后使其生效

source /etc/bashrc

重启rsyslog

service rsyslog restart

在server端tail -f var/log/history.log然后在客户端随便执行一条命令,观察server端是否有history日志生成。


小记:

   由于学习马哥视频的进度较慢,所以暂时先上一篇之前做的东西做为blog开篇,顺便吐槽下blog编辑样式问题,不知道为什么辛辛苦苦编辑的样式最后生成的就是一坨shit,跟我自己编辑的完全不一样,而且保存草稿就会更改样式,试过N遍都不行,rsyslog同步history日志,算了就酱~


参考文档

搭建

    http://showerlee.blog.51cto.com/2047005/1231160

    http://litaotao.blog.51cto.com/6224470/1283871

配置

    http://my.oschina.net/duxuefeng/blog/317570

    http://www.linuxyw.com/a/yunweijingyan/xitongguanli/20130529/492.html

    http://blog.carlos-spitzer.com/2013/03/21/how-to-record-users-activity-in-the-whole-system-and-centralize-logs-with-rsyslog/

原创文章,作者:sxzq46,如若转载,请注明出处:http://www.178linux.com/2525

(1)
sxzq46sxzq46
上一篇 2015-04-03 14:25
下一篇 2015-04-03 15:13

相关推荐

  • bash脚本进阶

     shell脚本流程控制     1.if语句 单分支: if 判断条件;  then   双分支: if 判断条件; then     条件为真的分支代码 else     条…

    Linux干货 2016-08-21
  • Linux系统结构 详解

    Linux系统一般有4个主要部分: 内核、shell、文件系统和应用程序。内核、shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序、管理文件并使用系统。部分层次结构如图1-1所示。  1. linux内核         内核是操作系统的核心,具有很多最基本功能,它负责管理系…

    Linux干货 2015-04-13
  • CentOS环境下,ab性能测试功具介绍及使用

    网站性能压力测试是服务器网站性能调优过程中必不可缺少的一环。只有让服务器处在高压情况下,才能真正体现出软件、硬件等各种设置不当所暴露出的问题。 性能测试工具目前最常见的有以下几种:ab、http_load、webbench、siege。 ab是apache自带的压力测试工具。ab非常实用,它不仅可以对apache服务器进行网站访问压力测试,也可以对或其它类型…

    Linux干货 2017-07-22
  • 循环体

    for 变量名in 列表;do 循环体 done 执行机制: 依次将列表中的元素赋值给“变量名”; 每次赋值后即执行一次循环体; 直到列表中的元素耗尽,循环结束 列表生成方式: (1) 直接给出列表 (2) 整数列表: (a) {start..end} (b) $(seq[start [step]] end) (3) 返回列表的命令  &nbsp…

    Linux干货 2016-08-21
  • ​N25第三周作业

    第三周 一、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@zf ~]# who | cut -d " " -f1  | sort | uniq -…

    Linux干货 2016-12-14
  • lvs应用

    练习一:负载均衡一个php应用: 测试是否需要会话保持; 是否需要用到共享存储;    为了检测是否需要会话保持和共享存储,要在两台主机上分别配置LAMP环境;这样就使得两者之间没有了共享存储;负载均衡使用nat模型的wlc算法,并且不使用lvs的长连接选项。数据库故意使用了相同的账号密码来进行安装。 步骤一:配置环境: 使用yum分别安…

    Linux干货 2016-11-11

评论列表(1条)

  • stanley
    stanley 2015-04-03 15:04

    看的出有写作功底,技巧上掌握尚欠火候,可以多学习平台其它优秀博文