A configuração correta do DNS é essencial para o funcionamento de qualquer servidor. Quando digitamos um endereço de página no navegador de internet é pelo mapeamento DNS que o nosso site será encontrado.
Mostrarei abaixo como fazer a configuração simples da Zona DNS para um domínio, mas a mesma pode ser usada para vários domínios no mesmo servidor.
* Use a tabela DNS da sua conta na DigitalOcean para facilitar a configuração. Assine a DigitalOcean por apenas $5 dólares mensais, VPS com IP dedicado e SSD.
* Aprenda como instalar um servidor completo num VPS com Linux, Painel de Controle e Servidor de Email, clique aqui para acessar o tutorial.
Se estiver usando o painel da DigitalOcean clique em “Networking” → “Domains” e na caixa “Add a Domain” digite:
» Domain: <– seudominio.com.br (substitua pelo seu domínio e digite sem “www” ou qualquer outro subdomínio, os subdomínios serão adicionados à tabela do domínio principal)
» IP Address: <– IP_DO_SERVIDOR (digite o IP do seu servidor, ou se estiver configurando a tabela na DigitalOcean, escolha o Droplet na lista)
» Clique em “Create Record“
Alguns registros são necessários para o funcionamento básico da tabela, siga atentamente e sempre leia as observações. Explicarei para que serve cada um dos registros e como criá-los na tabela. Sempre observe o “Tipo” de cada um.
A Registro de domínio principal: Para designar a base do domínio ao IP. Inserindo este registro na tabela o seu site poderá ser acessado sem subdomínio “www” e ainda servirá como alias para outros registros na tabela. (Se estiver criando a tabela na DigitalOcean este registro já foi adicionado automaticamente)
» Select Record Type (Tipo): <– A
» Enter Name: <– @
» Enter IP Address: <– IP_DO_SERVIDOR (digite o IP do seu servidor)
B Registros NS: Se a tabela DNS foi criada na Digital Ocean o sistema inseriu automaticamente 3 registros NS apontando para os servidores deles, eles são necessários. (Se estiver escrevendo a tabela em outro hosting verifique com eles a necessidade destes registros, na CloudFlare por exemplo não há necessidade)
» ns1.digitalocean.com
» ns2.digitalocean.com
» ns3.digitalocean.com
* Para aprender a criar registros customizados (Vanity NameServers) siga o tutorial neste link
C Registro de subdomínio www: O seu site pode ser acessado pelo nome de dominio mas o correto é criar também um registro para o subdomínio “www”, pois a maioria das pessoas pensam que isso é necessário para acessar páginas e irão digitar desta forma para acessá-lo.
» Select Record Type (Tipo): <– A
» Enter Name: <– www
» Enter IP Address: <– IP_DO_SERVIDOR
» Clique em “Create A Record“
* Poderiamos usar CNAME para o tipo deste registro mas usaremos Tipo A sempre que possível, pois CNAME são mais usados em casos de apontamento para nomes de domínios externos ao servidor.
Durante meses procurei informações para chegar numa configuração otimizada para entrega de mensagens na caixa de entrada, os registros necessários são estes:
A Subdomínio para o servidor de email reverso: Muito importante para entrega de emails. Esse subdomínio deverá ser inserido somente na tabela DNS do domínio principal do servidor, aquele responsável pelo nome do VPS.
* Por exemplo, quando criamos o VPS na DigitalOcean ensinei que deve-se usar um subdomínio de prefixo ao nome do domínio para melhor entrega de emails. Em nosso caso criamos o VPS com o nome cp.seudominio.com.br, esse prefixo “cp” deverá ter um registro Tipo A na tabela do domínio seudominio.com.br e somente nele, nos demais não há necessidade.
» Select Record Type (Tipo): <– A
» Enter Name: <– cp
» Enter IP Address: <– IP_DO_SERVIDOR
» Clique em “Create A Record“
B Subdomínio de email POP: Quando configuramos um cliente de email externo podemos acessar as mensagens do servidor usando o protocolo POP3 por um endereço pop.seudominio.com.br, para habilitar isso adicione o registro.
» Select Record Type (Tipo): <– A
» Enter Name: <– pop
» Enter IP Address: <– IP_DO_SERVIDOR
» Clique em “Create A Record“
C Subdomínio de email SMTP: Da mesma forma que configuramos o acesso por um cliente de email ao POP do servidor podemos definir um acesso SMTP para envios smtp.seudominio.com.br.
» Select Record Type (Tipo): <– A
» Enter Name: <– smtp
» Enter IP Address: <– IP_DO_SERVIDOR
» Clique em “Create A Record“
* Aprenda a configurar clientes de email seguindo este tutorial.
D Registro MX: O registro MX será responsável por receber todos os emails que chegam e redirecioná-los ao servidor designado, que em nosso caso é cp.seudominio.com.br. Por exemplo, poderíamos configurar a tabela DNS de um segundo domínio e, mesmo que fosse em outro VPS, enviá-los para o servidor cp.seudominio.com.br
» Select Record Type (Tipo): <– MX
» Enter HostName: <– cp.seudominio.com.br. (note o ponto no final)
» Enter Priority: <– 5
» Clique em “Create MX Record“
* Você pode hospedar “n” domínios no mesmo VPS e configurar as caixas de emails para eles, mas para cada tabela de domínio insira este mesmo endereço (que é o FQDN do VPS). Exemplo: digamos que você esteja configurando um segundo domínio chamado fatorbinario.pw, então no registro MX daquela tabela deve-se usar cp.seudominio.com.br
D Registro DKIM: O DKIM (DomainKeys Identified Mail) assina os emails enviados a partir do servidor usando uma chave criptografada e garante que a conta está devidamente autenticada para envio.
» Select Record Type (Tipo): <– TXT
» Enter Name: <– mail._domainkey.seudominio.com.br. (note o ponto no final. este formato foi definido em nosso tutorial de DKIM, pode ser diferente se você estiver configurando uma chave DKIM externa, exemplo: Zoho Mail, mas sempre coloque um ponto no final mesmo se o serviço externo não solicitar)
» Enter Text: <– “v=DKIM1; k=rsa; p=MIGfMA0GCS….” (a chave DKIM é bem grande, não coloquei ela toda aqui. Mas deve-se colar a chave toda e sempre entre aspas duplas)
» Clique em “Create TXT Record“
* O tutorial completo de como configurar o DKIM no servidor pode ser encontrado neste link
E Registro ADSP – DKIM Auxiliar: O ADSP (Author Domain Signing Practices) é um registro auxiliar ao DKIM que serve para atestar que o autor (campo “From:” do email) é o mesmo que está enviando a mensagem, mesmo se houverem mais endereços no campo.
» Select Record Type (Tipo): <– TXT
» Enter Name: <– _adsp._domainkey.seudominio.com.br. (note o ponto no final. O prefixo _adsp não pode ser reconfigurado)
» Enter Text: <– “dkim=all” (entre aspas duplas)
» Clique em “Create TXT Record“
F Registro SPF: “Sender Policy Framework” é usado para combater falsificações de retorno de email (Return-Path). Adicionando este registro, spoofers e spammers não conseguirão forjar seu endereço de email facilmente, pois teremos um Return-Path certificado no cabeçalho das mensagens enviadas.
» Select Record Type (Tipo): <– TXT
» Enter Name: <– @
» Enter Text: <– “v=spf1 ip4:IP_DO_SERVIDOR ~all” (substitua IP_DO_SERVIDOR pelo IP do VPS. IMPORTANTE: Note o sinal de ~ “til” softfail. Em alguns tutoriais você encontra esse registro com sinal de – “menos” que significa hardfail, para melhor entrega mantenha como softfail)
» Clique em “Create TXT Record“
G Registro DMARC: “Domain-based Message Authentication, Reporting, and Conformance” é um relatório enviado à empresa que irá receber o email atestando que os registros DKIM e SPF estão em conformação com as regras de envio e os emails devidamente autenticados. A recebedora (exemplo: Gmail, Hotmail, Yahoo, etc..) repassará o email ao destinatário e, opcionalmente, emitirá um relatório diário ao responsável pelo domínio com todas as mensagens recebidas.
» Select Record Type (Tipo): <– TXT
» Enter Name: <– _dmarc.seudominio.com.br. (note o ponto no final. O prefixo _dmarc não pode ser reconfigurado)
» Enter Text: <– “v=DMARC1; p=none; pct=100; aspf=r;” (registros TXT sempre entre aspas duplas)
» Clique em “Create TXT Record“
* No campo text do registro pode-se adicionar, opcionalmente, um email de retorno que receberá um relatório diário dos envios, neste caso adicione o parâmetro “rua” desta maneira (o email de retorno pode ser qualquer um, mas para melhor certificação defina uma conta no próprio domínio de envio): “v=DMARC1; p=none; pct=100; rua=mailto:[email protected]; aspf=r;”
- Repita os passos acima para configurar outros domínios, com exceção do registro Tipo A “cp” do servidor de email (passo 3A) que deverá ser adicionado somente ao domínio principal. Lembre-se que “cp” é o prefixo do nome dado ao VPS.
- Um screenshot de exemplo pode ser visto neste link.
O seu domínio não acessará a tabela DNS criada acima automaticamente. Para isso você deverá apontar os NameServers em seu REGISTRAR (empresa onde você comprou o domínio) e aguardar a propagação de DNS que leva de 24 a 48 horas.
Para verificar a propagação use esta ferramenta: https://www.whatsmydns.net/#NS/ (digitando seu domínio).
Você pode ter a tabela DNS do seu domínio configurada em “n” diferente hostings mas somente a que estiver apontada pelos NameServers do seu REGISTRAR é que estará ativa.
Se quiser analisar os relatórios DMARC (opcional) acesse este tutorial.