linux审计日志
A. linux审计日志可以存多久
Linux的日志文件根据需要,你可以一直保存都可以。
这取决于你的硬盘大小和是否设置定期清除一定日期之前的日志文件。
B. 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、每一条命令的时间记录添加。
C. Linux的audit.log日志审计怎么断定被黑客入侵了
这里首先介绍auditctl的应用,具体使用指南查看man auditctl。auditctl的man 描述说明这个工具主要是用来控制audit系统行为,获取audit系统状态,添加或者删除audit系统的规则。控制audit系统行为和获取audit系统状态参数:
-s 或者auditd 状态 auditctl -s 显示:AUDIT_STATUS: enabled=1 flag=1 pid=2792 rate_limit=0 backlog_limit=320 lost=0 backlog=0
D. 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 /proction/
以上命令对/proction目录进行保护。
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=0name="/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=40000003syscall=5
success=yes exit=3 a0=b779694b a1=80000 a2=1b6 a3=b8776aa8 items=1 ppid=2090 pid=2231auid=4294967295 uid=1000 gid=1000euid=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 :上面命令的可执行文件路径
以上审计日志显示文件未被改动。
E. Linux服务器主机操作系统是否开启日志审计策略:
内核编译时,一般打开NET选项就打开AUDIT选项了。 在系统中查看audit是否打开,root 用户执行: service auditd status
F. linux操作系统怎么开启日志审计功能
对于Linux操作审计,当前主要有两种形式。
一种是,通过收取linux操作系统上的日志,来进行审计。优点是全面,内容是零散,缺乏直观性,一般需要专业的软件来收集和呈现,同时由于容易被删除,可能导致关键审计信息缺失问题,以及由于共享账号问题,导致无法定位到人。
另一种是,通过碉堡堡垒机软件来实现审计。优点是全面直观,可以关联到人,确定是只能对远程运维操作进行审计,无法对直接登录操作进行审计。