.png)
Meu VPS está executando o Ubuntu e gostaria de poder receber emails em meu domínio.
Como configuro facilmente um servidor de e-mail para fazer isso?
Responder1
Foi assim que configurei o correio em nossas máquinas de produção. Estes são os critérios que precisávamos:
- Contas de e-mail
- Aliases de e-mail (encaminhadores)
- IMAP, POP3 e SMTP
"Fácil" (tl; dr)
Em primeiro lugar, quero abordar o que parece ser omais fácilsolução.
sudo tasksel install mail-server
Vários problemas ocorreram quando tentamos: Primeiro ele instala o Dovecot, o que é bom para a maioria, mas consideramos o Courier o melhor dos dois paranossoprecisa. Em segundo lugar, ele utiliza Postfix, o que é ótimo, mas também precisamos do Exim, pois é um servidor MTA/SMTP mais poderoso. Terceiro, ele instala o MySQL - na configuração que utilizo, preferimos arquivos simples para configuração, pois é um ponto de interrupção a menos. Pense no que aconteceria se o MySQL travasse por algum motivo desconhecido. Caso contrário, o restante dos pacotes é bastante simples e fácil de manter para um pequeno serviço de correio (pense em 1-2 domínios de e-mail no total).
Nossa configuração
Estrutura de diretório
Afastamo-nos um pouco do caminho das configurações normais, mas isso facilita o gerenciamento.
Todos os nossos e-mails são armazenados em /var/mail/virtual/<domain>/<user>/mail
Portanto, para exemplos futuros, usarei [email protected]
, [email protected]
, [email protected]
para representar um endereço de e-mail, um encaminhador para onde ir [email protected]
e um endereço incorreto, respectivamente. No exemplo acima seria /var/mail/virtual/example.com/email/mail
.
Também mantenho uma lista de todos os domínios no servidor, /etc/valiases
mas falaremos mais sobre isso mais tarde.
Pós-fixo
Esta é mais ou menos a parte fácil da configuração. Basta instalar o postfix
pacote.
Exim
Instale o Exim com apt-get install exim4 exim4-base exim4-config exim4-daemon-heavy
Depois de instalado, você precisará editar a configuração padrão do exim para substituir ou adicionar os seguintes valores:
domainlist local_domains = @:localhost:dsearch;/etc/valiases:dsearch;/var/mail/virtual
daemon_smtp_ports = smtp : 587 : 465
MAIN_TLS_ENABLE = yes
(Essas linhas aparecerão em diferentes partes do arquivo, substitua cada uma de acordo)
Quando isso estiver concluído, reconstrua a configuração do exim com update-exim4.conf
Isso conclui as alterações necessárias para o Exim
Correio
Instale o Courier com courier-base
isso deve instalar courier-authdaemon
, courier-authlib*
, courier-imap*
, courier-pop*
, courieruserinfo
,courier-ssl
Honestamente, não há muita configuração fora do padrão. Você só precisará criar um banco de dados de usuários.
Contas
Exim e Courier verificam alguns lugares para ver se um login ou e-mail recebido é válido. O Exim verifica se o domínio está listado como um nome de host local, ou se o domínio está em /var/mail/virtual
ou se o domínio está em /etc/valiases
.
Criando contas de e-mail
Acabei criando várias ferramentas para agilizar esse processo - mas adicionar um novo usuário vai no sentido de:
mkdir -p /var/mail/virtual/example.com/email
chown -R mail.mail /var/mail/virtual/example.com/
maildirmake /var/mail/virtual/example.com/email/mail
chown -R mail.mail /var/mail/virtual/example.com/
Em seguida, adicione o endereço ao courier userdb - para que eles possam fazer login
userdb [email protected] set uid=8 gid=8 home=/var/mail/virtual/example.com/email mail=/var/mail/virtual/example.com/email/mail
Certifique-se de substituir os valores quando apropriado. Também - uid
egid
precisarcomo os IDs numéricos de usuário/grupo do usuário de email.
userdbpw -md5 | userdb [email protected] set systempw
Isso solicitará uma senha, digite aquela que deseja usar para a conta.
makeuserdb
Por fim, gere os arquivos hash/shadow do userdb. Reinicie o Courier e teste se suas alterações funcionam:
authtest [email protected]
Deve produzir algo semelhante a
Authentication succeeded.
Authenticated: [email protected] (uid 8, gid 8)
Home Directory: /var/mail/virtual/example.com/email
Maildir: /var/mail/virtual/example.com/email/mail
Quota: (none)
Encrypted Password: $1$LOLCATS$THISWILLBEAHASH.
Cleartext Password: (none)
Options: (none)
Se você vir "Falha na autenticação: operação não permitida", edite /etc/courier/authdaemonrc e adicione authuserdb à linha authmodulelist.
Após a confirmação de todos os testes, reinicie os diversos serviços envolvidos ( courier-authdaemon
, exim4
), abra as portas 143, 25, 586, 495, 110 e configure as contas no seu cliente de email preferido.
Criando aliases de e-mail
Para cada domínio você deve criar um arquivo /etc/valiases
(crie se não existir) com pelo menos a seguinte linha:
*: :fail: No user at this address.
O que isto diz: Se o e-mail recebido não corresponder a nenhuma conta de e-mail registrada, o e-mail deverá falhar e ser devolvido com a mensagem: "Nenhum usuário neste endereço". Portanto, todos os e-mails enviados para dizer: [email protected]
seriam devolvidos como uma falha.
No entanto, temos alguns endereços de e-mail que desejamos manter em outro lugar - digamos[e-mail protegido]- para isso precisamos criar /etc/valiases/example.com
e o conteúdo do arquivo deve ser o seguinte:
fwd: [email protected]
*: :fail: No user at this address.
Dessa forma, mesmo que[e-mail protegido]não corresponde a nenhuma conta de e-mail no servidor, corresponde ao /etc/valiases
arquivo e o e-mail será encaminhado para[e-mail protegido]- No entanto,[e-mail protegido]ainda falhará com a mensagem "Nenhum usuário neste endereço".
Responder2
A maneira mais fácil é executar sudo tasksel install mail-server
. Isso lhe dará um servidor de e-mail com padrões sensatos. Tudo que você precisa fazer é responder a algumas perguntas. Obviamente, você ainda poderá fazer configurações manuais posteriormente, se necessário, mas na maioria dos casos não será. Basta seguir as instruções na tela e você ficará bem.
No entanto, ler sobre administração de serviços de e-mail é absolutamente recomendável.
Referências Oficiais:
Responder3
Não tenho uma "ótima resposta", mas esses links podem ser úteishttps://help.ubuntu.com/community/PostfixBasicSetupHowto#ReceptionCorreio ehttps://help.ubuntu.com/community/Postfix
Responder4
Acabei de fazer isso sozinho, você realmente precisa do postfix e, no meu caso, eu também queria um servidor imap para poder usar um bom cliente gui (sem mencionar nenhum nome) em outra máquina. Usei estes documentos:
Pombal(imap e pop3)
Na verdade, é muito simples, coloquei tudo em funcionamento em poucos minutos e estou recebendo e-mails. Isso também é útil para verificar se tudo está configurado corretamentepingabilidade.
Ah, e é claro que você terá que configurar suas entradas de DNS corretamente conforme abaixo (com base nas configurações que funcionaram para mim):
name type content
@ A ???.???.??.??
mail A ???.???.??.??
e
MX Records
Name Priority
mail.mydomain.com. 1
mail2.mydomain.com. 2
Observe o ponto final no final dos servidores de e-mail e insira seu endereço IP e nome de domínio quando apropriado.