Детально про команди sudo, виконані всіма користувачами


10

З якого журналу я можу отримати детальну інформацію про команди sudo, виконані будь-яким користувачем. Він повинен містити робочий каталог, команду, користувача. Буде корисно, якщо ви зможете надати мені сценарій оболонки для цього

Відповіді:


23

Залежно від вашого дистрибутива; просто:

$ sudo grep sudo /var/log/secure

або

$ sudo grep sudo /var/log/auth.log

що дає:

Nov 14 09:07:31 vm1 sudo: pam_unix(sudo:auth): authentication failure; logname=gareth uid=1000 euid=0 tty=/dev/pts/19 ruser=gareth rhost=  user=gareth
Nov 14 09:07:37 vm1 sudo: gareth : TTY=pts/19 ; PWD=/home/gareth ; USER=root ; COMMAND=/bin/yum update
Nov 14 09:07:53 vm1 sudo: gareth : TTY=pts/19 ; PWD=/home/gareth ; USER=root ; COMMAND=/bin/grep sudo /var/log/secure

Користувач, який виконує команду, знаходиться після sudo:- garethу цьому випадку.

PWD - це каталог.

USER- це користувач, який garethпрацює як - rootу цьому прикладі.

COMMAND команда бігла.

Тому у наведеному вище прикладі garethвикористовували sudoдля запуску, yum updateа потім запускали цей приклад. Перед цим він набрав неправильний пароль.

Що стосується новіших систем:

$ sudo journalctl _COMM=sudo

дає дуже подібний вихід.


0

"Фільтр результатів" для рішення Гарета. (для тих, хто прибув за назвою посади, а не описом)

Надає вам чистий список лише команд, які виконуються як sudo, усіма користувачами.

$sudo journalctl _COMM=sudo  | sed -e '/COMMAND/!d' -e 's/.*COMMAND=//' -e 's/.*bin\///'

Обхід, якщо sed недоступний

$sudo journalctl _COMM=sudo | grep COMMAND

Результати C&P на аркушах Google

У комірці B1 C&P ця формула

=arrayformula(REGEXREPLACE(A1:A,".*AND=/usr/bin/(.*)","$1"))
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.