Bloqueio de spam do mailer PHP usando iptables

3

Eu hospedo um servidor web voltado para o público rodando Debian Wheezy e versões mais recentes do Postfix, Apache, PHP, Spamassassin, ClamAV e rootkit hunter. O Apache é configurado com um punhado de vhosts, cada um vinculado a um usuário e protegido com suExec e Suhosin. Os sites executam o Wordpress e o ModX e pela lei das médias, dado o número de instalações neste servidor, pelo menos 20% dos sites terão, a qualquer momento, algum tipo de vulnerabilidade, seja do próprio CMS ou de um Plugins de data.

Tenho notificações do excelente site do MX Toolbox, que monitora endereços IP contra mais de 100 listas negras.

Quando souber que meu endereço IP foi novamente adicionado a uma lista negra , eu ssh imediatamente, pause o postfix

postfix stop

aguarde alguns segundos, veja a fila de mensagens

mailq

e a partir disso eu posso dizer imediatamente ao usuário / vhost do spam porque todos os emails vêm de "[email protected]", onde "mywebsite.com" é o domínio hospedado no vhost que causou o problema .

Em seguida, executo uma varredura de detecção de malware manual usando a excelente maldet, e o problema desaparece. Se eu corrigir todos os plugins e softwares conhecidos no site, o problema desaparece por c.6 meses. Se eu não voltar dentro de uma semana.

Para fins de teste, deixei o Postfix parado por meses a fio, mas alguns trojans aparentemente ignoram o servidor de e-mail e enviam e-mails diretamente. (Eu sei disso por meio do monitoramento de recursos do servidor, da lista negra de relógios e do envio de e-mails de spam para o meu domínio. Sem mencionar que o mailf do Postfix é preenchido com, por exemplo, 65.000 mensagens não enviadas.)

Como eu me preocupo mais com a autenticidade de e-mails do que com a possibilidade de enviar e-mails por meio de sites que hospedei, tomei uma série de etapas, garantindo que meus registros SPF de cada domínio não reconheçam meu próprio servidor como uma fonte autorizada de e-mail para esse domínio. No mínimo, isso significa que meus nomes de domínio não estão sendo automaticamente colocados na lista negra.

Minha pergunta. Existe uma maneira inteligente de simplesmente bloquear todos os emails enviados usando o IPTABLES? Eu não me refiro apenas ao bloqueio de e-mails enviados usando o servidor de e-mail Postfix, mas todo o tráfego que poderia acabar com o meu servidor sendo colocado na lista negra?

Até que eu encontre outras maneiras de resolver este problema, não me importo de impedir que os sites enviem emails. Isso NÃO é ideal, pois uso alguns para gerar meu próprio negócio, mas posso encontrar outras soluções nesse meio tempo.

    
por hazymat 23.03.2015 / 12:18

2 respostas

7

Você pode bloquear todo o tráfego SMTP de saída com uma regra simples:

iptables -I OUTPUT -p tcp --dport 25 -j DROP

Você pode estender isso apenas para descartar pacotes enviados pelo usuário www-data , que será o usuário que está executando os sites:

iptables -I OUTPUT -p tcp --dport 25 -m owner --uid-owner www-data -j DROP

O que ajudará no seu problema principal (os sites sendo infectados em primeiro lugar) está bloqueando todas as portas de entrada desnecessárias, e também portas de saída como a porta 80, que é freqüentemente usada para baixar rootkits extras, etc. suas defesas são encontradas.

    
por 23.03.2015 / 14:09
1

hazymat, tenho certeza que você não quer ouvir isso, mas ...

Você é o problema, não o Postfix

Esperar até que alguém detecte o SPAM não é uma maneira viável de gerenciar um sistema de computador. Se você possuísse um rifle e o deixasse na sua porta, você esperaria que a polícia viesse chamar antes de verificar que ele tinha sumido?

at least 20% of the websites will...have some kind of vulnerability... If I patch all known plugins and software on the site, the problem goes away

Não é como se você configurasse a verificação e a instalação automáticas de patches, e um IDS básico realmente requer qualquer compromisso contínuo de sua parte.

Sim, você deve ser mais pró-ativo sobre como gerenciar o tráfego de e-mail de saída, mas isso é um refinamento das práticas básicas de segurança.

    
por 23.03.2015 / 15:00