Jak mogę wyświetlić historię poleceń innego użytkownika?
Jestem administratorem na moim komputerze. Widzę normalną historię, przeglądając, /home/user_name/.bash_history
ale nie widzę poleceń, user_name
kiedy to robili sudo
.
Czy istnieje sposób wyświetlenia wszystkich poleceń wykonanych przez jednego użytkownika?
linux
administration
command-history
Sean Nguyen
źródło
źródło
Odpowiedzi:
W systemach operacyjnych opartych na Debianie wykonywanie
tail /var/log/auth.log | grep username
powinno daćsudo
historię użytkownika . Nie wierzę, że istnieje sposób na uzyskanie zunifikowanej historii poleceń normalnych poleceń + sudo użytkownika.W systemach operacyjnych opartych na RHEL należy sprawdzić
/var/log/secure
zamiast/var/log/auth.log
.źródło
/var/log/auth.log
/var/log/secure
zamiast tego.Właśnie przetestowałem następujące i działało to jak urok.
źródło
Jeśli użytkownik wydał polecenie jak w
sudo somecommand
, polecenie pojawi się w dzienniku systemowym.Jeśli użytkownik zrodził skorupę z np
sudo -s
,sudo su
,sudo sh
itp, a następnie polecenie może pojawić się w historii użytkownika root, który jest w/root/.bash_history
lub podobny.źródło
# zless /var/log/auth*
jest tu twój przyjaciel. Otwiera nawet spakowane pliki. Możesz przeskakiwać między tymi z:n
przodu lub:p
do tyłu.Alternatywnie możesz użyć
# journalctl -f -l SYSLOG_FACILITY=10
na przykład. Przeczytaj więcej na ten temat na wiki Arch Linuxźródło
użyj poniżej polecenia
jeśli sysdig nie jest zainstalowany , zainstaluj tutaj
źródło
Może ten link ma dla Ciebie wartość: http://www.sudo.ws/pipermail/sudo-users/2000-March/000052.html
Ale powinieneś pamiętać, że nie pozostawianie śladu w bash_history to tylko kwestia uruchomienia polecenia ze spacją itp. Historia jest pomocnikiem, a nie narzędziem do rejestrowania.
Pozdrowienia z Niemiec, Daniel Leschkowski
źródło
Logika dotyczy wielu innych celów.
A jak czytać .sh_history każdego użytkownika z / home / fileystem? Co jeśli są ich tysiące?
Oto skrypt.
źródło