Как зарегистрировать все команды, запущенные в Linux, включая их аргументы (параметры)?

Как я могу регистрировать все команды, выполняемые в Linux, включая их аргументы командной строки (параметры)?

Так, например, если кто-то запускает:

rm -rf /tmp/foo

Я бы увидел запись в журнале, похожую на эту:

2016-01-01 18:00:00 user=bob command='rm -rf /tmp/foo'

И не только это:

2016-01-01 18:00:00 user=bob command='rm'

Я только смог найти применение auditd которые не регистрируют аргументы командной строки (параметры). Есть ли способ правильно настроить auditd записать это? Похоже, во FreeBSD есть способ установить argv политики, но этого, похоже, нет в производных Debian.

2 ответа

Вы пытались отправить историю в системный журнал?

Один из многих примеров

https://jablonskis.org/2011/howto-log-bash-history-to-syslog/index.html

Auditd действительно аккуратен:) При правильной конфигурации вы можете видеть все эти события по своему усмотрению (я приведу пример с одного из моих серверов). Итак, как вы можете видеть, в моем выводе ausearch вы можете увидеть, что /bin Был вызван /rm, а также файлы, которые были удалены (я изменил реальные пути на /tmp/X* - и, как вы можете видеть, он принимает все аргументы от a1 до a8). Если это то, что вы хотите, я могу дать вам некоторые из моих конфигов, а также некоторые руководства, которые я использовал для настройки audd.

time->Thu May 28 11:35:01 2015

type=PATH msg=audit(1432812901.638:4583880): item=1 name=(null) inode=57348 dev=08:02 mode=0100755 ouid=0 ogid=0 rdev=00:00

type=PATH msg=audit(1432812901.638:4583880): item=0 name="/bin/rm" inode=8252 dev=08:02 mode=0100755 ouid=0 ogid=0 rdev=00:00

type=CWD msg=audit(1432812901.638:4583880):  cwd="XXX"

type=EXECVE msg=audit(1432812901.638:4583880): argc=9 a0="rm" a1="-r" a2="/tmp/*" a3="/tmp/XX" a4="/tmp/XXX" a5="/tmp/XXXX" a6="/tmp/XXXXX" a7="/tmp/XXXXXXX" a8="/tmp/XXXXXXX"

type=SYSCALL msg=audit(1432812901.638:4583880): arch=c000003e syscall=59 success=yes exit=0 a0=1d27830 a1=1d27e20 a2=1d26870 a3=7fff70cfb2d0 items=2 ppid=10230 pid=10231 auid=1105 uid=1105 gid=1005 euid=1105 suid=1105 fsuid=1105 egid=1005 sgid=1005 fsgid=1005 tty=(none) ses=35220 comm="rm" exe="/bin/rm" key=(null)
Другие вопросы по тегам