
Eu tenho um servidor openldap (com senhas de usuário) aberto em todo o mundo que estou tentando proteger.
A etapa 1 foi limitar o acesso aos dados a usuários autenticados por meio de ACLs.
O passo 2, para evitar ataques de força bruta, foi implementar uma política. Parece estar funcionando bem, legal.
A etapa 3 será "lidar com o usuário que foi bloqueado e jura que não é culpa dele", identificando bloqueios de DNS o mais cedo possível com suas possíveis causas.
Comecei a escrever scripts que verificam a presença do atributo pwdAccountLockedTime, avisam por e-mail, tocam sinos, etc. Tudo bem, mas estou achando difícil vincular isso aos dados nos logs, informando quando os logins incriminados ocorreram, de onde foram feitos, etc. Todos os dados estão lá, mas reunir tudo é uma verdadeira dor. Tenho certeza de que não sou o único confrontado com esse problema (ou estou tentando resolver o problema errado?) E que existem soluções, só não consegui encontrá-las. Estou errado ?
Esqueci de dizer que o fail2ban não é realmente adequado. Existem muitos clientes, dos quais não conheço necessariamente os endereços, que provavelmente farão solicitações massivas legítimas no diretório e não passariam no fail2ban. Parece estranho, eu sei, mas nossa configuração aqui é complicada e temos que nos contentar com isso. É por isso que estou olhando para a política.
Resumindo, gostaria de ter uma forma de monitorar a ocorrência de pwdAccountLockedTime e, quando isso acontecer, ter imediatamente as informações de qual usuário está em questão, os valores de pwdFailureTime, quais solicitações foram feitas naquele momento e de qual IP endereço(s) em um arquivo de log único e fácil de ler. Isso seria ótimo, certamente existe?
Responder1
Eu questionaria a etapa 3. Pesquisar os logs para encontrar usuários possivelmente afetados não resolve o problema real, que é que eles não conseguem fazer login.
Tudo o que você precisa é de uma ação administrativa para redefinir a conta com uma nova senha temporária que você informa quando ele reclama (após autenticá-lo por algum outro meio) e que ele deve alterar na próxima vez que fizer login, tudo isso pode ser feito através da política.