Wyszukiwanie w witrynie

Jak skonfigurować PAM do inspekcji aktywności użytkownika powłoki rejestrującej


To nasza ciągła seria na temat audytu systemu Linux. W czwartej części tego artykułu wyjaśnimy, jak skonfigurować PAM do audytu danych wejściowych Linux TTY (rejestrowanie aktywności użytkownika powłoki). dla konkretnych użytkowników korzystających z narzędzia pam_tty_audit.

Linux PAM (Wtykowe moduły uwierzytelniające) to wysoce elastyczna metoda wdrażania usług uwierzytelniania w aplikacjach i różnych usługach systemowych; wyłonił się z oryginalnego Unix PAM.

Dzieli funkcje uwierzytelniania na cztery główne moduły zarządzania, a mianowicie: moduły konta, moduły uwierzytelniania, moduły haseł i moduły sesji . Szczegółowe wyjaśnienie tych grup zarządzania wykracza poza zakres tego samouczka.

Narzędzie auditd korzysta z modułu pam_tty_audit PAM, aby włączyć lub wyłączyć kontrolę danych wejściowych TTY dla określonych użytkowników. Gdy użytkownik zostanie skonfigurowany do audytu, pam_tty_audit współpracuje z auditd, aby śledzić działania użytkownika na terminalu i, jeśli jest skonfigurowany, rejestruje dokładne naciśnięcia klawiszy przez użytkownika, następnie zapisuje je w pliku /var/log/audit/audit.log.

Konfigurowanie PAM do sprawdzania danych wejściowych TTY użytkownika w systemie Linux

Możesz skonfigurować PAM do kontrolowania danych wejściowych TTY poszczególnych użytkowników w plikach /etc/pam.d/system-auth i /etc /pam.d/password-auth, używając opcji włączenia. Z drugiej strony, zgodnie z oczekiwaniami, wyłączenie wyłącza tę opcję dla określonych użytkowników, w poniższym formacie:

session required pam_tty_audit.so disable=username,username2...  enable=username,username2..

Aby włączyć rejestrowanie rzeczywistych naciśnięć klawiszy użytkownika (w tym spacji, backspaceów, klawiszy Return, klawisza Control, klawisza Delete i innych), dodaj opcję log_passwd wraz z pozostałymi opcjami, korzystając z tego formularza:

session required pam_tty_audit.so disable=username,username2...  enable=username log_passwd

Zanim jednak dokonasz jakichkolwiek konfiguracji, pamiętaj, że:

  • Jak widać w powyższej składni, możesz przekazać wiele nazw użytkowników do opcji włączania lub wyłączania.
  • Każda opcja wyłączania lub włączania zastępuje poprzednią opcję przeciwną, która odpowiada tej samej nazwie użytkownika.
  • Po włączeniu audytu TTY jest on dziedziczony przez wszystkie procesy inicjowane przez zdefiniowanego użytkownika.
  • Jeśli włączone jest rejestrowanie naciśnięć klawiszy, dane wejściowe nie są natychmiast rejestrowane, ponieważ audyt TTY najpierw przechowuje naciśnięcia klawiszy w buforze i zapisuje zawartość bufora w określonych odstępach czasu lub po wylogowaniu się kontrolowanego użytkownika do pliku /var/log /audit/audit.log plik.

Spójrzmy na poniższy przykład, w którym skonfigurujemy pam_tty_audit tak, aby rejestrował działania użytkownika tecmint, w tym naciśnięcia klawiszy, na wszystkich terminalach, podczas gdy wyłączymy kontrolę TTY dla wszystkich pozostałych użytkowników systemu.

Otwórz te dwa następujące pliki konfiguracyjne.

vi /etc/pam.d/system-auth
vi /etc/pam.d/password-auth

Dodaj następujący wiersz do plików konfiguracyjnych.
wymagana sesja pam_tty_audit.so Disable=* Enable=tecmint

Aby przechwycić wszystkie naciśnięcia klawiszy wprowadzone przez użytkownika tecmint, możemy dodać pokazaną opcję log_passwd.

session required pam_tty_audit.so disable=*  enable=tecmint log_passwd

Teraz zapisz i zamknij pliki. Następnie przejrzyj plik dziennika auditd pod kątem wszelkich zarejestrowanych danych wejściowych TTY, korzystając z narzędzia aureport.

aureport --tty

Z powyższych danych wynika, że użytkownik tecmint, którego UID wynosi 1000, użył edytora vi/vim, utworzył katalog o nazwie bin i przeniosłem się do niego, wyczyściłem terminal i tak dalej.

Aby wyszukać dzienniki wejściowe TTY zapisane ze znacznikami czasu równymi określonej godzinie lub późniejszymi, użyj -ts, aby określić datę/godzinę początkową i -te, aby ustawić koniec data/godzina.

Oto kilka przykładów:

aureport --tty -ts 09/25/2017 00:00:00 -te 09/26/2017 23:00:00
aureport --tty -ts this-week

Więcej informacji można znaleźć na stronie podręcznika pam_tty_audit.

man  pam_tty_audit

Sprawdź poniższe przydatne artykuły.

  1. Skonfiguruj „Uwierzytelnianie kluczy SSH bez hasła” za pomocą PuTTY na serwerach Linux
  2. Konfigurowanie uwierzytelniania opartego na LDAP w RHEL/CentOS 7
  3. Jak skonfigurować uwierzytelnianie dwuskładnikowe (Google Authenticator) dla logowania SSH
  4. Logowanie bez hasła SSH za pomocą SSH Keygen w 5 prostych krokach
  5. Jak uruchomić polecenie „sudo” bez podawania hasła w systemie Linux

W tym artykule opisaliśmy, jak skonfigurować PAM do audytu danych wejściowych dla określonych użytkowników w CentOS/RHEL. Jeśli masz jakieś pytania lub dodatkowe pomysły, którymi chcesz się podzielić, skorzystaj z komentarza poniżej.