Partager via


Configurer les modules d’authentification enfichables (PAM) pour auditer les événements de connexion

Cet article fournit un exemple de processus pour la configuration des modules d’authentification enfichables (PAM) afin d’auditer les événements de connexion SSH, Telnet et de terminal sur une installation Ubuntu 20.04 ou 18.04 non modifiée.

Les configurations PAM peuvent varier entre les appareils et les distributions Linux.

Pour plus d’informations, consultez Collecteur de connexion (collecteur basé sur les événements).

Prérequis

Avant de commencer, vérifiez que vous disposez d’un micro-agent Defender pour IoT.

La configuration de PAM requiert des connaissances techniques.

Pour plus d’informations, consultez Tutoriel : Installation du micro-agent Defender pour IoT.

Modifier la configuration PAM pour signaler les événements de connexion et de déconnexion

Cette procédure fournit un exemple de processus de configuration de la collecte des événements de connexion ayant abouti.

Notre exemple est basé sur une installation non modifiée d’Ubuntu 20.04 ou 18.04, et les étapes de ce processus peuvent varier pour votre système.

  1. Recherchez les fichiers suivants :

    • /etc/pam.d/sshd
    • /etc/pam.d/login
  2. Ajoutez les lignes suivantes à la fin de chaque fichier :

    // 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
    

Modifier la configuration PAM pour signaler les échecs de connexion

Cette procédure fournit un exemple de processus de configuration de la collecte des tentatives de connexion qui ont échoué.

L’exemple de cette procédure est basé sur une installation Ubuntu 20.04 ou 18.04 non modifiée. Les fichiers et les commandes listés ci-dessous peuvent varier selon la configuration ou suite à des modifications.

  1. Recherchez le fichier /etc/pam.d/common-auth et recherchez les lignes suivantes :

    # 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
    

    Cette section procède à l’authentification par le biais du module pam_unix.so. En cas d’échec de l’authentification, cette section continue vers le module pam_deny.so pour empêcher l’accès.

  2. Remplacez les lignes de code indiquées par ce qui suit :

    # 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
    

    Dans cette section modifiée, PAM ignore un module jusqu’au module pam_echo.so, puis ignore le module pam_deny.so et procède à une authentification correcte.

    En cas d’échec, PAM continue à signaler l’échec de connexion au fichier journal de l’agent, puis ignore un module jusqu’au module pam_deny.so, ce qui bloque l’accès.

Valider votre configuration

Cette procédure décrit comment vérifier que vous avez correctement configuré PAM pour auditer les événements de connexion.

  1. Connectez-vous à l’appareil à l’aide de SSH, puis déconnectez-vous.

  2. Connectez-vous à l’appareil à l’aide de SSH, en utilisant des informations d’identification incorrectes pour créer un événement de connexion ayant échoué.

  3. Accédez à votre appareil et exécutez la commande suivante :

    cat /var/lib/defender_iot_micro_agent/pam.log
    
  4. Vérifiez que des lignes similaires à celles ci-dessous sont journalisées, pour une connexion réussie (open_session), une déconnexion (close_session) et un échec de connexion (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. Répétez la procédure de vérification avec des connexions Telnet et de terminal.

Étapes suivantes

Pour plus d’informations, consultez Collecte d’événements du micro-agent.