Configurando um log personalizado para sshd
Eu percebo que existe a opção padrão já configurada no OpenBSD para logar, então esta é uma alternativa se houver algo quebrado ou mal configurado com essa configuração!
Se você está tendo um problema com os recursos de registro regulares incluídos no OpenBSD 5.3, você pode sobrescrever onde os logs são enviados usando a seguinte modificação em seu arquivo sshd_config:
SyslogFacility LOCAL7
Em seguida, configure o syslogd para pegar essas mensagens e registrá-las em um arquivo separado:
local7.* /var/log/local7.log
Lembre-se de reiniciar os serviços sshd e syslogd depois de fazer as alterações acima.
pam_exec
Se você quiser algo mais personalizável, convém dar a pam_exec
uma aparência. Mais detalhes estão na página man pam_exec , bem como neste tutorial intitulado: Notificações de login, script pam_exec .
A ideia é simples, crie um script como este, notifique-logins:
#!/bin/sh
[ "$PAM_TYPE" = "open_session" ] || exit 0
{
echo "User: $PAM_USER"
echo "Ruser: $PAM_RUSER"
echo "Rhost: $PAM_RHOST"
echo "Service: $PAM_SERVICE"
echo "TTY: $PAM_TTY"
echo "Date: 'date'"
echo "Server: 'uname -a'"
} | mail -s "'hostname -s' $PAM_SERVICE login: $PAM_USER" root
Este script pode ser adaptado para logar em um arquivo. Em seguida, você precisa adicionar esse script à sua configuração de pam:
auth [default=ignore] pam_exec.so /usr/local/bin/notify-logins
Verifique se o script acima é executável (chmod + x notificar-logins). Descobrir onde colocar a linha de pam é provavelmente a parte mais difícil com este método. Aqui está um tutorial decente que, esperamos, o colocará na direção certa.
fail2ban
Uma terceira abordagem seria usar uma ferramenta como fail2ban
, que pode fazer muito mais do que registrar tentativas de login com falha. Pode reagir a eles de várias maneiras também. Há um bom tutorial aqui, intitulado: Como Proteja o SSH com o fail2ban no Ubuntu 12.04 . É voltado para o Ubuntu, mas pode ser adaptado para o OpenBSD.