Como o Thunderbird envia e-mail?

0

Bem, o título pode ser um pouco enganador, mas não consegui encontrar uma maneira melhor de descrever minha pergunta. Eu tentei configurar minha máquina para enviar e-mail através da função php mail() . Acontece que não posso. Meu ISP está bloqueando a porta 25, então não tenho sorte. Então, por curiosidade, configurei o Thunderbird com uma conta do Gmail e enviei uma mensagem para uma conta do Hotmail. Isso funcionou. Fiquei curioso para saber como o Thunderbird consegue enviar os emails.

Eu vi na configuração da conta do Gmail no Thunderbird que ele está usando uma porta diferente, não 25. O Thunderbird parece definir esses valores automaticamente, o que é muito bom. Um tempo atrás eu queria criar uma conta no Thunderbird, e eu tive que inserir manualmente os valores do servidor SMTP e os valores IMAP / POP3, então é legal ver que eles fazem isso automaticamente agora.

Também verifiquei os registros de e-mail e nada foi alterado. Eu acho que isso é um acéfalo, já que o e-mail não está sendo enviado pelo sendmail do postfix, mas pelo gmail. Está certo?

Bem, minha pergunta é como o Thunderbird consegue enviar e-mails? e mais importante, posso fazer algo semelhante para poder enviar e-mail dos meus scripts php?

Eu sei que isso pode ser uma pergunta "estúpida", mas eu realmente não sei nada sobre isso.

E como eu já estou perguntando, onde posso aprender sobre isso? Eles ensinam na escola? Talvez para cientistas da computação? O que é um bom livro para começar neste mundo agradável de e-mail, SMTP, POP3 e outras coisas.

    
por Buzu 19.04.2012 / 08:06

2 respostas

1

Para enviar um e-mail ao seu cliente de e-mail (Thunderbird ou seu script PHP), você deve se conectar a um servidor SMTP que possa retransmitir o e-mail pela Internet para finalmente acessar o servidor de e-mail do destinatário. A porta padrão para SMTP é 25, mas outras portas como 587 ou 465 às vezes podem ser usadas em vez disso, geralmente com algum tipo de criptografia, como SSL.

Qual porta e criptografia usar depende do servidor SMTP que você está usando. O Thunderbird, como você mencionou, pode detectar isso testando portas e protocolos comuns. Para enviar e-mail via SSL de um script PHP, você pode, por exemplo, usar o PEAR Mail .

As informações sobre como os protocolos de e-mail funcionam provavelmente não devem ser consideradas de conhecimento comum. Wikipedia , claro, tem uma visão geral, mas como você diz, um livro é provavelmente recomendado se você quiser ir mais fundo.

    
por 19.04.2012 / 08:27
0

Eu sei que você resolveu isso, mas esta é uma resposta à pergunta original: como o thunderbird envia e-mails?

O cliente Thunderbird é fornecido com informações de conexão para alguns provedores de e-mail conhecidos, incluindo (como você viu) gmail, hotmail, yahoo e provavelmente alguns outros. A configuração saberia:

  • Protocolo de entrada - POP3 ou IMAP (infelizmente, o Thunderbird não pode fazer o Exchange: protocolo Exchange licenciado apenas pela Microsoft para dispositivos móveis)
  • Protocolo para saída - praticamente universalmente SMTP
  • Portas para onde os serviços estão.
  • Eu preciso autenticar para o servidor SMTP? (Os servidores SMTP geralmente precisam de autenticação agora, ou então você fornecerá mais spam)
  • Criptografia? TLS / SSL? ou suporta STARTTLS?

Então, quando você criou sua conta, você disse ao Thunderbird "[email protected]". Ele viu que era gmail.com e usou o que a configuração sabia sobre a conta (IMAP / SSL em imap.gmail.com, SMTP / SSL em smtp.gmail.com, etc.)

Quando você envia um e-mail, o Thunderbird sabe que precisa fazer login no servidor SMTP, ativar a criptografia e enviar a mensagem com um formato muito específico .

No que diz respeito ao aprendizado, verifique os RFCS , eles são a última palavra sobre o que viaja pelos fios. Além disso, verifique os documentos para postfix, sendmail e outros MTAs (Mail Transfer Agents).

    
por 06.06.2012 / 01:33