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'Lenguaje del código: PHP (php)

Ver la cantidad de correos en cola

# exim -bpcLenguaje del código: PHP (php)

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

# exim -bpr | grep frozen | wc -lLenguaje del código: PHP (php)

Eliminar los correos en estado «Frozen»

# exim -bpr | grep frozen | awk {'print $3'} | xargs exim -MrmLenguaje del código: PHP (php)

Eliminar un correo sin enviar un correo de error al remitente

# exim -Mrm IDLenguaje del código: PHP (php)

Eliminar un correo enviando un correo de error al remitente

# exim -Mg IDLenguaje del código: PHP (php)

Forzar el envío de un correo en concreto

# exim -M IDLenguaje del código: PHP (php)

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'}Lenguaje del código: PHP (php)

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 -nLenguaje del código: PHP (php)

Detectar correos enviados por phpmail

# find ./ -name \*.php -exec grep -l "mail(" {} \;Lenguaje del código: PHP (php)

Ver la cabecera de un correo

# exim -Mvh IDLenguaje del código: PHP (php)

Eliminar los todos los correos que hay en cola

# exim -bp | awk '/^ *[0-9]+[mhd]/{print "exim -Mrm " $3}' | bashLenguaje del código: PHP (php)

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;doneLenguaje del código: PHP (php)

Ver el cuerpo de un correo

# exim -Mvb IDLenguaje del código: PHP (php)

Ver el log de un correo

# exim -Mvl IDLenguaje del código: PHP (php)

Forzar el envio de la cola de correo

# exim -qfLenguaje del código: PHP (php)

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

# exim -bp|awk 'NF>1{print $4}' | sort | uniq -c |sort -nk1Lenguaje del código: PHP (php)

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

# exim -bp | /usr/sbin/exiqsummLenguaje del código: PHP (php)

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; doneLenguaje del código: PHP (php)

Ver la cantidad de conexiones IMAP por usuario

# ps -ef |grep imap | awk '{print $1}' | sort | uniq -c | sort -g -k 1 | tailLenguaje del código: PHP (php)

¡Nuestros Tutoriales en tu Email!

¡Nuestros Tutoriales en tu Email!

Deja un comentario

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