primeira coisa eu sempre tento excluir o MTA, tentando enviar um email da máquina MTA usando telnet. Se isso funcionar - o MTA deve ser solucionado, se não funcionar - verifique os registros MX, as listas de RDNS e RBL
Eu tenho o seguinte problema e cenário:
Site de hospedagem da caixa Fedora: www.domain.com
PHP Helpdesk Script, que envia e-mails para usuários enviados na mesma caixa.
O problema é que o e-mail adicionado a 'domain.com' não está saindo do servidor.
O email está alojado noutra caixa.
Meu problema eu sei está no DNS, Postfix Config ou Hosts /. Anexou algumas capturas de tela.
texto alternativo http://www.hyperxr.com/1.png
texto alternativo http://www.hyperxr.com/2.png
Saída do postfix -n
allow_percent_hack = no
append_at_myorigin = no
append_dot_mydomain = no
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/libexec/postfix
data_directory = /var/lib/postfix
debug_peer_level = 2
html_directory = no
inet_protocols = all
mailq_path = /usr/bin/mailq.postfix
manpage_directory = /usr/share/man
newaliases_path = /usr/bin/newaliases.postfix
readme_directory = /usr/share/doc/postfix-2.5.5/README_FILES
relay_recipient_maps = hash:/etc/postfix/relay_recipients
sample_directory = /usr/share/doc/postfix-2.5.5/samples
sendmail_path = /usr/sbin/sendmail.postfix
setgid_group = postdrop
smtpd_sasl_local_domain =
smtpd_sasl_security_options =
swap_bangpath = no
unknown_local_recipient_reject_code = 550
Aposto que o Postfix no servidor está configurado para aceitar e-mails para domain.com, portanto, está sendo entregue localmente (ou rejeitado, e seu script PHP não está verificando e relatando erros como deveria). Execute postconf mydestination
e, se ele tiver domain.com (ou qualquer outro domínio para o qual você esteja tentando enviar e-mails), você encontrou sua resposta. Edite /etc/postfix/main.cf
e remova as entradas incorretas.
Estou apostando que womble está correto e que você configurou o servidor para aceitar e-mails para domain.com. Uma opção de depuração melhor seria postar a saída de postconf -n aqui, bem como o domínio real & nome de anfitrião. Além disso, execute o mailq para ver se o email ainda está na fila. Se não estiver, inclua a saída "tail / var / log / maillog (ou mail.log no Ubuntu)". O postfix atribui um ID gerado aleatoriamente a cada mensagem, à medida que passa pelo sistema que parece assim:
Aug 4 00:13:37 fjdx421 postfix/smtp[26029]: 930C317B539:
Isso torna muito fácil encontrar toda a saída do log referente a um email com
grep 930C317B539 /var/log/maillog
Isso torna super fácil ver exatamente o que o sistema está fazendo com a mensagem:
[root@fjdx421 postfix]# grep 930C317B539 /var/log/maillog
Aug 4 00:13:37 fjdx421 postfix/smtpd[26361]: 930C317B539: client=unknown[an.ip.add.ress]
Aug 4 00:13:37 fjdx421 postfix/cleanup[26024]: 930C317B539: message-id=<122424845.1249362817685.JavaMail.SYSTEM@WEB55>
Aug 4 00:13:37 fjdx421 postfix/qmgr[9519]: 930C317B539: from=<[email protected]>, size=4189, nrcpt=1 (queue active)
Aug 5 00:13:37 fjdx421 postfix/smtp[26029]: 930C317B539: to=<[email protected]>, relay=momail.somedomain.cfx[another.ip.add.ress], delay=0, status=sent (250 2.6.0 <122424845.1249362817685.JavaMail.SYSTEM@WEB55> Queued mail for delivery)
Aug 4 00:13:37 fjdx421 postfix/qmgr[9519]: 930C317B539: removed
btw ... eu amo postfix ...
O DNS autoritativo do seu domínio exigirá um registro MX no arquivo de zona. Como isso é feito varia de acordo com o seu provedor.
O registro MX identifica um ou mais servidores que manipularão o correio para o domínio. Para mais informações, consulte a entrada da Wikipédia.
Tags networking php postfix fedora linux