Konfigurowanie podłączanych modułów uwierzytelniania (PAM) w celu przeprowadzania inspekcji zdarzeń logowania
Ten artykuł zawiera przykładowy proces konfigurowania podłączanych modułów uwierzytelniania (PAM) w celu przeprowadzania inspekcji zdarzeń logowania SSH, Telnet i terminalu w niezmodyfikowanej instalacji systemu Ubuntu 20.04 lub 18.04.
Konfiguracje usługi PAM mogą się różnić między urządzeniami a dystrybucjami systemu Linux.
Aby uzyskać więcej informacji, zobacz Moduł zbierający dane logowania (moduł zbierający oparty na zdarzeniach).
Wymagania wstępne
Przed rozpoczęciem upewnij się, że masz agenta usługi Defender for IoT Micro.
Konfigurowanie usługi PAM wymaga wiedzy technicznej.
Aby uzyskać więcej informacji, zobacz Samouczek: instalowanie mikro agenta usługi Defender dla IoT.
Modyfikowanie konfiguracji usługi PAM w celu raportowania zdarzeń logowania i wylogowania
Ta procedura zawiera przykładowy proces konfigurowania kolekcji pomyślnych zdarzeń logowania.
Nasz przykład jest oparty na niezmodyfikowanej instalacji systemu Ubuntu 20.04 lub 18.04, a kroki opisane w tym procesie mogą się różnić w zależności od systemu.
Znajdź następujące pliki:
/etc/pam.d/sshd
/etc/pam.d/login
Dołącz następujące wiersze na końcu każdego pliku:
// report login session [default=ignore] pam_exec.so type=open_session /usr/libexec/defender_iot_micro_agent/pam/pam_audit.sh 0 // report logout session [default=ignore] pam_exec.so type=close_session /usr/libexec/defender_iot_micro_agent/pam/pam_audit.sh 1
Modyfikowanie konfiguracji usługi PAM w celu zgłaszania niepowodzeń logowania
Ta procedura zawiera przykładowy proces konfigurowania kolekcji nieudanych prób logowania.
Ten przykład w tej procedurze jest oparty na niezmodyfikowanej instalacji systemu Ubuntu 18.04 lub 20.04. Pliki i polecenia wymienione poniżej mogą różnić się w zależności od konfiguracji lub w wyniku modyfikacji.
/etc/pam.d/common-auth
Znajdź plik i poszukaj następujących wierszy:# here are the per-package modules (the "Primary" block) auth [success=1 default=ignore] pam_unix.so nullok_secure # here's the fallback if no module succeeds auth requisite pam_deny.so
Ta sekcja uwierzytelnia się za pośrednictwem modułu
pam_unix.so
. W przypadku niepowodzenia uwierzytelniania ta sekcja kontynuuje działanie modułupam_deny.so
, aby zapobiec dostępowi.Zastąp wskazane wiersze kodu następującym kodem:
# here are the per-package modules (the "Primary" block) auth [success=1 default=ignore] pam_unix.so nullok_secure auth [success=1 default=ignore] pam_exec.so quiet /usr/libexec/defender_iot_micro_agent/pam/pam_audit.sh 2 auth [success=1 default=ignore] pam_echo.so # here's the fallback if no module succeeds auth requisite pam_deny.so
W tej zmodyfikowanej sekcji usługa PAM pomija jeden moduł do modułu
pam_echo.so
, a następnie pomijapam_deny.so
moduł i uwierzytelnia się pomyślnie.W przypadku awarii usługa PAM nadal zgłasza błąd logowania do pliku dziennika agenta, a następnie pomija jeden moduł do modułu
pam_deny.so
, który blokuje dostęp.
Weryfikowanie konfiguracji
W tej procedurze opisano sposób sprawdzania, czy usługa PAM została prawidłowo skonfigurowana do inspekcji zdarzeń logowania.
Zaloguj się do urządzenia przy użyciu protokołu SSH, a następnie wyloguj się.
Zaloguj się do urządzenia przy użyciu protokołu SSH, używając nieprawidłowych poświadczeń w celu utworzenia zdarzenia nieudanego logowania.
Uzyskaj dostęp do urządzenia i uruchom następujące polecenie:
cat /var/lib/defender_iot_micro_agent/pam.log
Sprawdź, czy wiersze podobne do poniższych są rejestrowane w celu pomyślnego logowania (
open_session
), wylogowania (close_session
) i niepowodzenia logowania (auth
):2021-10-31T18:10:31+02:00,16356631,2589842,open_session,sshd,user,192.168.0.101,ssh,0 2021-10-31T18:26:19+02:00,16356719,199164,close_session,sshd, user,192.168.0.201,ssh,1 2021-10-28T17:44:13+03:00,163543223,3572596,auth,sshd,user,143.24.20.36,ssh,2
Powtórz procedurę weryfikacji przy użyciu połączeń Telnet i terminalu.
Następne kroki
Aby uzyskać więcej informacji, zobacz Zbieranie zdarzeń agenta mikro.