Como funciona o roteamento de e-mail?

0

Eu quero entender como funciona o roteamento de e-mail. Digamos que estou tentando enviar uma mensagem para alguém @ gmail.com. De acordo com meu entendimento atual, os seguintes passos acontecem:

  1. consulta de DNS MX no gmail.com.
  2. Escolha um servidor de troca de mensagens com o maior valor de prioridade (número mais baixo).
  3. Envie e-mail para trocar o servidor na porta 25 (smtp).

Mas quando eu fiz uma varredura de porta (usando o nmap) na porta 25, descobri que a porta 25 está fechada para o servidor de troca de mensagens do domínio gmail.com (gmail-smtp-in.l.google.com). Este é o caso da maioria dos domínios de email. Por favor, ajude a entender o fluxo de roteamento de e-mail.

    
por user2586432 15.10.2014 / 10:24

1 resposta

4

O que você está perdendo é que nmap não é o verificador completo de portas abertas.

Por um lado, é uma idéia terrível fazer uma varredura de porta completa apenas para ver se uma única porta está aberta. telnet funciona perfeitamente bem:

shadur@huginn:~$ telnet gmail-smtp-in.l.google.com.  25 
Trying 2a00:1450:4013:c01::1b...
Connected to gmail-smtp-in.l.google.com.
Escape character is '^]'.

Mark faz uma ótima explicação possível no comentário da sua pergunta; Outra possibilidade é que o servidor de e-mail do google, que quase certamente está sob ataques quase constantes de oportunistas, perceba a tentativa de varredura de porta e bloqueie prontamente seu endereço IP pelos próximos cinco minutos antes de chegar à porta 22, deixe sozinho 25.

Dito isto, o diagrama de fluxo completo é um pouco maior:

  1. Você redige a mensagem em seu cliente de e-mail, seja ele qual for (chamado de Mail User Agent ou MUA).
  2. O MUA consulta suas configurações e o campo Para: para ver como isso deve ser tratado, em seguida, chama o servidor de mensagens de saída apropriado (MTA - Mail Transfer Agent) que sua configuração informa que foi encarregado de lidar com isso. Em sistemas unix, isso é normalmente localhost ; Os sistemas Windows tendem a configurar o servidor de correio de saída do provedor.
  3. O MTA que recebe a mensagem do MUA verifica sua configuração e a compara com a origem, o destino e o corpo da mensagem para decidir o que deve ser feito com ela. Dependendo do acima mencionado, isso pode variar de rejeitá-lo diretamente para a verificação de vírus / spam / etc ou enviá-lo.
  4. Se o MTA determinar que a mensagem deve ser aceita, mas o domínio do destinatário não estiver na lista de domínios a serem processados localmente, tentará transmitir a mensagem para o domínio do destinatário. MX ou um configurado "host inteligente". (A maioria dos sistemas unix mencionados no # 3 tem seu servidor smtp localhost configurado para usar o servidor de correio do seu provedor para o correio de saída). O "host inteligente" selecionará isso na etapa 3.
  5. Quando um MTA no link decide enviá-lo diretamente ao destinatário, ele primeiro tenta enviá-lo para o MX principal. Se esse MX não responder, ele tentará o restante dos servidores MX em ordem decrescente de prioridade até receber uma resposta explícita de aceitação ou rejeição de um ou até que ele fique sem os registros MX para tentar, o que ocorrer primeiro. / li>
  6. Quando um MTA nos registros MX do domínio do destinatário receber a mensagem, ele também consultará a configuração sua e fará a correspondência entre os cabeçalhos e o conteúdo da mensagem para determinar o que fazer com o mesmo repertório das opções mencionadas no item 3, mas com a opção adicional de "entregar ao usuário final" por meio do Mail Delivery Agent (MDA) configurado.
  7. Quando o MDA recebe a mensagem, ele também consulta sua configuração para decidir como a mensagem deve ser tratada e em qual caixa de correio (se houver) a mensagem deve ser descartada.
por 15.10.2014 / 10:35