Como registrar cada login (SSH) no FreeBSD

6

Eu quero registrar todas as tentativas de login SSH, bem-sucedidas e não, no meu servidor FreeBSD para um arquivo, e enviar esse log diário para o root.

Eu poderia realizar algo assim analisando /var/log/auth.log , mas a) isso contém mais do que tentativas de login, eb) poderia ser ativado desde a execução de ontem. Existe uma maneira mais direta de fazer isso? por exemplo, um gancho no SSHd ou configuração de login para registrar cada login?

    
por poplitea 29.11.2011 / 12:28

2 respostas

6

O padrão é registrar no recurso AUTH . Você pode alterar o facility que o sshd registra com a opção de configuração SyslogFacility .

SyslogFacility LOCAL7

Em seguida, configure seu syslogd para gravar local7. * em seu próprio arquivo adicionando

local7.*     /var/log/local7.log

para o arquivo de configuração syslogd. Diga ao syslogd para reler seu arquivo de configuração enviando-lhe um sinal HUP , faça o mesmo para o sshd e você deverá enviar as mensagens sshd para o seu próprio arquivo.

    
por 29.11.2011 / 12:57
3

Eu tropecei em este post de blog que descreve várias soluções para minha pergunta. Entre outras coisas, menciona a análise de log e, curiosamente, scripts do PAM através de pam_exec . Isso me permite executar meu próprio script em cada login.

Acho que esta é a solução mais flexível para o meu problema, embora a resposta anterior do Iain seja provavelmente menos invasiva e também resolve o meu problema.

    
por 29.11.2011 / 15:30