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.

  1. Znajdź następujące pliki:

    • /etc/pam.d/sshd
    • /etc/pam.d/login
  2. 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.

  1. /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łu pam_deny.so , aby zapobiec dostępowi.

  2. 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 pomija pam_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.

  1. Zaloguj się do urządzenia przy użyciu protokołu SSH, a następnie wyloguj się.

  2. Zaloguj się do urządzenia przy użyciu protokołu SSH, używając nieprawidłowych poświadczeń w celu utworzenia zdarzenia nieudanego logowania.

  3. Uzyskaj dostęp do urządzenia i uruchom następujące polecenie:

    cat /var/lib/defender_iot_micro_agent/pam.log
    
  4. 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
    
  5. 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.