Configurar o PAM (Módulos de Autenticação Conectáveis) para auditar eventos de conexão

Este artigo fornece um processo de exemplo para configurar o PAM (Módulos de Autenticação Conectáveis) a fim de auditar eventos de entrada SSH, Telnet e de terminal em uma instalação não modificada do Ubuntu 20.04 ou 18.04.

As configurações do PAM podem variar entre dispositivos e distribuições do Linux.

Para obter mais informações, confira Coletor de logon (coletor baseado em eventos).

Pré-requisitos

Antes de começar, verifique se você tem um Microagente do Defender para IoT.

A configuração do PAM requer conhecimento técnico.

Para obter mais informações, confira Tutorial: Instalar o microagente do Defender para IoT.

Modificar a configuração do PAM para relatar eventos de entrada e de saída

Este procedimento fornece um processo de exemplo para configurar a coleção de eventos de entrada bem-sucedidos.

Nosso exemplo se baseia em uma instalação não modificada do Ubuntu 20.04 ou 18.04 e as etapas desse processo podem ser diferentes para o seu sistema.

  1. Localize os seguintes arquivos:

    • /etc/pam.d/sshd
    • /etc/pam.d/login
  2. Acrescente as seguintes linhas ao final de cada arquivo:

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

Modificar a configuração do PAM para relatar falhas de entrada

Este procedimento fornece um processo de exemplo para configurar a coleção de tentativas de entrada com falha.

Este exemplo de procedimento baseia-se em uma instalação não modificada do Ubuntu 18.04 ou 20.04. Os arquivos e comandos listados abaixo podem ser diferentes para cada configuração ou em virtude de modificações.

  1. Localize o arquivo /etc/pam.d/common-auth e procure as seguintes linhas:

    # 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
    

    Esta seção é autenticada por meio do módulo pam_unix.so. Em caso de falha de autenticação, esta seção prossegue para o módulo pam_deny.so a fim de impedir o acesso.

  2. Substitua as linhas de código indicadas pelo seguinte:

    # 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
    

    Nesta seção modificada, o PAM ignora um módulo para o módulo pam_echo.so, depois ignora o módulo pam_deny.so e se autentica com sucesso.

    Em caso de falha, o PAM continua relatando a pam_deny.so falha de entrada para o arquivo de log do agente e, em seguida, ignora um módulo para o módulo, o que bloqueia o acesso.

Validar sua configuração

Este procedimento descreve como verificar se você configurou o PAM corretamente para auditar eventos de entrada.

  1. Entre no dispositivo usando SSH e, em seguida, saia.

  2. Entre no dispositivo usando SSH, usando credenciais incorretas para criar um evento de entrada com falha.

  3. Acesse o dispositivo e execute o seguinte comando:

    cat /var/lib/defender_iot_micro_agent/pam.log
    
  4. Verifique se há linhas semelhantes às seguintes registradas em log para uma entrada bem-sucedida (open_session), uma saída (close_session) e uma falha de entrada (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. Repita o procedimento de verificação com conexões de terminal e Telnet.

Próximas etapas

Para obter mais informações, confira Coleta de eventos do microagente.