Pesquisa de site

Como usar o Sagator, um gateway antivírus/antispam, para proteger seu servidor de e-mail


Lemos sobre infecções por vírus (novas surgem o tempo todo) e somos de alguma forma afetados por spam diariamente. Embora existam muitas soluções gratuitas e comerciais (disponíveis como aplicativos clientes) para ambos os incômodos, os administradores de sistema precisam ter uma estratégia para lidar com essas ameaças bem antes que elas cheguem às caixas de correio dos usuários.

Uma dessas estratégias é configurar um gateway antivírus/antispam. Você pode pensar nesta ferramenta como uma camada intermediária (ou filtro) entre o mundo exterior e sua rede interna no que diz respeito ao conteúdo do e-mail.

Além disso, se você pensar bem, é muito mais fácil instalar e manter um único software em uma única máquina (o servidor de e-mail) do que fazer o mesmo em várias máquinas individualmente.

Neste artigo apresentaremos o Sagator, um gateway antivírus/anti-spam para servidores de e-mail Linux escrito em Python. Entre outras coisas, o Sagator fornece registro de banco de dados, estatísticas de uso e relatórios diários para os usuários. Dito isto, vamos começar.

Instalando o Sagator e o Postfix Mail Server

Para instalar o Sagator no CentOS/RHEL 7, baixe e instale os seguintes pacotes RPM. A versão beta mais recente (7) inclui suporte e correções para systemd – é por isso que preferimos instalá-lo usando este método em vez de baixar o pacote dos repositórios.

rpm -Uvh https://www.salstar.sk/pub/sagator/epel/testing/7/i386/sagator-core-1.3.2-0.beta7.el7.noarch.rpm
rpm -Uvh https://www.salstar.sk/pub/sagator/epel/testing/7/i386/sagator-1.3.2-0.beta7.el7.noarch.rpm

Se você estiver realizando esta instalação em um servidor novo, observe que vários outros pacotes precisam ser instalados como dependências, entre os quais podemos citar Postfix, ClamAV e SpamAssassin.

Além disso, você também pode instalar o Rrdtool, um utilitário para criar e exibir dia/semana/mês/Gráficos de ano do número total/limpo/vírus/spam de e-mails.

Esses gráficos estarão disponíveis em /var/www/html/sagator assim que o serviço e suas dependências estiverem totalmente funcionais.

yum install epel-release
yum install postfix spamassassin clamav clamav-scanner clamav-scanner-systemd clamav-data clamav-update rrdtool

Isso não é uma surpresa, pois precisaremos de um servidor de e-mail e de um software antivírus/antispam ao qual o Sagator possa se conectar. Além disso, pode ser necessário instalar o pacote mailx, que fornece funcionalidades MUA (Mail User Agent, também conhecido como Email Agent).

No Debian e no Ubuntu, você precisará instalar o Sagator a partir de um pacote .deb pré-compilado, que você pode baixar aqui e instalar da seguinte forma:

Jessie Debian:

wget https://www.salstar.sk/pub/sagator/debian/pool/jessie/testing/sagator-base_1.3.2-0.beta7_all.deb 
wget https://www.salstar.sk/pub/sagator/debian/pool/jessie/testing/sagator_1.3.2-0.beta7_all.deb 
dpkg -i sagator-base_1.3.2-0.beta7_all.deb
dpkg -i sagator_1.3.2-0.beta7_all.deb 

Ubuntu confiável:

wget https://www.salstar.sk/pub/sagator/ubuntu/pool/trusty/testing/sagator-base_1.3.2-0.beta7_all.deb 
wget https://www.salstar.sk/pub/sagator/ubuntu/pool/trusty/testing/sagator_1.3.2-0.beta7_all.deb 
sudo dpkg -i sagator-base_1.3.2-0.beta7_all.deb
sudo dpkg -i sagator_1.3.2-0.beta7_all.deb

Como foi o caso do CentOS, você precisará instalar e configurar os pacotes do servidor de e-mail, SpamAssassin e ClamAV:

aptitude install postfix spamassassin clamav clamav-daemon -y

Não se esqueça de usar o sudo no Ubuntu.

A seguir, independentemente da distribuição, você precisará atualizar a definição de vírus antes de iniciar o ClamAV. Antes de fazer isso, edite /etc/clamd.d/scan.conf e /etc/freshclam.conf e exclua a seguinte linha:

Example

Além disso, em /etc/clamd.d/scan.conf, certifique-se de que a linha a seguir não esteja comentada:

LocalSocket /var/run/clamd.scan/clamd.sock

Finalmente, faça

freshclam

