Alerta de login SSH usando pam_exec

4

Oi eu tenho tentado seguir as informações sobre pam_exec daqui: Gancho de login do Ssh?

Quando um log de usuário está em:

/etc/pam.d/email-alert.sh failed: exit code 8

Meu arquivo sshd tem isso no final:

session optional pam_exec.so debug seteuid /etc/pam.d/email-alert.sh

Meu script email-alert.sh tem isso,

echo 'ALERT - Remote SSH Shell Access (SERVERNAME) on:' 'date' 'who' | 
mail -s "Alert: Remote SSH Access from 'who | 
cut -d'(' -f2 | cut -d')' -f1'" [email protected]

Eu testei o script por conta própria e ele não me envia nenhum problema.

Se alguém pudesse me apontar na direção certa, seria muito apreciado, já que eu estava me arranhando e tentando entender.

    
por user175200 25.04.2014 / 21:47

1 resposta

2

Primeiro, os scripts de shell retornarão o status de saída do último comando. Um dos comandos que você está usando está saindo com o status 8 . Em segundo lugar, pam_exec não terá o mesmo ambiente que você. Então, quando rodar manualmente, não necessariamente funcionará como seria quando executado como parte da pilha de pam (que você está experimentando).

pam_exec tem várias variáveis de ambiente incorporadas que o ajudarão aqui. Eu iria reescrever o script assim:

#!/bin/bash

PATH=/bin:/usr/bin
SUBJ="Alert - Remote SSH access from ${PAM_USER}"

mail -s $SUBJ << __MESSAGE__
ALERT - Remote SSH Shell Access (${HOSTNAME}) on $(date)

User ${PAM_USER} logged in from ${PAM_RHOST}

$(who)
__MESSAGE__
    
por 25.04.2014 / 22:54

Tags