Trabajando y gestionando la cola de correo en Exim
|Los que trabajamos como sysadmin o administradores de IT, en alguna epoca de nuestro trabajo, nos ha tocado lidiar con el servicio de correo, problemas de spam entrante y saliente, ataques de spam, en fin son miles de cosas con las cuales tenemos que lidiar a diario con el fin de mantener nuestro servidor protegido y sobre todo nuestra direccion IP limpia para que los correos que salgan de nuestro servidor sean rechazados por los demas servidores de correos del mundo.
En el dia de hoy queria compartir algunos comandos utiles a la hora de manejar la cola de correo con exim, con estos comandos, podremos ver los correos encolados, enviarlos o vaciar la cola de correo. Sin mas preambulo, manos a la obra.
Como listar los correos encolados en exim
Para sacar una lista de los correos que actualmente estan encolados, bastara con:
exim -bp
Lo cual nos arrojara algo como esto:
Explicando un poco:
- Primer campo: tiempo de creacion del mensaje
- Segundo campo: Tamaño del mensaje
- Tercer Campo es el Id del mensaje (todo mensaje tiene su id)
- Cuarto campo es la direccion que envia el mensaje
- Quinto campo y las linas de abajo son los destinatarios del mensaje
Ahora si lo que queremos es filtrar los mensajes que esten encolados de un remitente en especial, haremos uso de grep:
exim -bp|grep «user@dominio.com»
O tambien se puede filtrar por el dominio completo:
exim -bp|grep «dominio.com»
Con esto observaremos todos los correos encolados, del dominio o de alguna cuenta en especial. ¿Pero que pasa si necesitamos contar cuantos correos hay encolados de un dominio o cuenta en particular? haremos uso de wc:
exim -bp|grep «user@dominio.com» | wc -l
Esto nos dara como resultado el numero total de correos encolados de la cuenta user@dominio.com
Por ultimo, si desearamos borrar estos correos que ya tenemos identificados y filtrados, haremos lo siguiente:
exim -bp|grep «user@dominio.com»| awk {‘print $3’}| xargs exim -Mrm
De esta manera boraremos todos los correos encolados de la cuenta user@dominio.com
Ahora muchos se estaran preguntando, como hacer si deseamos vaciar toda la cola de correo, es decir eliminar todos los correos que hay encolados. Para hacer esto:
exim -bp | awk ‘/^ *[0-9]+[mhd]/{print «exim -Mrm » $3}’ | sh
Por ultimo, si lo que deseamos es tratar de enviar todos los correos encolados, lanzaremos este comando:
exim -bp | awk ‘/^ *[0-9]+[mhd]/{print «exim -Mrm » $3}’ | sh
Como ven es una forma facil de trabajar con la cola de exim, en realidad este tipo de cosas se pueden hacer de diversas formas, ya sea usando exiqgrep u otra herramienta, sin embargo queria compartir una d las tantas formas faciles sencillas para gestionar la cola de correo en exim y linux.
Qué buenos comandos, gracias por la información