Добрый день! Столкнулся с задачей мониторинга файловой активности (чтение, запись, создание, удаление и т.д.) одного из локальных каталогов сервера. А именно нужно читать лог за определенный период и выдергивать из него скриптом информацию: имя пользователя, дата, время, исполненная команда. Пытаюсь использовать auditd. В audit.rules прописано правило
-w /access -p rwxa -k "rule#1"
type=USER_CMD msg=audit(07/21/2016 16:33:11.830:463) : user pid=31976 uid=h1 auid=h1 ses=31 msg='cwd=/home/h1 cmd=touch /access/123++++++++ terminal=pts/1 res=success'
type=PATH msg=audit(07/21/2016 16:34:39.130:492) : item=1 name=/access/123333333----- inode=664164 dev=fd:00 mode=file,644 ouid=root ogid=root rdev=00:00 nametype=CREATE
type=PATH msg=audit(07/21/2016 16:34:39.130:492) : item=0 name=/access/ inode=663994 dev=fd:00 mode=dir,755 ouid=root ogid=root rdev=00:00 nametype=PARENT
Можно ли как-то привести лог к единому виду? Пробовал прописывать в правиле -F uid>=0, но ничего не меняется. Дополнительные утилиты аудита типа aureport не дают такой полной информации, в частности о выполненной команде. Может быть, есть более простые способы получения подобных логов?
P.S. Да, еще нужен IP-адрес, с которого произведены изменения. В случае с рядовым пользователем он также легко грепается по номеру сессии.