Hay varias cosas que se pueden hacer para que la gesti�n de un sitio sendmail sea eficiente. Se proporcionan varias herramientas en el paquete sendmail; echemos un vistazo a las m�s importantes de �stas.
El correo es encolado en el directorio /var/spool/mqueue antes de ser transmitido. Este directorio se llama la cola de correo[1]. El programa sendmailproporciona un m�todo para mostrar una lista formateada de todos los mensajes de correo en la cola y su estado.
La orden /usr/bin/mailq es un enlace simb�lico al ejecutable de sendmail y se comporta id�nticamente a:
# sendmail -bp |
$ mailq Mail Queue (1 request) --Q-ID-- --Size-- -----Q-Time----- ------------Sender/Recipient------------ RAA00275 124 Wed Dec 9 17:47 root (host map: lookup (tao.linux.org.au): deferred) [email protected] |
Podemos forzar sendmail para procesar la cola ahora mediante la instrucci�n /usr/bin/runq.
La orden runq no produce ninguna salida. sendmail comenzar� procesando la cola de correo en segundo plano.
Si usa una conexi�n a Internet temporal mediante marcado telef�nico con una direcci�n IP fija y delega en un anfitri�n MX para recibir su correo mientras est� desconectado, encontrar� �til forzar al anfitri�n MX para que procese su cola de correo tan pronto como se establezca una conexi�n
Un peque�o programa perl se incluye con la distribuci�n de sendmail que hace esto simple para los anfitriones de correo que lo soportan. El gui�n etrn tiene como mucho el mismo efecto en un anfitri�n remoto como la instrucci�n runq tiene en el nuestro. Si invocamos la orden como se indica en este ejemplo:
# etrn vstout.vbrew.com |
T�picamente a�adir�a esta instrucci�n al gui�n PPP ip-up de manera que se ejecute tan pronto como la conexi�n de red sea establecida.
sendmail almacena datos de los vol�menes de tr�fico de correo y alguna informaci�n sobre los anfitriones a los cu�les ha entregado correo. Hay dos instrucciones disponibles para mostrar esta informaci�n, mailstats, y hoststat.
La orden mailstats muestra estad�sticas del volumen de correo procesado por sendmail. La hora a la que la recogida de datos comenz� se imprime primero, seguida de una tabla con una columna para cada transporte configurado y una mostrando un resumen total de todo el correo. Cada l�nea presenta ocho puntos de informaci�n:
Campo | Significado |
---|---|
M | El n�mero del transporte (protocolo de transporte) |
msgsfr | El n�mero de mensajes desde el transporte |
bytes_from | Los Kbytes de correo desde el transporte |
msgsto | El n�mero de mensajes enviados al transporte |
bytes_to | Los Kbytes de correo enviados al transporte |
msgsreg | El n�mero de mensajes rechazados |
msgsdis | El n�mero de mensajes descartados |
Mailer | El nombre del transporte |
Ejemplo 18-5. Ejemplo de la Salida de la Instrucci�n mailstats
# /usr/sbin/mailstats Statistics from Sun Dec 20 22:47:02 1998 M msgsfr bytes_from msgsto bytes_to msgsrej msgsdis Mailer 0 0 0K 19 515K 0 0 prog 3 33 545K 0 0K 0 0 local 5 88 972K 139 1018K 0 0 esmtp ============================================================= T 121 1517K 158 1533K 0 0 |
Estos datos son recogidos si la opci�n StatusFile est� activada en el fichero sendmail.cf y el fichero de estado existe. T�picamente a�adir�a lo siguiente a su fichero sendmail.cf:
# status file O StatusFile=/var/log/sendmail.st |
Para reiniciar la recogida de estad�sticas, necesita hacer el fichero de estad�sticas de longitud cero:
> /var/log/sendmail.st |
La instrucci�n hoststat muestra informaci�n sobre el estado de los anfitriones a los que sendmail ha intentado enviar correo. La instrucci�n hoststat es equivalente a invocar sendmail como:
sendmail -bh |
La salida presenta cada anfitri�n en su propia l�nea, y para cada uno la hora desde que se intent� la entrega a �l, y el mensaje de estado recibido a esa hora.
Ejemplo 18-6 muestra la clase de salida que podr�a esperarse de la instrucci�n hoststat. N�tese que la mayor parte de los resultados indican una entrega exitosa. El resultado para earthlink.net, por otra parte, indica que la entraga no fue exitosa. El mensaje de estado puede algunas veces ayudar a determinar la causa del fallo. En este caso, la conexi�n expir�, probablemente porque el anfitri�n estaba ca�do o inalcanzable a la hora en que la entrega se intent�.
Ejemplo 18-6. Ejemplo de Salida de la Instrucci�n hoststat
# hosts at -------------- Anfitri�nname ---------- How long ago ---------Results--------- mail.telstra.com.au 04:05:41 250 Message accepted for scooter.eye-net.com.au 81+08:32:42 250 OK id=0zTGai-0008S9-0 yarrina.connect.com.a 53+10:46:03 250 LAA09163 Message acce happy.optus.com.au 55+03:34:40 250 Mail accepted mail.zip.com.au 04:05:33 250 RAA23904 Message acce kwanon.research.canon.com.au 44+04:39:10 250 ok 911542267 qp 21186 linux.org.au 83+10:04:11 250 IAA31139 Message acce albert.aapra.org.au 00:00:12 250 VAA21968 Message acce field.medicine.adelaide.edu.au 53+10:46:03 250 ok 910742814 qp 721 copper.fuller.net 65+12:38:00 250 OAA14470 Message acce amsat.org 5+06:49:21 250 UAA07526 Message acce mail.acm.org 53+10:46:17 250 TAA25012 Message acce extmail.bigpond.com 11+04:06:20 250 ok earthlink.net 45+05:41:09 Deferred: Connection time |
La instrucci�n purgestat vac�a los datos del anfitri�n recogidos y es equivalente a invocar sendmail como:
# sendmail -bH |
Las estad�sticas continuar�n creciendo hasta que usted las purge. Quiz� quiera ejecutar peri�dicamente la instrucci�n purgestat para hacer m�s f�cil buscar y encontrar entradas recientes, especialmente si tiene un sitio con mucho tr�fico. Podr�a poner la orden en un fichero crontab para que se ejecute autom�ticamente, o tan s�lo hacerlo usted mismo ocasionalmente.
[1] | mail spool |