Transport Exim que acepta todo y lo tira

De Recursos Educativos
Ir a la navegación Ir a la búsqueda

Para desarrollo y testeo de sistemas, cuando hay emails de por medio, a veces interesa tener un proceso MTA (que hable SMTP) y que todo lo que reciba lo tire.

Herramientas: exim4 y un programita en C

Partir de un dpkg-reconfigure exim4-config con configuración local delivery.

Añadir las siguientes secciones al fichero /etc/exim4/exim4.conf.template

Al principio del todo.

MAIN_LOCAL_DOMAINS = ! localhost

Como primer router (justo despues del begin router)

a_tomar_vientos:
  driver = accept
  domains = !localhost
  transport = al_carajo

Como primer transport (justo despues del begin transports)

al_carajo:
  debug_print = "T: al_carajo for $local_part@$domain"
  driver = pipe
  command = "/home/yo/do_nothing"
}}}

Ajustar el path del command para que apunte a nuestro do_nothing.

Compilar el siguiente programa en C.

int main( int argc, char *argv[] )
{
  return 0;
}

Ni idea de porque hice esto originalmente en C. Seria mas simple un script en BASH o Perl. El driver = pipe parecería indicar que debería ser trivial que escribiera los emails en disco para poder depurar.