He definido SMART_HOST como un servidor específico, llamémoslo foo.bar.com. Sin embargo, cuando envío un correo de prueba usando 'sendmail -t', sendmail intenta usar mx.bar.com, que posteriormente rechaza mi correo. He verificado que foo.bar.com funciona y que mx.bar.com no funciona (sí, telnet). He recompilado sendmail.mc vi make, make -C y m4. Verifiqué la entrada DS en sendmail.cf. He reiniciado sendmail correctamente. No estoy seguro de cómo proceder en este momento. ¿Algunas ideas?
Aquí está mi línea SMART_HOST:
definir ( SMART_HOST',
foo.bar.com')dnl
...y aquí está el resultado de un correo de prueba. Nunca intenta utilizar foo.bar.com, sino que utiliza mx.bar.com.
$ echo subject: test; echo | sendmail -Am -v -flocaluser -- [email protected] subject: test
[email protected]... Connecting to mx.bar.com via relay...
220 mx.bar.com ESMTP
>>> EHLO myhost.bar.com
250-mx.bar.com
250-8BITMIME
250 SIZE 52428800
>>> MAIL From:<[email protected]> SIZE=1
250 sender <[email protected]> ok
>>> RCPT To:<[email protected]>
550 #5.1.0 Address rejected.
>>> RSET
250 reset
localuser... Connecting to local...
localuser... Sent
Closing connection to mx.bar.com.
>>> QUIT
221 mx.bar.com
Y por último, aquí hay un correo de prueba enviado usando foo.bar.com:
$ hostname
myhost.bar.com
$ telnet foo.bar.com 25
Trying ***.***.***.***...
Connected to foo.bar.com (***.***.***.***).
Escape character is '^]'.
220 foo.bar.com ESMTP Sendmail 8.14.1/8.14.1/ITS-7.0/ldap2-1+tls; Tue, 21 Dec 2010 13:27:44 -0700 (MST)
helo foo
250 foo.bar.com Hello myhost.bar.com [***.***.***.***], pleased to meet you
mail from: [email protected]
250 2.1.0 [email protected]... Sender ok
rcpt to: [email protected]
250 2.1.5 [email protected]... Recipient ok
data
354 Enter mail, end with "." on a line by itself
testing
.
250 2.0.0 oBLKRikZ003758 Message accepted for delivery
quit
221 2.0.0 foo.bar.com closing connection
Connection closed by foreign host.
¿Algunas ideas?
Gracias
Respuesta1
Es posible que Sendmail esté realizando una búsqueda MX en el dominio, que no es necesariamente lo que usted desea. Escriba el nombre del host entre corchetes para evitarlo.
define(`SMART_HOST',`[foo.bar.com]')dnl