El 2004-10-29 a las 12:59 +0200, Emiliano Sutil escribió:
Te decía antes que podías aumentar la "verbosidad" (¿existe en español?) del
log, pero unicamente para el dominio "noexiste.test.es".
Oye yo le pongo esto en el main.cf
debug_peer_list = noexiste.test.es
Mando un correo a una direccion de ese dominio y no me hace nada especial,
cuando lo active tuve que poner
debug_peer_list = 127.0.0.1 para que me registrara algo mas, eso si registro
todo, hasta mis bolsillos si me descuido :-)
Pffff!
Vaya. Revaya. :-(
Mmmm.
Entonces parece ser que lo que hace es convertir ese nombre en IP, y como
no puede, no lo hace.
Estamos buenos.
Naaaaa, te vas a la sala de servidores a las 4 de la madrugada, y activas
el debug a todo con una mano y con la otra envias al dominio inexistente
:-P
¡Ah, por cierto! Un truco. En /etc/syslog.conf
#mail.* -/var/log/mail
mail.err /var/log/mail.err
#Cer: (info es demasiado)
mail.notice -/var/log/mail
mail.debug -/var/log/mail.debug
Y en /etc/logrotate.d/syslog:
/var/log/mail /var/log/mail.info /var/log/mail.warn /var/log/mail.err /var/log/mail.debug {
¿Pa' que sirve eso? Pos pa' que la información extensa, la de debug, vaya
a otro fichero de log. Puedo incluso rotarlo de otra forma, si mail.debug
lo consideramos menos importante: en vez de guardarlos por un año, pues
por tres meses.
y me manda el correspondiente mensaje al daemon.
una cosa, a mi el correo me llega indicandome eso,
This is the Postfix program at host adslinux.iranon.com.
...
: [zp99ww.com]: Name or service not known
Esta es la parte más interesante del mio:
[ Part 2: "Delivery report" ]
Reporting-MTA: dns; nimrodel.valinor
X-Postfix-Queue-ID: 561B728585
X-Postfix-Sender: rfc822; c*@tiscali.es
Arrival-Date: Fri, 29 Oct 2004 11:28:43 +0200 (CEST)
Final-Recipient: rfc822; inexistente@noexiste.test.es
Action: failed
Status: 5.0.0
Diagnostic-Code: X-Postfix; [noexiste.test.es]: Name or service not known
Por cierto, que tiene cierto "morbo", porque tiscali aceptó el
correo de rechazo originado en un "from" inexistente ;-)
Pero en los logs no he visto que me salga una linea similar a la tuya, Puede
que haya algun problema con el bouncing? de hecho no me sale la palabra
bounced en todo el log, cosa que me parece muy rara.
Igual mis problemas vienen por ahi.
Te pongo mi log para que compares:
Oct 29 11:16:51 nimrodel ip-up.local: --> Down ppp0 Recvd/Snt: 1272439/330227 in 939 S.
Oct 29 11:28:42 nimrodel postfix/smtpd[8512]: connect from localhost[127.0.0.1]
Oct 29 11:28:42 nimrodel postfix/smtpd[8512]: C701B28584: client=localhost[127.0.0.1]
Oct 29 11:28:42 nimrodel postfix/cleanup[8515]: C701B28584: message-id=
Oct 29 11:28:42 nimrodel postfix/smtpd[8512]: disconnect from localhost[127.0.0.1]
Oct 29 11:28:42 nimrodel postfix/qmgr[5220]: C701B28584: from=, size=543, nrcpt=1 (queue active)
El pine envia el correo, y el postfix lo encola
Oct 29 11:28:42 nimrodel amavis[7532]: (07532-06) ESMTP::10024
/var/spool/amavis/amavis-20041029T110836-07532: -> Received: SIZE=543 from
nimrodel.valinor ([127.0.0.1]) by localhost (nimrodel [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 07532-06 for
; Fri, 29 Oct 2004 11:28:42 +0200 (CEST)
El postfix se lo ha pasado al amavis-new mediante ESMTP, en el puerto
10024. Ahora que me fijo, lo ha hecho por ipv6. Manda l*! Patiné.
Oct 29 11:28:42 nimrodel amavis[7532]: (07532-06) Checking: ->
Oct 29 11:28:43 nimrodel amavis[7532]: (07532-06) FWD via SMTP: [127.0.0.1]:10025 ->
El amavis lo vuelve a enviar al postfix mediante smtp (ipv4).
Oct 29 11:28:43 nimrodel postfix/smtpd[8518]: connect from localhost[127.0.0.1]
Oct 29 11:28:43 nimrodel postfix/smtpd[8518]: 561B728585: client=localhost[127.0.0.1]
El postfix lo recibe, y lo encola como 561B728585 - que no es el original.
Oct 29 11:28:43 nimrodel postfix/cleanup[8515]: 561B728585: message-id=
Bueno, de hecho es el proceso cleanup quien lo encola:
cleanup - canonicalize and enqueue Postfix message
The cleanup daemon processes inbound mail, inserts it into the
incoming mail queue, and informs the queue manager of its arrival.
Oct 29 11:28:43 nimrodel postfix/smtpd[8518]: disconnect from localhost[127.0.0.1]
Oct 29 11:28:43 nimrodel postfix/qmgr[5220]: 561B728585: from=, size=993, nrcpt=1 (queue active)
Oct 29 11:28:43 nimrodel amavis[7532]: (07532-06) Passed, -> , Message-ID: , Hits: -
El amavis presenta su informe.
Oct 29 11:28:43 nimrodel postfix/smtp[8516]: C701B28584: to=, relay=localhost[127.0.0.1], delay=1, status=sent (250 2.6.0 Ok, id=07532-06, from MTA: 250 Ok: queued as 561B728585)
Oct 29 11:28:43 nimrodel postfix/qmgr[5220]: C701B28584: removed
Ah, mira, esto es muy curioso, no me había dado cuenta al mirar tu log del
otro dia. Es ahora cuando el correo que había encolado el pine, es decir,
antes de pasar por el amavis, se da por enviado y se borra. Esto es
importante: el correo que pasa de un servidor a otro, e incluso de un
servicio a otro, no se puede borrar hasta que el seguiente paso no diga
que lo tiene grabado. Por eso el postfix/qmgr dice que "queue active",
porque lo estaba entregando a otro servicio, y éste no lo había registrado
como "entregado". En este momento, es el que salió del amavis el que está
"active".
Esto tiene algunos extremos y consecuencias interesantes: los
buenos administradores de buenos servidores ponen la cola del
correo en una partición marcada como "sync", es decir, sin caché.
Eso hace perder rendimiento, obviamente, pero asegura que se graba
físicamente en disco antes de que el software continue (quizás
discutible, pues la caché propia del disco duro puede aguantarlo
una chispa).
Como consecuencia de esto, estos mismos servidores van a mirar con
muy malos ojos a los correos grandes, y probablemente limiten su
tamaño considerablemente. Basta imaginar lo que pueden hacer una
tacada de ficheros de diez megas en un servidor cargado que no
puede cachear: El disco va que no puede, y todo el sistema se
vuelve lento, puesto que el disco no puede atender peticiones
hasta que termine de grabar ese fichero, y no puede optimizarlo
para grabar cuando realmente le convenga, sino "ahora".
Oct 29 11:28:53 nimrodel postfix/smtp[8516]: 561B728585: to=, relay=none, delay=10, status=deferred (Host or domain name not found. Name service error for name=noexiste.test.es type=MX: Host not found, try again)
Primer intento de envio: mi dns local le ha dicho al postfix que no sabe
donde está noexiste.test.es, que pruebe de nuevo - como en ese momento no
tenía conexión, eso es lo que responde. Un poco más tarde conecto:
Oct 29 12:03:20 nimrodel ip-up.local: --> Up ppp0 /dev/ttyS1 115200 L: 81.41.198.101 R: 80.58.197.102 Par:
Oct 29 12:03:23 nimrodel ip-up.local.doit: --> Starting mail and news send/fetch, and fidonet poll (expensive)
Oct 29 12:03:24 nimrodel postfix/smtp[9382]: 561B728585: to=, relay=none, delay=2081, status=bounced ([noexiste.test.es]: Name or service not known)
Oct 29 12:03:24 nimrodel postfix/cleanup[8691]: 7E65A28584: message-id=<20041029100324.7E65A28584@nimrodel.valinor>
Oct 29 12:03:24 nimrodel postfix/qmgr[5220]: 7E65A28584: from=<>, size=2689, nrcpt=1 (queue active)
Oct 29 12:03:24 nimrodel postfix/qmgr[5220]: 561B728585: removed
Bien, pues ahora ya ha dicho que lo rebota, y borra el mensaje de la cola.
Lo que no está claro, no se ve, es que el mensaje 7E65A28584 es el email
de rebote. Lo se porque lo veo mas tarde:
Oct 29 12:03:29 nimrodel postfix/smtp[9382]: 7E65A28584: to=, relay=smtp.tiscali.es[212.166.64.67], delay=5, status=sent (250 <417E0F1700060136> Mail accepted)
Oct 29 12:03:29 nimrodel postfix/qmgr[5220]: 7E65A28584: removed
Eso el lo que comentaba antes, que tiscali lo acepta aún teniendo un
remite inexistente. Tsk, tsk ;-)
Bueeeno... yo también he aprendido un poquito más. Puedes comparar la
secuencia con la tuya.
Tengo una hipótesis para los repetidos: si el amavis ha recibido el
correo, pero reporta que no (erroneamente), el postfix lo volverá a
enviar. El resultado es que el postfix recibiría multiples copias desde el
amavis.
Por ahí deben ir los tiros. Ahora, ¿porqué rechaza la conexión?
Problema...
Te voy a poner mi configuración, la del /etc/postfix/master.cf, y tu
comparas - creo recordar que tu tenías puestas un montón de opciones, no
se que es lo que hacen todas ellas:
#
==========================================================================
# service type private unpriv chroot wakeup maxproc command + args
# (yes) (yes) (yes) (never) (100)
#
==========================================================================
#Cer: estaba en dos, aumento a 3. Intento ver si eso evita los bloqueos del inicio.
smtp inet n - n - 3 smtpd -o content_filter=smtp:[localhost]:10024
#smtps inet n - n - 2 smtpd -o smtpd_tls_wrappermode=yes -o content_filter=smtp:[localhost]:10024
# -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes
#submission inet n - n - - smtpd
# -o smtpd_enforce_tls=yes -o smtpd_sasl_auth_enable=yes
#628 inet n - n - - qmqpd
pickup unix n - n 60 1 pickup
cleanup unix n - n - 0 cleanup
qmgr unix n - n 300 1 qmgr
#qmgr unix n - n 300 1 oqmgr
rewrite unix - - n - - trivial-rewrite
bounce unix - - n - 0 bounce
defer unix - - n - 0 bounce
trace unix - - n - 0 bounce
verify unix - - n - 1 verify
flush unix n - n 1000? 0 flush
proxymap unix - - n - - proxymap
smtp unix - - n - - smtp
relay unix - - n - - smtp
# -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
showq unix n - n - - showq
error unix - - n - - error
local unix - n n - - local
virtual unix - n n - - virtual
lmtp unix - - n - - lmtp
anvil unix - - n - 1 anvil
localhost:10025 inet n - n - - smtpd -o content_filter=
#
# Interfaces to non-Postfix software. Be sure to examine the manual
# pages of the non-Postfix software to find out what options it wants.
#
# maildrop. See the Postfix MAILDROP_README file for details.
#
maildrop unix - n n - - pipe
flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}
cyrus unix - n n - - pipe
user=cyrus argv=/usr/lib/cyrus/bin/deliver -e -r ${sender} -m ${extension} ${user}
uucp unix - n n - - pipe
flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
ifmail unix - n n - - pipe
flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
bsmtp unix - n n - - pipe
flags=Fq. user=foo argv=/usr/local/sbin/bsmtp -f $sender $nexthop $recipient
# Estaba en 10; el amavis, en 2. Pongo ambos a 5
vscan unix - n n - 5 pipe
user=vscan argv=/usr/sbin/amavis ${sender} ${recipient}
procmail unix - n n - - pipe
flags=R user=nobody argv=/usr/bin/procmail -t -m /etc/procmailrc ${sender} ${recipient}
--
Saludos
Carlos Robinson