Generalidades
A continuación se describe cómo crear una secuencia de comandos y un trabajo cron que te envíe correos electrónicos rechazados desde el servidor.
Antecedentes
Cuando se envía un correo electrónico desde tu servidor web y luego se bloquea o rechaza, se almacena en el siguiente directorio:
/home/username/Maildir/new
Para ver los correos electrónicos bloqueados o rechazados, debes iniciar sesión manualmente en tu servidor y verificar este directorio. Una opción más simple es crear un cron job que active un script de shell. El script luego le dice al servidor que te envíe por correo electrónico cualquier correo electrónico bloqueado o rechazado cuando ocurra.
Para obtener más información sobre correos electrónicos bloqueados o rechazados, consulta el siguiente artículo:
Crear el script de shell
- Inicia sesión en tu servidor a través de SSH.
- Asegúrate de estar en el directorio de inicio de tu usuario:
[server]$ pwd /home/username
- Crea un nuevo archivo por medio de SSH, y luego nombrarlo algo así como mailrejections.sh.
- Agrega el siguiente código a este archivo:
- Solo necesitas cambiar los campos resaltados.
- Puedes cambiar el mensaje a lo que quieras.
#!/bin/bash #Check ~/Maildir/new for any files created within the last 15 min files=$(find ~/Maildir/new -type f -mmin -15) for emailFileName in $files; do #open each email individually and assign to new variable emailContent=$(cat $emailFileName)
printf '%s\n' "${emailContent[*]}" | mail -s "These emails were rejected" admin@example.com done
exit 0 - Asegúrate de cambiar el correo electrónico a la dirección de la que deseas recibir estas notificaciones.
Creando el cron job
Después de crear el script, debes crear un nuevo cron job para que se ejecute cada 15 minutos. El cron job luego ejecuta el archivo que acabas de crear.
- Crea un nuevo cron job en tu panel:
- Asegúrate de ajustar el nombre de usuario al usuario de Shell correcto para el que creaste el script.
- Selecciona 'Every 15 minutes' para el marco de tiempo.
Puedes cambiar el período de tiempo a lo que desees, pero solo asegúrate de actualizar el mismo período de tiempo en tu secuencia de comandos para que coincida.
- Haz clic en el botón Add para guardar.
El cron job ejecuta tu script cada 15 minutos. Si se rechaza un correo electrónico, se envía una copia a la dirección que especificó en el script.