Servidor de correio

De Ubuntupedia
Ir para: navegação, pesquisa

Muitas vezes os servidores de sites web são também servidores de correio dos sites que alojam. O que se pretende é poder usar endereços de correio electrónico seu.nome@exemplo.com com o domínio do site.

Neste tutorial vamos instalar os programas para obter um servidor de correio a partir de um servidor web. No entanto é perfeitamente possível criar um servidor de correio numa máquina virtual independente sem alojar qualquer tipo de site.

Configurar as DNS do domínio

Neste caso é preciso distinguir se só queremos enviar correio a partir do servidor ou se queremos também receber correio. Muitos sites apenas enviam correios gerados automaticamente por aplicações instaladas no site (por exemplo quando o Wordpress envia mensagens para recuperar a password do site).

Os ajustes de DNS em geral fazem-se no site web do seu fornecedor de domínios e a forma de o fazer varia de fornecedor para fornecedor.

DNS para enviar mensagens

Não é obrigatório configurar as DNS do domínio se só quer enviar mensagens, mas é recomendável para reduzir as hipóteses de que o correio enviado seja considerado spam.

Os únicos DNS que é recomendável alterar/adicionar para enviar correio são do tipo TXT e geralmente basta com ter um DNS de tipo TXT com o valor:

v=spf1 ip4:12.12.12.12 a mx -all

(Obviamente substituir 12.12.12.12 pelo IP da máquina virtual que será servidor de correio.)

Com este registo estamos a dizer que autorizamos que o(s) computador(es) com o IP 12.12.12.12, o IP da máquina que aloja o site (a) e o IP da máquina que recebe os correios (mx), possam enviar correio.

Com o -all estamos a dizer que queremos que todas as mensagens que não venham de um dos IPs anteriores sejam consideradas ilegitimas.

Os DNS não se actualizam de imediato. As vezes pode demorar várias horas out até dois dias até que se actualizem.

Para testar se o DNS já estão actualizados (no servidor da Google) abrir uma consola no seu computador e escrever o comando:

nslookup -q=txt exemplo.com 8.8.8.8

Obviamente é necessário substituir exemplo.com pelo seu nome de domínio. 8.8.8.8 é o IP do servidor de DNS da Google e é opcional.

Se tudo estiver bem a resposta ao comando anterior incluirá a alteração das DNS que acaba de realizar.

DNS para receber mensagens

Para poder receber mensagens de correio de um domínio é obrigatório ter bem configurado os registos de DNS de tipo MX.

É pratica comum criar um sub-domínio com um registo MX com o nome do domínio terminando em . e o valor terminando também em ., no entanto alguns fornecedores não o pedem. Consulte o manual do seu fornecedor de nomes de domínio.

exemplo.com.

e o valor:

10 mx.exemplo.com.

(O número 10 é a prioridade e, dependendo do seu fornecedor de domínios pode ser introduzido em campo separado)

Depois é preciso criar um sub-domínio com um registo tipo A com o nome:

mx.exemplo.com

e com o IP da sua máquina como valor:

12.12.12.12

Para testar que o domínio está correctamente configurado no terminal escrever os comandos:

nslookup -q=mx exemplo.com 8.8.8.8

nslookup -q=a mx.exemplo.com 8.8.8.8

Tenha em conta que poderá tardar algumas horas até que as DNS do domínio se actualizem. Quando o processo estiver concluído os correios enviados para qualquer utilizador do seu domínio qualquer.coisa@exemplo.com serão enviados para o computador com o seu IP. (no exemplo 12.12.12.12).

Para poder guardar e gerir o correio recebido é necessário instalar e configurar os programas de gestão de correio e abrir o porto 25 da sua firewall.

Instalar programas para gerir o correio

Chegou o momento de instalar o Postfix e outros programas para gerir o correio. A partir do terminal da sua máquina virtual executar o comando:

sudo apt-get install mailutils

Nas opções de instalação escolher:

  1. Internet
  2. Accept default domain

