FLUX RSS

  • YouTube
  • LinkedIn
  • Google

Servidor de Email –; Partie 4 ; Postfix 3

Partie 1 ; Configurer le main.cf de fichiers

Esta é a quarta parte do processo de criação do servidor de Email em um CentOS 8 e a primeira parte da configuração do Postfix. Si vous êtes arrivé ici par hasard, melhor ler primeiro uma das publicações abaixo:

Partie 1 ; Instalação dos Pacotes

Partie 2 ; Configuração do MariaDB

Partie 3 ; Configuração do Dovecot

O Postfix é a parte mais importante do nosso servidor de email. Ele será responsável por conversar com outros MTAs para que receba e envie as mensagens de correio eletrônico e para que ele possa ser contatado é necessário que ele seja identificável através do nome do servidor ou o seu Hostname.

O Postfix requer a utilização de FQDN (Nom de domaine entièrement qualifié). Este é o nome completo do domínio juntamente com o prefixo mail como nome do servidor. Pour savoir quel est le nom actuel du serveur, tapez Hostname aucun argument sur la ligne de commande.

$ hostname
nome.servidor

Pour changer le nom, exécuter la commande ci-dessous pour informer le FQDN à utiliser. Você só deve fazer isso se por acaso estiver montando um servidor exclusivo, que somente será usado como servidor de email. Si vous souhaitez installer avec un serveur web, provavelmente não deva fazer isso.

$ sudo hostnamectl set-hostname mail.meudominio.com

main.cf

O arquivo main.cf é o arquivo principal do serviço do Postfix. Ele contém as configurações básicas de execução. Nessa instalação ele deverá estar em /etc/postfix/main.cf. Vamos começar a configuração por ele. Não vou entrar em detalhes das configurações que não for alterar, pois ficaria muito longo e eu nem conheço a fundo todas elas. Precisaria estudar bastante o manual e para mim particularmente não é algo muito util. Conforme eu já mencionei, se for pra montar um servidor super parrudo talvez seja mais vantagem usar um serviço pago como o Gmail.

myhostname ; Se você usou o passo de modificar o nome do host você pode manter esse atributo vazio que ele irá utilizar o nome do host proveniente de Gethostname(). Se a intenção é criar um serviço de email pequeno em um servidor já existente e configurado, mieux d’utiliser un nom différent. Par exemple,:

myhostname = mail.meudominio.com

Não se esqueça de que esse domínio deve existir na definição do seu DNS. Mais adiante vou falar sobre configurações no DNS.

Mydomain ; Modifier cet attribut dans votre domaine. Si vous allez utiliser plus d’un domaine, utilisez votre

mydomain = meudominio.com

inet_protocols ; Indica quais protocolos o Postfix irá utilizar. Si votre serveur prend en charge IPv6, Unlocher la ligne inet_protocols = tous, caso contrário Descomente a linha inet_protocols = ipv4.

inet_protocols = ipv4

mynetworks_style ; Esta configuração indica qual rede pode ser marcada como confiável. Se você tem uma rede com mais servidores pode permitir que eles enviem email de forma simples marcando-os como seguros. Dans le cas d’une utilisation d’un seul serveur Hôte.

mynetworks_style = host

mynetworks ; Também relacionado a rede que se quer permitir o uso de forma confiável. É uma alternativa para o atributo anterior, lorsque vous définissez une liste d’adresses IP, suivi d’IP ou même d’un fichier avec IP. Isso é útil quando seu servidor faz parte de uma cloud por exemplo, onde o IPv4 atribuído no DNS é diferente do IPv4 real do servidor e é usado NAT (comme dans ECS2 d’Amazon). Durante a instalação, le fichier a été créé /etc/postfix/mynetworks qui peuvent contenir certains IP détectés pour le serveur. Je préfère particulièrement utiliser cette forme et pour cela juste uncomment la ligne mynetworks = $config_directory/mynetworks ou vous pouvez ajouter selon la ligne ci-dessous.

mynetworks = 168.100.189.0/28, 127.0.0.0/8

relayhost ; Esta configuração é importante quando queremos ter servidores de email que usam outros domínios para efetuarem a entrega da mensagem. Se somente vai ter contas para o mesmo domínio, elle devrait s’en tenir à la par défaut que é valor vazio. Caso tenha mais de um domínio pode ser que seja necessário adicionar $Mydomain comme valeur. Essa configuração tem uma certa importância quando começam a receber muitos erros de entrega e caso isso aconteça, é bom dar uma estudada na documentação e testar outras configurações. Par heure, é bom usar conforme abaixo:

