FLUX RSS

  • YouTube
  • LinkedIn
  • Google

Servidor de Email –; Partie 1 ; Instalações necessárias

Tenho meu próprio servidor de e-mail utilizando Postfix, Dovecot, MariaDB, SpamAssassin, ClamAV, Amavisd-new, fail2ban, Nginx, postfixadmin et RoundCube Sous le CentOS 7.
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 e no master.cf e no fim conseguir diminuir a enxurrada de spam que chega a cada instante.
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. procédés de conservation des ressources et la 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. Soutien la roundcube et postfixadmin fonctionnant sous un serveur Web avec PHP et dont les comptes e-mail peuvent être stockées 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 para o CentOs, Postfix, Dovecot, SpamAssassin, MariaDB, Nginx, PHP, PostfixAdmin, RoundCube e opcionalmente o Amavis e o ; ClamAV.

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

$ sudo yum install epel-release  
$ sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm 

En outre, installer la courbure, htop, Je suis venu, Yum-utils, wget, NET-tools, ntp e certbot que serão necessários em outros pontos do documento.

$ sudo yum install -y curl htop vim yum-utils wget telnet net-tools ntp python2-certbot-nginx

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 et pour l’installer, j’ai utilisé le référentiel GhettoForge.
Pour faire cela exécutez les commandes suivantes:

# importando a chave
$ sudo rpm --import http://mirror.ghettoforge.org/distributions/gf/RPM-GPG-KEY-gf.el7
# instalando o repositorio GhettoForge
$ sudo rpm -Uvh http://mirror.ghettoforge.org/distributions/gf/gf-release-latest.gf.el7.noarch.rpm

Pour s’assurer que le référentiel cet actif Vérifiez s’il existe le package postfix3

$ sudo yum info postfix3 --enablerepo=gf-plus

Remarque: O repositorio gf-plus é instalado desativado e é melhor mantê-lo assim pois ele contém versões de pacotes que conflitam com versões existentes nos repositórios base da instalação do CentOS.

A saída deverá ser algo como:

(..)
Available Packages
Name        : postfix3
Arch        : x86_64
Epoch       : 2
Version     : 3.3.3
Release     : 1.gf.el7
Size        : 3.0 M
Repo        : gf-plus/x86_64
Summary     : Postfix Mail Transport Agent
URL         : http://www.postfix.org
License     : IBM
Description : Postfix is a Mail Transport Agent (MTA), supporting LDAP, SMTP AUTH (SASL),
            : TLS

Avec le référentiel configuré et prêt à l’emploi, Nous allons supprimer l’actuelle postfix (que costuma ser instalado por padrão no CentOS) pela versão mais atual.

$ sudo yum remove -y postfix && sudo yum -y install postfix3 postfix3-ldap postfix3-mysql postfix3-pcre --enablerepo=gf-plus

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

$ sudo systemctl enable postfix && sudo systemctl stop 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, il suffit de lancer la commande:

$ sudo yum install -y dovecot dovecot-mysql

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

$ sudo systemctl enable dovecot && sudo systemctl stop 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. No nosso caso usaremos a versão amavisd-new. 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.

$ sudo yum install -y amavisd-new

Complementando a instalação de elementos de filtro de conteúdo nocivo, instalaremos também o ClamAV que é um antivirus simples e bastante eficiente para os tipos mais comuns de ameaças e totalmente gratuito.

$ sudo yum install -y clamav

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 spamassassin && sudo systemctl stop spamassassin
$ sudo systemctl enable amavisd && sudo systemctl stop amavisd

MariaDB (ou MySQL)

Normalement, quem usa WordPress já possui instalado e configurado o MariaDB ou MySQL. 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.

Como a intenção é instalar a versão mais atual usaremos o repositório oficial. Abaixo todos os comandos necessários.

$ curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash
$ sudo yum install -y MariaDB-server MariaDB-client
$ sudo systemctl enable mariadb && sudo systemctl stop mariadb

Serveur Web (Nginx et PHP)

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, recomendo seguir as dicas dessa instalação.

J’aime beaucoup le Nginx et je vais utiliser en conjonction avec le PHP-PI/MIN. Novamente vou utilizar repositórios que permitam instalar versões mais atuais possíveis.

$ sudo rpm --import https://nginx.org/keys/nginx_signing.key
$ sudo yum -y install http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
$ sudo yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
$ sudo yum-config-manager --enable remi-php73
$ sudo yum install -y nginx php php-fpm php-imap php-gd php-intl php-mcrypt php-mysql php-mysqlnd php-pdo php-xml php-xmlrpc php-tidy php-pecl-zip
$ sudo systemctl enable nginx && sudo systemctl stop nginx
$ sudo systemctl enable php-fpm && sudo systemctl stop php-fpm

RoundCube et Postfixadmin

Os ultimos itens para serem instalados são o Roundcube e o Postfixadmin. Le RoundCube é um cliente de e-mail Web para ser usado com PHP e o Postfixadmin é um gerenciador Web de contas e dominios para o Postfix tambem usado com PHP. Como são aplicações PHP para serem usados dentro do Webserver, Si vous utilisez Apache ou autre serveur Web, será necessário adpatar algumas informações. Ici je vais utiliser les répertoires par défaut.

$ cd /var/www/html
$ sudo wget https://github.com/roundcube/roundcubemail/releases/download/1.3.9/roundcubemail-1.3.9-complete.tar.gz
$ sudo tar -xzvf roundcubemail-1.3.9-complete.tar.gz
$ sudo wget -O postfixadmin-3.2.gz https://downloads.sourceforge.net/project/postfixadmin/postfixadmin/postfixadmin-3.2/postfixadmin-3.2.tar.gz?r=https%3A%2F%2Fsourceforge.net%2Fprojects%2Fpostfixadmin%2Ffiles%2Flatest%2Fdownload 
$ sudo tar -xzvf postfixadmin-3.2.gz

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:

$ sudo yum install -y curl htop vim yum-utils wget epel-release
$ curl -sS https://www.marcosregis.com/download/regis-mailserver-centos7-script | sudo bash

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.

Com tudo instalado podemos iniciar as configurações. Commençons par la MariaDB.

Commentaire (1)

  1. [;] Já publiquei um tempo atrás um artigo mostrando como montei um servidor e e-mail utilizando as ferramentas mais comuns para ambiente OpenSource em Linux. J’ai utilisé Postfix, Dovecot, Postfixadmin, Roundcube et Spamassassin. [;]

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Ce site utilise Akismet pour réduire le spam. Apprenez comment vos données de commentaire sont transformées.