Postfix

  • postconf para ver la configuración
  • postconf -n valores que no son por defecto (que se han cambiado)
  • postsuper -d numero eliminar el mensaje
  • postsuper -d ALL borra toso los mensajes
  • postsuper -r Number encolar de nuevo el mensaje
  • postsuper -r ALL encolar de nuevo todos los mensajes
  • postsuper -p Mostar la cola de mensajes pendiente de enviar
  • postsuper -f Hacer un flush de la cola de mensajes. Intenta enviar todos los correos
  • mailq Para ver la cola de mensajes

Usuarios y alias de Postfix

El archivo /etc/postfix/aliases contiene la lista de alias de usuarios, en el se espefica al inicio un nombre ó alias de correo, seguido de los destinatarios:

  postmaster: razametal
  ventas: pepe, pepeecuador@gmail.com
  todos: juan,razametal,pepeecuador@gmail.com

Esto quiere decir que si enviamos un email a todos@midominio.com , este será reenviado a juan@midominio.com, razametal@midominio.com y pepeecuador@gmail.com. Si enviamos un email a postmaster@midominio.com este será reenviado a razametal@midominio.com.

Una vez realizada alguna modificacion en el archivo aliases debemos ejecutar:

postalias /etc/postfix/aliases

El archivo /etc/postfix/transport podemos especificar que direcciones deben ser aceptadas como locales y cuales no, tambien es posible especificar a traves de que servicio smtp debe salir un mensaje o que tipo de protocolo debe utilizar.

 
  usuario@dominio.com     smtp:mail.otrodominio.com
  *                       smtp:mail.otrodominio.com
  @dominio.com            smtp:mail.otrodominio.com
  midominio.com           local:
  juan@midominio.com      smtp:mail.otrodominio.com

Para que los cambios realizados en /etc/postfix/transport se ejecuten, debemos ejecutar:

postmap /etc/postfix/transport

El archivo /etc/postfix/sender_canonical permite transformar direcciones locales en direcciones externas. Así, si el servidor tiene un dominio que no es un FQDN (mail.midominio.com) y quiero enviar mensajes a través de el, debo cambiar la dirección del remitente por un dominio que sí este registrado, por ejemplo:

  razametal    juan@dominiofqdn.com

Al igual que en los casos anteriores, cada vez que se modifique el archivo sender_canonical debemos ejecutar:

postmap /etc/postfix/sender_canonical

El archivo /etc/postfix/recipient_canonical permite transformar direcciones externas en direcciones internas:

  razametal@gmail.com        razametal
  razametal@dominiofqdn.com  razametal

Ejecutamos:

postmap /etc/postfix/recipient_canonical

http://www.postfix.org/BASIC_CONFIGURATION_README.html#notify http://www.ecualug.org/2008/06/18/comos/opciones_muy_utiles_de_postfix

Mensajes pendientes en la cola

 postqueue -p | tail -n 1 | cut -d' ' -f5

Borrar mensaje de la cola de correo

De o a un usuario concreto

postqueue -p | tail -n +2 | awk 'BEGIN { RS = "" } / usuario@dominio\.org/ { print $1 }' | tr -d '*!' | postsuper -d - 

Mediante un script

Borrar-encolados.ps

#!/usr/bin/perl

$REGEXP = shift || die "no email-adress given (regexp-style, e.g. bl.*\@yahoo.com)!";

@data = qx</usr/sbin/postqueue -p>;
for (@data) {
  if (/^(\w+)(\*|\!)?\s/) {
     $queue_id = $1;
  }
  if($queue_id) {
    if (/$REGEXP/i) {
      $Q{$queue_id} = 1;
      $queue_id = "";
    }
  }
}

#open(POSTSUPER,"|cat") || die "couldn't open postsuper" ;
open(POSTSUPER,"|postsuper -d -") || die "couldn't open postsuper" ;

foreach (keys %Q) {
  print POSTSUPER "$_\n";
};
close(POSTSUPER);

Borrar mensajes de la carpeta de usuario

Hay que ir a /var/vmail/vmail1/<domain>/<username>/Maildir/cur y o bien borrarlos todos o bien, si sabemos cual es, eliminar el fichero determinado.

Mailq

Para eliminar los mensajes de alguien que esta usando nuestro servidor para enviar spam

Suponiendo que la cuenta sea email@noreply.es

for i in `mailq | grep email@noreply.est | cut -f1 -d*`; do postsuper -d $i; done

Enlaces