Qual ferramenta para executar um comando em entradas repetidas do syslog?

Qual ferramenta para executar um comando em entradas repetidas do syslog?

Ocasionalmente, um VPS sob meu controle é bombardeado com tentativas de login POP3. Todos eles falham, mas o grande número de processos gerados e conexões ativas equivalem praticamente a um ataque DoS.

Quando vejo isso acontecendo, geralmente entro e bloqueio manualmente o endereço IP incorreto no iptables.O que eu gostariaé ter um processo em execução no servidor monitorando o log do sistema (ou algum outro local apropriado) e, se houver entradas de log repetidas que correspondam a um padrão específico, passá-las para um comando que extrairia a parte relevante (o IP do host remoto endereço, neste caso) e execute um comando (para adicionar uma regra DROP ao iptables).Por exemplo, faça isso se as entradas de log com a mesma parte da mensagem forem registradas cinco vezes em um minuto.

O VPS executa o syslog-ng caso isso ajude. Eu configurei a limitação de taxa no iptables, o que ajuda um pouco, mas certamente não é perfeito, pois bloqueia minhas próprias tentativas de conexão tanto quanto as de um invasor (se torna uma sorte quem consegue uma conexão estabelecida). Como os clientes que deveriam se conectar possuem endereços IP de blocos dinâmicos, é difícil simplesmente adicionar uma regra de substituição sem limitação de taxa.

Como o VPS é executado no Virtuozzo, embora eu tenha acesso root ao convidado, não consigo carregar módulos de kernel personalizados ou um kernel personalizado. Portanto, isso deve ser feito no espaço do usuário.

Qual software vai me ajudar?

Responder1

eu recomendariafail2ban.

Fail2ban é um software destinado a monitorar logs de tentativas de login de força bruta. Ao ver tal tentativa, ele bloqueia o IP do invasor via iptables. Após um período de tempo suficiente, o fail2ban removerá automaticamente o bloco.

Fail2ban é personalizável e pode funcionar com praticamente qualquer tipo de daemon de serviço de Internet. Existe até documentação específica para daemons pop3, comocorreio,pombal, eqmail.

Responder2

Eu uso OSSEC (http://www.ossec.net/). Ele faz análise de log, mas também possui opções de resposta ativas (adicionando e removendo entradas iptables e hosts.deny dinamicamente) com configuração mínima. Possui várias regras padrão, mas você pode adicionar as suas próprias. Eu testei e uso em produção com máquinas CentOS, Ubuntu e Slackware (físicas e VPS).

A instalação é muito fácil (ajustá-lo, principalmente configurá-lo para ignorar algumas regras, é o que leva mais tempo). Se você usá-lo e ativar as funções de resposta ativa, os padrões geralmente serão bons o suficiente.

Sugiro deixar o tempo de bloqueio padrão (alguns minutos), adicionar uma lista de permissões com seu IP (ou o IP de outro servidor em que você confia, caso seu IP não seja estático e o servidor bloqueie você).

Além disso, se precisar de um gerenciamento de bloqueio mais complexo, você pode configurar o OSSEC para usar um script bash (por exemplo) para verificar e manipular o endereço IP antes de fazer o bloqueio ativo real.

informação relacionada