E inicie/habilite ClamAV, SpamAssassin e Sagator:

systemctl start clamd@scan
systemctl start spamassassin
systemctl start sagator
systemctl enable clamd@scan
systemctl enable spamassassin
systemctl enable sagator

Você pode verificar o log do Sagator para ter certeza de que o serviço foi iniciado corretamente:

systemctl status -l sagator

ou para mais detalhes,

tail -f /var/spool/vscan/var/log/sagator/sagator.log

Os comandos acima são ilustrados na imagem a seguir:

Configurando o Sagator no Linux

O arquivo de configuração principal está localizado em /etc/sagator.conf. Vamos dar uma olhada no conjunto mínimo de diretivas que precisamos definir para que o Sagator funcione corretamente:

Etapa 1 – Estaremos usando o Sagator dentro de um chroot, então certifique-se de que a seguinte linha esteja descomentada:

CHROOT = '/var/spool/vscan'

Etapa 2 – Certifique-se de que a diretiva LOGFILE corresponda ao seguinte valor:

LOGFILE = CHROOT + '/var/log/sagator/sagator.log'

Passo 3 – Escolha um antivírus que será integrado ao Sagator. Para isso, certifique-se de que as linhas destacadas na imagem abaixo estejam descomentadas:

Embora você possa escolher entre uma ampla variedade de soluções antivírus, o ClamAV oferece maior desempenho e estabilidade. Embora usaremos o ClamAV neste guia, lembre-se de que o arquivo de configuração inclui instruções para conectar o Sagator a outras soluções antivírus/antispam.

Quando terminar, corra

sagator --test

Para verificar o arquivo de configuração. Nenhuma saída é uma coisa boa! Caso contrário, resolva quaisquer erros encontrados antes de continuar.

Integrando Sagator com Postfix

Para integrar o Sagator com o Postfix, certifique-se de que as seguintes linhas estejam presentes em /etc/postfix/main.cf e / etc/postfix/master.cf:

mynetworks = 127.0.0.0/8
content_filter = smtp:[127.0.0.1]:27
#smtp inet n - n -- smtpd
127.0.0.1:26 inet n - n - 30 smtpd
-o content_filter=
-o myhostname=localhost
-o local_recipient_maps=  -o relay_recipient_maps=
-o mynetworks=127.0.0.0/8  -o mynetworks_style=host
-o smtpd_restriction_classes=  -o smtpd_client_restrictions=
-o smtpd_helo_restrictions=  -o smtpd_sender_restrictions=
-o smtpd_data_restrictions=
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o receive_override_options=no_unknown_recipient_checks,no_header_body_checks
-o smtpd_use_tls=no

Em seguida, reinicie o postfix e certifique-se de que ele esteja habilitado para iniciar automaticamente na inicialização:

systemctl restart postfix
systemctl enable postfix

Agora podemos prosseguir com os testes.

Testando Sagator

Para testar o Sagator, envie um e-mail do usuário root para o usuário gacanepa com o seguinte corpo. Isso nada mais é do que o GTUBE (teste genérico para e-mail em massa não solicitado) padrão fornecido pelo SpamAssassin, conforme mostrado na imagem abaixo :

XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X

Agora vamos ver o que acontece quando um vírus é enviado como anexo. No exemplo a seguir usaremos o teste EICAR (consulte esta entrada da Wikipedia para obter mais detalhes):

wget http://www.eicar.org/download/eicar.com
mail -a eicar.com gacanepa

Em seguida, verifique o registro:

tail -f /var/spool/vscan/var/log/sagator/sagator.log

Os e-mails rejeitados são então devolvidos ao remetente com o aviso correspondente:

O que há de tão bom nisso? Como você pode ver, spam e vírus nunca chegam ao servidor de e-mail de destino e às caixas de correio dos usuários, mas são descartados ou rejeitados no nível do gateway.

Como mencionamos anteriormente, os gráficos estão disponíveis em http:///sagator:

Resumo

Neste artigo explicamos como instalar e configurar o Sagator, um gateway antivírus/antispam que se integra perfeitamente e protege seu servidor de e-mail.

Para obter mais informações e funcionalidades adicionais (há muito mais neste software incrível do que podemos cobrir adequadamente em um único artigo!), você pode consultar o site do projeto em http://www.salstar.sk/sagator.

Como sempre, não hesite em nos enviar uma mensagem usando o formulário de comentários abaixo se tiver alguma dúvida ou comentário.

Agradecimentos especiais a Jan ONDREJ (SAL), o desenvolvedor do Sagator, por seu excelente apoio enquanto eu escrevia este artigo.