relayhost =   

As listas de aliases não são muito importantes para o tipo de servidor que estamos criando, pois eles se referem a usuário criados para uso com o modelo padrão do postfix, que inclui usuários e senhas controlados por ele. Comment nous utiliserons les éléments virtuels stockés dans la base de données, essas configurações não são tão importantes, mas caso queira ter contas não virtuais (por exemplo para uso com serviços do sistema que enviam mensagens diretamente) elas acabarão sendo usadas.

alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
recipient_delimiter = +

smtpd_banner ; Este atributo define a mensagem que será enviada a quem conectar no serviço smtp. Você pode personalizar esta mensagem como quiser. A linha abaixo enviará uma saída como 220 mail.meudominio.com Postfix ESMTP (3.3.3).

smtpd_banner = $myhostname ESMTP $mail_name ($mail_version)

As próximas entradas são uma série de configurações onde algumas não estarão presentes no arquivo inicialmente. A ideia desse tutorial é criar um servidor de email capaz de configurar contas e domínios através de uma interface Web, que no nosso caso será o Postfixadmin e todas as configurações serão armazenadas em Banco de Dados MariaDB. A partir desse ponto é necessário entender que ao utilizar esses atributos da forma como eu os apresento, o Postfix somente irá funcionar corretamente após o termino da configuração da base de dados para o Postfix/Postfixadmin. É imprescindível ter concluído a Configuração do MariaDB Avant.

smtpd_use_tls, smtpd_tls_auth_only, smtpd_tls_cert_file, smtpd_tls_key_file ; Esses atributos se referem ao certificado para criptografar a conexão. Lembrando que estamos criando um servidor que somente irá suportar conexões criptografadas, para diminuir ataques. Você pose usar aqui as mesmas entradas usadas na configuração de SSL do Dovecot ou criar uma nova chave auto-signé.

# TLS parameters
######### Lines Changed by Marcos Regis
smtpd_tls_cert_file = /etc/pki/dovecot/certs/dovecot.pem
smtpd_tls_key_file = /etc/pki/dovecot/private/dovecot.pem

######### Lines Addes by Marcos Regis
smtpd_use_tls = yes
smtpd_tls_auth_only = yes
smtp_tls_security_level = may
smtpd_tls_security_level = may
smtpd_sasl_security_options = noanonymous, noplaintext
smtpd_sasl_tls_security_options = noanonymous authentication
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
broken_sasl_auth_clients = yes
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtp_helo_timeout = 15s
smtpd_delay_reject = yes
smtpd_helo_required = yes
smtpd_recipient_limit = 3
disable_vrfy_command = yes
smtpd_data_restrictions = reject_unauth_pipelining

master.cf

O arquivo mais complexo e não menos importante de configuração do Postfix para o nosso caso é o master.cf. Em nossa instalação ele deverá estar em /etc/postfix/master.cf. É bom que não somente faça as mudanças exatamente como passado neste documento e sim entenda o que cada elemento significa.

É possível fazer as mudanças na configuração do Postfix através do comando postconf porém não utilizarei este modo para que seja possível entender claramente cada atributo.

Remarque: Je suis un partisan de Vim en tant que rédacteur en chef, mais rien ne vous empêche d’utiliser tout autre comme le nano, par exemple.

Então vamos abrir o arquivo master.cf para editar as configurações.

$ sudo vim /etc/postfix/main.cf

Se você der uma boa lida nos comentários deste arquivo (somente em inglês) vai aprender bastante sobre as configurações. É uma boa prática ler estes pequenos manuais.

Quando você abre o arquivo master.cf verá a seguinte configuração:

smtp      inet  n       -       n       -       -       smtpd
#smtp      inet  n       -       n       -       1       postscreen
#smtpd     pass  -       -       n       -       -       smtpd
#dnsblog   unix  -       -       n       -       0       dnsblog
#tlsproxy  unix  -       -       n       -       0       tlsproxy
#submission inet n       -       n       -       -       smtpd
# -o syslog_name=postfix/submission
# -o smtpd_tls_security_level=encrypt
# -o smtpd_sasl_auth_enable=yes
# -o smtpd_tls_auth_only=yes
# -o smtpd_reject_unlisted_recipient=no
# -o smtpd_client_restrictions=$mua_client_restrictions
# -o smtpd_helo_restrictions=$mua_helo_restrictions
# -o smtpd_sender_restrictions=$mua_sender_restrictions
# -o smtpd_recipient_restrictions=
# -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
# -o milter_macro_daemon_name=ORIGINATING

