LINUX 操作记录到syslog,并发送到syslog服务器上

首先配置命令记录到syslog中:

在客户端的/etc/bashrc  下添加:

logger -p local3.info  \"`who am i` =======================================  is login \"

export PROMPT_COMMAND=‘{ msg=$(history 1 | { read x y; echo $y; }); logger -p local3.info  \[ $(who am i)\]\# \""${msg}"\"; }‘

logger命令:

为syslog的shell接口命令,有一些参数,这里用了-p,主要是让它记录日志类型和级别。具体用法,请man一下

不知道你想过没有,把命令直接追加到日志文件中,这样是也是可以,但是有两个问题,文件只存储本机上了,可人为删除,

这样syslog不可以把记录传走,还是不安全,这样做是为了配合日志服务器的记录,达到安全性。还可以做监控报警

架构是:syslog-ng   swatch

再配置日志的输出:

上面已经把日志输入到系统的SYSLOG中了,现在目的把日志存储到哪的问题,上面的配置默认是到/var/log/message中的,

下面我更改一下:

1:本地存储:

修改/etc/syslog.conf    #  如果是CentsOS6以上版本,修改/etc/rsyslog.conf

加入

local7.info                 /var/log/user_command.log

上述是指定将local7这个类型的info级别的日志输入到/var/log/user_command.log中,当然还需要去配置回滚问题(这里不讲),这也可以使用*来匹配。这个不用我说了

也可以将日志传到别的地方,本次就是这样配置的,加入:

local7.info                        @log.server.com

下面是输出结果示例:

Nov  7 15:31:11 x.x.x.x root: [ root pts/0 2013-03-18 10:44 (10.57.41.86)]# source /etc/bashrc

Nov  7 15:31:20 x.x.x.x root: [ root pts/0 2013-03-18 10:44 (10.57.41.86)]# source /etc/bashrc

Nov  7 15:31:20 x.x.x.x root: [ root pts/0 2013-03-18 10:44 (10.57.41.86)]# echo poll

解释 :因客户端的与服务端的时间不一样,所以这里看到两个不一样的时间,这个也一个很好的参考,还是保留着吧,

这里能看到的内容有:目标IP,目标用户,目标时间,目标登录IP,所执行过的命令

原文地址:https://www.cnblogs.com/bonelee/p/9477494.html

时间: 2024-10-12 20:14:03

LINUX 操作记录到syslog,并发送到syslog服务器上的相关文章

linux把日志发送到日志服务器上

上一篇我们介绍了rsyslog配置文件.在现网环境中,无论是为了把日志存储更长的时间还是为了分析日志的方便性,我们通常会把日志发送到日志服务器或是日志收集分析系统上.接下来我们介绍一下如何配置. 实验环境: RHEL 7 实验目的: 我们把client上info级别以上的所有日志都发送到日志服务器192.168.202.130上. client: 定义info级别日志,并发送到日志服务器上,在下列位置插入一行 vim /etc/rsyslog # Save boot messages also 

将linux操作记录到 /var/log/message 中

vim rsys.sh cat >> /etc/profile <<EOF 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 local1.notice -t bash -i

Linux下IP SAN共享存储操作记录

一.简单介绍SAN,即存储区域网络(storage area network and SAN protocols),它是一种高速网络实现计算机与存储系统之间的数据传输.常见的分类是FC-SAN和IP-SAN两种.FC-SAN通过光纤通道协议转发scsi协议:IP-SAN通过TCP协议转发scsi协议,也就是IP 地址.存储设备是指一台或多台用以存储计算机数据的磁盘设备,通常指磁盘阵列,主要厂商EMC.日立等. iSCSI(internet SCSI)技术由IBM公司研究开发,是一个供硬件设备使用

Linux下磁盘分区、挂载、卸载操作记录

Linux下磁盘分区.挂载.卸载操作记录. 操作环境:CentOS release 6.5 (Final) Last login: Wed Oct 26 17:25:27 2016 from 118.230.194.76 [[email protected] ~]# [[email protected] ~]# fdisk -l Disk /dev/sda: 536.9 GB, 536870912000 bytes 255 heads, 63 sectors/track, 65270 cylin

Linux下修改系统编码的操作记录

Linux系统安装后,发现中文显示乱码.因为系统编码为en_US.UTF-8,应改为支持中文的编码(即zh_CN.UTF-8)操作记录如下:1)检查linux的系统编码检查linux的系统编码,确定系统是否支持中文.在linux系统的终端中输入命令:locale,就会看到打印出的系统编码信息.[[email protected] ~]# localeLANG=en_US.UTF-8                        LC_CTYPE="en_US.UTF-8"LC_NUME

Linux学习记录--文件IO操作相关系统编程

文件IO操作相关系统编程 这里主要说两套IO操作接口,分别是: POSIX标准 read|write接口,函数定义在#include<unistd.h> ISO C标准 fread|fwrite接口,函数定义在#include<stdio.h> 有书上说POSIX标准与ISO C标准的区别在于文件读写是否带缓冲区,我则不是很认同,因此POSIX标准下的IO操作也是带缓冲区的,至于这两个标准下的IO性能谁更加好则不一定,因为这和缓冲区的大小,以及用户逻辑有很大关系. POSIX标准

在Linux下记录所有用户的登录和操作日志

一般我们可以用history命令来查看用户的操作记录,但是这个命令不能记录是哪个用户登录操作的,也不能记录详细的操作时间,且不完整:所以误操作而造成重要的数据丢失,就很难查到是谁操作的. 在这里我们通过脚本代码来实现记录所以用户的登录操作日志: 编辑/etc/profile文件,在文件末尾加入下面代码: 首先加上一行,来记录实时的 export HISTTIMEFORMAT="%F %T `who am i|awk '{print $1}'` as `whoami` : " 实时的有缺

linux下监控用户的操作记录

想知道用户登陆系统后都操作了什么,怎么办? 别急,linux下有一个script工具,专门记录终端会话中所有输入输出结果,并存放到指定文件中. 先看看怎么录制吧! 1.创建日志存放目录 # mkdir /opt/operation_log # chmod 777 -R /opt/operation_log 2.设置用户登陆后自动录制 # vi /etc/profile   #末尾追加一下内容 if [ $UID -ge 500 ]; then    exec script -t 2>/opt/o

Linux 记录所有用户的操作记录

随着时代的发展,我们生活中了解计算机的越来越多,黑客也越来越多:为了安全起见,我们需要记录所用户的登录及操作日志:我们需要清楚服务器上每个用户登录后都做了哪些操作,我们需要记录下每个用户的操作命令. 下面的内容设置可以实现在Linux下所有用户,不管是远程还是本地登陆,在本机的所有操作都会记录下来,并生成包含"用户/IP/时间/操作指令"的文件存放在指定位置. 1.添加以下信息到/etc/profile文件里 ################## 记录信息开始 ############