Come configurare postfix per eliminare tutta la posta elettronica in un dominio e inoltrare tutte le altre e-mail?


9

Devo impostare postfix in un ambiente di sviluppo / test per filtrare le e-mail in modo da non spammare i nostri clienti. Nei nostri ambienti di test cancelliamo tutti i nostri dati utente in modo che gli indirizzi e-mail vengano cambiati in @localhost, anche se alcuni indirizzi potrebbero essere cambiati in indirizzi e-mail validi in un secondo momento a scopo di test. Inoltriamo tutta la nostra e-mail tramite un fornitore di terze parti per la consegna, quindi quello che mi piacerebbe fare è impostare Postfix per:

  1. Eliminare qualsiasi e-mail inviata a localhost
  2. Inoltra tutta l'e-mail rimanente al nostro fornitore terzo.

Essendo relativamente nuovo a Postfix, quale sarebbe il modo più semplice per configurarlo?

Risposte:


8

Beh, sembra che sia riuscito a capirlo con un po 'di ricerca e test. Ecco cosa dovevo fare:

  • In /etc/postfix/main.cf:

    transport_maps = hash:/etc/postfix/transport
    smtp_sasl_auth_enable = yes
    smtp_sasl_password_maps = static:<relayhost username>:<relayhost password>
    smtp_sasl_security_options = noanonymous
    smtp_tls_security_level = may
    start_tls = yes
    
  • In / etc / postfix / transport:

    localhost discard: 
    localhost.localdomain discard:
    * relay:[smtp.relayhost.com]:587
    

Apparentemente il relay ignora anche la direttiva alias_maps, quindi per continuare a lavorare gli alias ho dovuto commentare sia alias_maps che alias_database e sostituirli con virtual_alias_maps. Il formato di virutal_alias_map è identico a alias_maps, quindi è stata una modifica facile da apportare.

Con queste modifiche in atto basta riavviare postfix ed eseguire anche "postmap / etc / postfix / transport" per creare transport.db. Ora tutto ciò che è indirizzato a @localhost o @ localhost.localdomain viene scartato mentre tutto il resto viene inoltrato attraverso l'host specificato.


1
Questa non è la risposta alla domanda del PO, ma in una nota correlata, ecco cosa ho fatto per buttare via tutta la posta in uscita su un clone temporaneo di un pacco prod: 1. Apri /etc/postfix/main.cf2. Aggiungi default_transport = discard:Outgoing email disabled on this node3. Riavvia Postfix: service postfix restart* a reloadpuò essere sufficiente
deoren il
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.