linux命令审计 linux审计日志哪里看

Linux系统上记录MYSQL操作的审计日志根据笔者上一篇文章—Linux系统上记录用户操作的审计日志。本文来利用相同的方法记录MYSQL操作的审计日志 。
使用用mysql工具连接MySQL server的所有操作会默认记录到~/.mysql_history文件中,这个文件会把所有操作记录下来,包括创建用户和修改用户的明文密码,这在生产系统上是不安全的 。如果不想保存,仅仅删除是不行的(文件不存在会再建立) , 要直接将其软连接到垃圾箱 。
ln-s/dev/null~/.mysql_history
利用上一篇文章相同的方法记录MYSQL操作的审计日志,是因为mysql工具本身就是有一个shell, 每次mysql连接退出后,都会把此次操作的信息记录到~/.mysql_history文件中 。那么可以重新定义MYSQL_HISTFILE环境变量来保存mysql日志 。
先看置于/etc/profile.d目录下的环境变量的脚本mysql_history.sh,和loginlog类似 。
在测试时,发现平时使用的普通用户在操作mysql后无法记录,而root用户(平时没有操作过mysql)可以记录成功 。后来在在~/.mysql_history文件找到了操作记录,估计是这个文件还存在的原因,删除后才记录到新的MYSQL_HISTFILE定义的路径 。
和loginlog一样,需要定期删除过期日志 , 以下脚本置于/etc/cron.weekly 目录下 。
delete_time=15
find /opt/mysqllog/-mtime$delete_time -name '*.log' -exec rm -r {} \;
但是相比于loginlog , mysqllog有两点暂时没有解决 。
1、定义最大的记录条数history.maxSize不知在哪定义,my.cnf?
2、每一条命令的时间记录添加 。
Linux下记录所有用户的操作命令,以方便后期审计再后面追加:
保存退出后 , 执行 source /etc/profile 让配置生效 。
所有操作命令记录存放在/var/log/cmd/{用户}/目录下,即使是同一个终端几个不同的窗口,在该窗口退出或关闭时,该用户目录下会生产一个文件,多个窗口会生产多个文件,最后只要查看这些文件内容 , 就可以看出历史操作了 。
本文转自:
ELK linux主机操作命令审计 PROMPT_COMMAND环境变量的作用是,在每一次执行命令之前都会执行此环境变量 。
审计的原理是:
linux服务器安全审计怎么弄材料:
Linux审计系统auditd 套件
步骤:
安装 auditd
REL/centos默认已经安装了此套件,如果你使用ubuntu server,则要手工安装它:
sudo apt-get install auditd
它包括以下内容:
auditctl : 即时控制审计守护进程的行为的工具,比如如添加规则等等 。
/etc/audit/audit.rules : 记录审计规则的文件 。
aureport : 查看和生成审计报告的工具 。
ausearch : 查找审计事件的工具
auditspd : 转发事件通知给其他应用程序,而不是写入到审计日志文件中 。
autrace : 一个用于跟踪进程的命令 。
/etc/audit/auditd.conf : auditd工具的配置文件 。
Audit 文件和目录访问审计
首次安装 auditd 后, 审计规则是空的 。可以用 sudo auditctl -l 查看规则 。文件审计用于保护敏感的文件 , 如保存系统用户名密码的passwd文件,文件访问审计方法:
sudo auditctl -w /etc/passwd -p rwxa
-w path : 指定要监控的路径 , 上面的命令指定了监控的文件路径 /etc/passwd
-p : 指定触发审计的文件/目录的访问权限
rwxa : 指定的触发条件 , r 读取权限,w 写入权限,x 执行权限,a 属性(attr)
目录进行审计和文件审计相似,方法如下:
$ sudo auditctl -w /production/
以上命令对/production目录进行保护 。
3. 查看审计日志
添加规则后,我们可以查看 auditd 的日志 。使用 ausearch 工具可以查看auditd日志 。
sudo ausearch -f /etc/passwd
-f 设定ausearch 调出 /etc/passwd文件的审计内容
4. 查看审计报告
以上命令返回log如下:
time-Mon Dec 22 09:39:16 2016
type=PATH msg=audit(1419215956.471:194): item=0 name="/etc/passwd"
inode=142512 dev=08:01 mode=0100644 ouid=0 ogid=0 rdev=00:00 nametype=NORMAL
type=CWD msg=audit(1419215956.471:194): cwd="/home/somebody"
type=SYSCALL msg=audit(1419215956.471:194): arch=40000003 syscall=5
success=yes exit=3 a0=b779694b a1=80000 a2=1b6 a3=b8776aa8 items=1 ppid=2090 pid=2231 auid=4294967295 uid=1000 gid=1000 euid=0 suid=0 fsuid=0 egid=1000 sgid=1000 fsgid=1000 tty=pts0 ses=4294967295
comm="sudo" exe="/usr/bin/sudo" key=(null)
time : 审计时间 。
name : 审计对象
cwd : 当前路径
syscall : 相关的系统调用
auid : 审计用户ID
uid 和 gid : 访问文件的用户ID和用户组ID
comm : 用户访问文件的命令
exe : 上面命令的可执行文件路径
以上审计日志显示文件未被改动 。
Linux自带的审计功能Linux自带的script命令,可以记录终端的输出,用来完成简单的审计功能
这样用户登陆后执行的操作都会记录到/mnt/log/script/*.log(目录自己根据服务器目录定义)里,这里把用户ID 大于1000的都记录下操作 。
【linux命令审计 linux审计日志哪里看】关于linux命令审计和linux审计日志哪里看的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息 , 记得收藏关注本站 。

    推荐阅读