FLUX RSS

  • YouTube
  • LinkedIn
  • Google

Archives pour : março2021

Mise en place d’un serveur de messagerie

Tenho meu próprio servidor de e-mail utilizando ;Postfix, Dovecot, MariaDB, Spamassassin, ClamAV, Amavisd-new, Fail2ban, Nginx, Postfixadmin et Roundcube ;Sous le CentOS 8.
Embora já tenha diversas receitas de como configurar este pacote, precisei de muitas horas para entender como manter o serviço rodando corretamente, cada configuração no main.cf et dans le master.cf et en fin de compte parvenir à réduire le flot de spam qui arrive à chaque instant.
E anti-spam é o foco desta publicação. Sofri e continuo sofrendo com as constantes tentativas de utilizarem meus serviços como um zumbi ou disseminador de vírus, fraude et tout le reste que vous pouvez.

Perdi a conta de quantas vezes meu serviço de DNS parou por excesso de tentativas de conexão que entupiam a memória e forçava o S.O. a cortar processos para economizar recursos e o ;nommée ;a été choisi pour être le maillon faible.
Então, este artigo tem foco na configuração adequada para serviços de email privado, de poucos usuários e poucos domínios. Certamente muito do que está neste pequeno manual serve para serviços mais parrudos, mas acredito que para estes casos o uso de ferramentas ou serviços dedicados e especializados deva ser sempre levado em consideração.

Então deixemos de lado o falatório para irmos direto ao ;mão na massa.

Instalação dos pacotes

O primeiro passo é instalar todo os pacotes que serão utilizados. Roundcube et Postfixadmin fonctionnent sous la direction d’un serveur web soutenu par PHP dont les comptes de messagerie peuvent être stockés sur un serveur de base de données. Como Webserver eu utilizo o Nginx e embora prefira o PostgreSQL vou utilizar o MariaDB como SGBD devido ao fato de que a maioria já o utiliza (en raison de WordPress probablement).

Então, ao final do processo de instalação, deveremos ter instalado alguns novos repositórios de pacotes.

Ative os repositórios de Extra Packages para a sua distribuição, caso ainda não o tenha feito. Pour CentOS 8 os comando abaixo fará isso.

$ sudo dnf install epel-release

En outre, installer les paquets Curl, htop, Je suis venu, Yum-utils, wget, NET-tools, chrony et certbot que serão necessários em outros pontos da configuração.

$ sudo dnf install -y curl htop vim yum-utils wget net-tools chrony certbot

Postfix

Postfix ;é um MTA (agent de transfert de courrier). Un MTA comble le fossé entre les ordinateurs pour l’échange de messages de courrier électronique. Pour notre cas, é o elemento principal.

A versão do Postfix que utilizarei neste documento é a 3.3. Para saber qual a versão que será instalada digite:

$ sudo dnf info postfix

Pour installer exécuter la commande

$ sudo dnf install -y postfix postfix-mysql postfix-pcre

Vamos deixar o serviço parado por enquanto mas já configurado para iniciar junto com o Sistema Operacional.

$ sudo systemctl enable postfix

Dovecot

Dovecot ;é um Servidor de Email Imap e Pop3. Com ele que poderemos enviar e receber as mensagens via Postfix e entre outras coisas controlar o acesso ao serviço via autenticação.
Pour installer Dovecot avec le support mysql il suffit d’exécuter la commande:

$ sudo dnf install -y dovecot dovecot-mysql

Encore une fois, vamos ativar o serviço porém deixá-lo parado.

$ sudo systemctl enable dovecot

Amavis

Amavis ;é um filtro de conteúdo para correio eletrônico. Com ele é possível filtrar mensagens nocivas usando configurações contra spam, vírus e outros malwares. Les commandes d’installation ci-dessous. Ele requer muitas dependencias que serão atualizadas e/ou instaladas junto. Uma dessas dependencias é o ;SpamAssassin ;que será configurado mais adiante, ainsi que tous les autres paquets, nous allons installer.

Primeiro certifique-se de que o repositorio PowerTools está habilitado, pois é a partir dele que instalaremos o Amavisd-New.

$ sudo dnf config-manager --set-enabled powertools

Em seguida instalamos o Amavis e algumas dependencias sendo uma delas o ;ClamAV ;que é um antivirus simples e bastante eficiente para os tipos mais comuns de ameaças e totalmente gratuito.

$ sudo dnf -y install amavisd-new clamd perl-Digest-SHA1 perl-IO-stringy

Encore une fois, vamos ativar os serviços para que sempre iniciem de forma automática, mais pour l’instant en les laissant debout.

$ sudo systemctl enable amavisd spamassassin

MariaDB (ou MySQL)

Normalement, quem usa WordPress já possui instalado e configurado o ;MariaDB ;ou MySQL. Si c’est le cas, peut sauter cette étape.

Je préfère PostgreSQL, mas como a intenção deste documento é permitir que DevOps consigam ter seus proprios serviços e nem sempre dá pra ter varias instancias resolvi usar o MariaDB. De cette façon, Si vous devez ajouter le WordPress, não precisará adicionar um SGBD adicional ou mesmo usar wrappers para que ele tenha suporte a PostgreSQL.

Não se preocupe com as configurações neste momento, pois as detalharei mais adiante em outra publicação. Continuando com a instalação devemos executar o comando:

$ sudo dnf install -y mariadb-server

e em seguida ativar o serviço para iniciar junto com o sistema

$ sudo systemctl enable mariadb

Serveur Web (Nginx + Php-Fpm)

Les derniers éléments à installer font partie du serveur Web. É possível que você já tenha um rodando como o Apache então esse ponto pode ser pulado. Se você está iniciando um novo servidor ou se não tem intimidade com a configuração do Apache e PHP, recomendo seguir as dicas dessa instalação.

Eu gosto muito do ;Nginx ;e vou usar em conjunto com o ;Php-Fpm.

$ sudo dnf install -y nginx php-fpm

Neste ponto já temos todos os arquivos necessários para inciar a configuração do Servidor de Email.

Sou muito preguiçoso

Não gosta de ficar digitando ou não está preocupado nos detalhes de cada item instalado. Vos problèmes sont plus!

Você pode executar todos os comando deste documento com as linhas abaixo:

ATENÇÃO! Este script é apenas um arquivo com as linhas de comando. Eventualmente pode não funcionar corretamente dependendo das configurações do seu sistema.

$ sudo dnf update
$ sudo dnf install -y epel-release
$ sudo dnf config-manager --set-enabled powertools
$ sudo dnf -y install --enable-repo=epel-release,powertools curl htop vim yum-utils wget net-tools chrony certbot postfix dovecot amavisd-new clamd perl-Digest-SHA1 perl-IO-stringy mariadb-server ngixn php-fpm
$ sudo systemctl enable postfix mariadb spamassassin amavisd dovecot nginx php-fpm 

Com tudo instalado podemos iniciar as configurações. Comecemos pelo ;MariaDB.