Exim: Los comandos más útiles para gestión y control

Exim es uno de los servidores de correo más utlizados en la actualidad, su performance y seguridad lo hacen el más elegidos de la actualidad.

En este post te enseñaremos varios comandos para poder resolver problemas o detectar spam y gestionar nuestro servidor de correo, un recuento muy util que cualquier sysadmin debería tener.

Verificar la cantidad de correos en cola de un dominio

# exim -bp | grep 'dominio.com'

Ver la cantidad de correos en cola

# exim -bpc

Listar el número de correos en estado «Frozen»

# exim -bpr | grep frozen | wc -l

Eliminar los correos en estado «Frozen»

# exim -bpr | grep frozen | awk {'print $3'} | xargs exim -Mrm

Eliminar un correo sin enviar un correo de error al remitente

# exim -Mrm ID

Eliminar un correo enviando un correo de error al remitente

# exim -Mg ID

Forzar el envío de un correo en concreto

# exim -M ID

Escanear el log de exim y listar la cantidad de correos enviados por cada cuenta de email del servidor

# cat /var/log/exim_mainlog | grep "A\=dovecot_login" | awk -F"A=dovecot_login:" {'print $2'} | cut -f1 -d' ' | sort | uniq -c | sort -n | awk {'print $1, " correos enviados por " , $2'}

Escanear el log de exim y listar la cantidad de correos enviados por un dominio

# grep dominio.com /var/log/exim_mainlog | grep dovecot_login | awk -F"dovecot_login:" '{print $2}' | awk '{print $1}' | sort | uniq -c | sort -n

Detectar correos enviados por phpmail

# find ./ -name \*.php -exec grep -l "mail(" {} \;

Ver la cabecera de un correo

# exim -Mvh ID

Eliminar los todos los correos que hay en cola

# exim -bp | awk '/^ *[0-9]+[mhd]/{print "exim -Mrm " $3}' | bash

Eliminar correos de una dirección de correo que están en cola

# for i in $(exim -bp|grep cuenta@dominio.com|grep -|grep @|awk {'print $3'});do exim -Mrm $i;done

Ver el cuerpo de un correo

# exim -Mvb ID

Ver el log de un correo

# exim -Mvl ID

Forzar el envio de la cola de correo

# exim -qf

Cuántos correos hay en la cola, listado por cuenta de correo

# exim -bp|awk 'NF>1{print $4}' | sort | uniq -c |sort -nk1

Cuántos correos hay en la cola, listado por dominio

# exim -bp | /usr/sbin/exiqsumm

Explorar el log de exim buscando cuentas atacadas por fuerza bruta

# awk -F"ffff:" '/FAILED/ {IP[$NF]++;}END{ for ( host in IP ) print IP[host]" "host}' /var/log/maillog | awk '{ if ( $1 > 99 ) print $0}' | sort -nk1 | sed 's#]##' > IPS; for IP in `awk '{print $2}' IPS`; do echo -n $(grep $IP IPS); echo -n " - Failed users: "; grep $IP /var/log/maillog | awk -F"user=" '/FAILED/ {print $2}' | cut -d, -f1 | sort | uniq | wc -l; done

Ver la cantidad de conexiones IMAP por usuario

# ps -ef |grep imap | awk '{print $1}' | sort | uniq -c | sort -g -k 1 | tail

Deja tu comentario

nueve + dieciseis =

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.