Depois editar o ficheiro de configuração do Postfix com o comando:

sudo nano /etc/postfix/main.cf

Alterar a linha com o nome myhostname para o domínio principal do servidor:

myhostname = exemplo.com

E reiniciar o Postfix:

sudo service postfix restart

Alterar o ficheiro de configuração com o nome de domínio com o comando:

sudo pico /etc/mailname

voltar a adicionar o domínio principal:

exemplo.com

E reiniciar o Postfix:

sudo service postfix restart

Chegou o momento de testar a instalação enviando um correio para uma conta que tenha noutro servidor de correio como por exemplo o Gmail ou o hotmail. Experimente com o comando:

echo "Aquí vai o corpo do mail" | mail -s "Esta é a linha de assunto" seu.mail.no.gmail@gmail.com

Com a linha anterior apenas se testa se o mail é enviado o remetente pode não aparecer bem configurado.

Encaminhar o correio de sistema (interno do servidor)

É preciso configurar o encaminhamento do correio interno do servidor editando o ficheiro aliases com o comando:

sudo nano /etc/aliases

e alterando o conteúdo para:

# See man 5 aliases for format
postmaster:    root
root:          o.seu.mail.noutro.servidor@gmail.com

E activando os novos aliases:

sudo newaliases
sudo service postfix restart

Encaminhar o correio externo

Agora é preciso configurar o Postfix para lidar com as contas de correio externas:

Primeiro editamos main.cf com o comando:

sudo nano /etc/postfix/main.cf

e no final do ficheiro adicionamos estas duas linhas:

virtual_alias_domains = exemplo.com exemplo2.com
virtual_alias_maps = hash:/etc/postfix/virtual

Com a primeira linha especificamos os domínios para receber correio e com a segunda definimos a localização de um ficheiro de configuração. Agora é preciso criar e configurar este ficheiro com o comando:

sudo nano /etc/postfix/virtual

Um exemplo de ficheiro virtual seria:

# Adicione direcções. À esquerda o endereço e à direita o destino (utilizador ou conta noutro servidor)
exemplo1@exemplo.com exemplo1@gmail.com
exemplo2@exemplo.com ubuntu
grupo-de-utilizadores@exemplo.com exemplo1@gmail.com exemplo2@gmail.com ubuntu

As linhas acima servem de exemplo. Pode copiar e colar fazendo as alterações necessárias.

Agora é preciso actualizar com os comandos:

sudo postmap /etc/postfix/virtual
sudo service postfix restart

Por fim é preciso abrir a porta 25 na firewall do seu servidor, ou o mesmo não aceitará correio externo.

Instalar programa básico para ler e escrever correios

Com a configuração anterior já pode receber o correio enviado para exemplo2@exemplo.com no utilizador (shell/ssh) ubuntu, mas ainda não tem instalado nenhum programa para ler e escrever o correio.

O Mutt é um programa de gestão de correio muito simples que funciona directamente no terminal/shell (via ssh). Para instalar o Mutt use o comando:

sudo apt-get install mutt

E para utilizar o Mutt use o comando:

mutt

Para configurar o Mutt (ao nível mais básico) crie um ficheiro de configuração na sua área de utilizador com os comandos:

cd ~/
pico .muttrc

E pode usar as linhas seguintes como exemplo para criar a sua configuração básica:

set realname = "O seu nome"
set from = "caixa.correio@exemplo.com"
set charset = "utf-8"

Activar o accesso via IMAP/SMTP

Aceder ao correio via terminal/shell com o Mutt não é prático. Se quiser utilizar o correio de forma cómoda terá que instalar e configurar programas que permitam aceder ao correio via IMAP e SMTP.

Quando este acesso estiver devidamente configurado poderá aceder ao seu correio com programas como o Thunderbird ou clientes webmail como o SquirrelMail ou o Roundcube. Poderá também aceder ao seu correio a partir de programas no seu telemóvel e tablet.