Dodaj ten wiersz do swojej konfiguracji pam odpowiedzialnej za logowanie (jego uwierzytelnianie systemowe w dystrybucjach opartych na redhat)
session required pam_tty_audit.so enable=*
Aby dowiedzieć się, co zostało zrobione, możesz użyć.
ausearch -ts <some_timestamp> -m tty -i
Daje to taki wynik:
type=TTY msg=audit(11/30/2011 15:38:39.178:12763684) : tty pid=32377 uid=root
auid=matthew major=136 minor=2 comm=bash data=<up>,<ret>
Jedynym minusem jest to, że może być nieco trudny do odczytania, ale jest znacznie lepszy niż większość proponowanych rozwiązań, ponieważ teoretycznie można go wykorzystać do zarejestrowania całej sesji, brodawek i wszystkich.
Edycja: Aha, możesz użyć aureportu, aby wygenerować listę, która może być bardziej pomocna.
# aureport --tty
...
12. 11/30/2011 15:50:54 12764042 501 ? 4294967295 bash "d",<^D>
13. 11/30/2011 15:52:30 12764112 501 ? 4294967295 bash "aureport --ty",<ret>
14. 11/30/2011 15:52:31 12764114 501 ? 4294967295 bash <up>,<left>,<left>,"t",<ret>