El SysAdmin del 3er Mundo

todo lo que expliqué mientras nadie prestaba atención

postfix entrando en el baile

| Comments

En el episodio anterior, vimos como dovecot se sumaba al esquema mysql. Faltaría solamente postfix, para tener entonces un “completo servidor MySQL”

Cabe reconocer que el futuro de MySQL es incierto, pero meintras PostGres sea la gran basura que es, que conmigo ni cuenten.

Normalmente postfix, entrega a través de procmail, pero ahora, nuestro dovecot con sus flamantes características, tendrá una manera más compleja de entregar. Por tanto, debemos usar el LDA (Local Deliver Agent) de Dovecot como el MDA por defecto de postfix.

Al fichero /etc/postfix/main.cf le agregamos en el fondo un nuevo transport.

/etc/postfix/master.cf
1
2
dovecot unix - n n - - pipe
  flags=DRhu user=vmail:vmail argv=/usr/lib/dovecot/deliver -f ${sender} -d ${user}@${domain} -m ${extension}

Además de lo usual, al main.cf le declaramos que su nuevo transporte es un tal “dovecot” y le agregaremos unas cuantas gangarreas extras que ya explicaré.

/etc/postfix/main.cf
1
2
3
4
5
6
7
# el resto de tu confuiguracion arriba
virtual_transport=dovecot
mailbox_command = /usr/lib/dovecot/deliver
mydestination = localhost, blackjack
virtual_mailbox_domains = hcg.sld.cu
virtual_mailbox_maps = $virtual_mailbox_domains
virtual_alias_maps = hash:/etc/aliases
  1. Un comentario a prueba de imbéciles.
  2. Declaramos el nuevo transporte para el dominio virtual.
  3. Declaramos además, que se use el LDA de dovecot.
  4. Declaramos que solo localhost y blackjack son destinos locales.
  5. El dominio virtual será “hcg.sld.cu”.
  6. Y lo mapeamos igual.
  7. Por último, lo alias se quedan en el fichero tradicional.

Ahora si creamos un usaurio llamado “usuario” en la base de datos; usuario@localhost no será válido porque solo existe en el domino virtual.

Además, le agregamos que los alisas, son un hash en /etc/alisas, al estilo antiguo. No vamos a cargar la base de datos con los alisases. Sobre todo teniendo en cuenta lo pocos que son. De esta forma, cuando por ejemplo, se manda un correo a root que es una alias de lazaro, postfix preguntara quien es lazaro y responderá un usaurio del dominio virtual. Genial eh?

Tanto los alisas como los dominios virtuales, podrían ser tablas de MySQL, pero como mi aplicación no maneja eso, lo haces al estilo tradicional. En caso de que más adelante desarrollase algún esquema tipo proveedor de servicios; otro gallo cantaría.

No olvidemos “postfix reload”

Si este artículo te resultó interesante, considere donar 0.003 BTC: 1LgL9cfT2StNk9gdedMJZseMnKJCEgQJdQ

Comments