Descomente a linha “;Soumission; et certains des attributs qui sont en dessous. Estes atributos começam com espaços em branco seguido de -le. Estas linhas são usadas para sobrescrever as variáveis de configuração que porventura tenham sido definidas no arquivo main.cf. Preste bastante atenção quando descomentar estas linhas: Não remova os espaços em branco a frente, ou então o Postfix não irá reconhece-las como continuação da linha Submission.

submission     inet  n       -       n       -       -       smtpd
  -o syslog_name=postfix/submission
  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_sasl_type=dovecot
  -o smtpd_sasl_path=private/auth
  -o smtpd_reject_unlisted_recipient=no
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
  -o milter_macro_daemon_name=ORIGINATING

O que fizemos foi configurar o Postfix para criar e usar um serviço no Daemon STMP com as seguintes opções:

-le syslog_name=postfix/soumission indica que as atividades estarão disponíveis sob o nome “;postfix/submission”; dans le fichier journal.

-le smtpd_tls_security_level=chiffrer significa que TLS será usado para reforçar o nivel de segurança obrigando que os clientes somente criem conexões seguras.

-le smtpd_sasl_auth_enable=oui ativa o uso de SASL para a autenticação.

-o smtpd_sasl_type=dovecot O plugin SASL (aplicação) que será utilizado para a autenticação.

-o smtpd_sasl_path=private/auth O formato da autenticação que será passado ao plugin SASL.

-o smtpd_reject_unlisted_recipient=no Indica para o Postfix não rejeitar mensagens para caixas não desconhecidas. Isso é necessário devido a configuração de caixas virtuais.

-o smtpd_client_restrictions=permit_sasl_authenticated,Rejeter Os tipos de requisição que serão aceitas dos clientes.

-o milter_macro_daemon_name=ORIGINATING O nome da macro do processo de filtro de email.

Abaixo as configurações da linha Smtps. Algumas configurações são identicas a de submission, isso porque uma configuração é de envio e a ourta de recebimento. Como somente usaremos portas de serviços que exigem autenticação, elas serão identicas e devem existir.

smtps     inet  n       -       n       -       -       smtpd
  -o syslog_name=postfix/smtps
  -o smtpd_tls_wrappermode=yes
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_sasl_type=dovecot
  -o smtpd_sasl_path=private/auth
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
  -o milter_macro_daemon_name=ORIGINATING

-o syslog_name=postfix/smtps indica que as atividades estarão disponíveis sob o nome “;postfix/smtps”; dans le fichier journal.

-o smtpd_tls_wrappermode=yes indica que será utilizado S’enls para clientes de email que não suportem STARTTLS.

Demais configurações não precisam de alteração.

pickup    unix  n       -       n       60      1       pickup
cleanup   unix  n       -       n       -       0       cleanup
qmgr      unix  n       -       n       300     1       qmgr
#qmgr     unix  n       -       n       300     1       oqmgr
tlsmgr    unix  -       -       n       1000?   1       tlsmgr
rewrite   unix  -       -       n       -       -       trivial-rewrite
bounce    unix  -       -       n       -       0       bounce
defer     unix  -       -       n       -       0       bounce
trace     unix  -       -       n       -       0       bounce
verify    unix  -       -       n       -       1       verify
flush     unix  n       -       n       1000?   0       flush
proxymap  unix  -       -       n       -       -       proxymap
proxywrite unix -       -       n       -       1       proxymap
smtp      unix  -       -       n       -       -       smtp
relay     unix  -       -       n       -       -       smtp
        -o syslog_name=postfix/$service_name
showq     unix  n       -       n       -       -       showq
error     unix  -       -       n       -       -       error
retry     unix  -       -       n       -       -       error
discard   unix  -       -       n       -       -       discard
local     unix  -       n       n       -       -       local
virtual   unix  -       n       n       -       -       virtual
lmtp      unix  -       -       n       -       -       lmtp
anvil     unix  -       -       n       -       1       anvil
scache    unix  -       -       n       -       1       scache

Commentaires (2)

  1. [;] un serveur et un e-mail utilisant les outils les plus courants pour l’environnement OpenSource sur Linux. J’ai utilisé Postfix, Dovecot, Postfixadmin, Roundcube et [;]

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.