RSS

  • YouTube
  • LinkedIn
  • Google

Servidor de Email –; Teil 1 ; Notwendigen Einrichtungen

Ich habe meine eigenen Mail-Server verwenden Postfix, Dovecot, MariaDB, SpamAssassin, ClamAV, Amavisd-new, fail2ban, nginx, postfixadmin und RoundCube sob o CentOS 7.
Obwohl es hat einige Rezepte für dieses Paket konfigurieren, Es hat mich viele Stunden, um herauszufinden, wie den Dienst einwandfrei zu halten, jede Einstellung in main.cf und master.cf und Erreichung bei der Verringerung der Flut von Spam, die jede Minute ankommt.
Und Anti-Spam steht im Mittelpunkt dieser Veröffentlichung. Ich haben gelitten und leiden noch immer mit die ständigen Versuche, meine Dienste als ein Zombie oder vergießen von Viren verwenden, Betrug und alles, was Sie können.

Ich aufgehört zu zählen wie oft mein DNS-Dienst beendet durch Übermaß an Verbindung in Entupiam versucht, den Speicher und zwang die s.. Trennverfahren, Ressourcen zu schonen und die mit dem Namen wurde gewählt als das schwächste Glied.
Also, Dieser Artikel hat Fokus in der richtigen Konfiguration für private Mail-Dienste, ein paar User und einige domains. Dient dazu sicherlich eine Menge dessen, was in dieser kurzen Anleitung, Weltklasse-Service, aber ich glaube, dass in diesen Fällen die Verwendung der Tools oder engagierte und spezialisierte Dienste immer in Betracht gezogen werden sollte.

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. O roundcube e o postfixadmin rodam sob um webserver com suporte a PHP e cujas contas de e-mail possam ser armazenadas em um servidor de banco de dados. 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 (devido ao WordPress provavelmente).

Also, ao final do processo de instalação, deveremos ter instalado alguns novos repositórios de pacotes para o CentOs, Postfix, Taubenschlag, 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. Para o CentOS 6 oder 7 os comando abaixo farão isso.

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

Adicionalmente, instale os pacotes curl, htop, vim, 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 (mail transfer agent). Um MTA faz a ponte entre os computadores para a troca de mensagens de correio eletronico. Para o nosso caso, é o elemento principal. A versão do Postfix que utilizarei neste documento é a 3 e para instala-lo utilizei o repositorio GhettoForge.
Para isso execute os comandos abaixo:

# 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

Para se certificar de que o repositorio esta ativo verifique se o pacote postfix3 esta disponivel

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

Nota: 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

Com o repositorio configurado e pronto pra uso, vamos remover o atual 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

Taubenschlag

Taubenschlag é 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.
Para instalar o Dovecot basta executar o comando:

$ sudo yum install -y dovecot dovecot-mysql

Mais uma vez, 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. Abaixo os comandos que o instalam. Ele requer muitas dependencias que serão atualizadas e/ou instaladas junto. Uma dessas dependencias é o SpamAssassin que será configurado mais adiante, juntamente com todos os outros pacotes que estamos instalando.

$ 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

Novamente, vamos ativar os serviços para que sempre iniciem de forma automática, mas por enquanto deixando-os parados.

$ sudo systemctl enable spamassassin && sudo systemctl stop spamassassin
$ sudo systemctl enable amavisd && sudo systemctl stop amavisd

MariaDB (ou MySQL)

Normalmente, quem usa WordPress já possui instalado e configurado o MariaDB ou o MySQL. Eu particularmente prefiro o 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. Dessa forma, caso necessite adicionar posteriormente o 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

Webserver (Nginx e PHP)

Os ultimos elementos a serem instalados fazem parte do Webserver. É 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.

Eu gosto muito do Nginx e vou usar em conjunto com o PHP-FPM. 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 e Postfixadmin

Os ultimos itens para serem instalados são o Roundcube e o Postfixadmin, Neu. das Roundcube, Neujahr é 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, caso esteja usando Apache ou outro Webserver, será necessário adpatar algumas informações. Aqui usarei diretorios in der Standardeinstellung.

$ 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. Seus problemas acabaram!

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

AUFMERKSAMKEIT! 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. Comecemos pelo MariaDB.

Kommentar (1)

  1. [;] Ich habe bereits vor einiger Zeit einen Artikel veröffentlicht, der zeigt, wie ich einen Server und e-Mail mit den gängigsten Tools für OpenSource-Umgebungen unter Linux eingerichtet habe.. Ich habe Postfix verwendet, Taubenschlag, Postfixadmin, Neu, Roundcube und Spamassassin. [;]

Hinterlasse eine Antwort

Ihre e-Mail-Adresse wird nicht veröffentlicht. Pflichtfelder sind markiert *

Diese Seite benutzt Akismet, Spam zu reduzieren. Erfahren Sie, wie Ihre Kommentardaten verarbeitet wird.