Postfix sur le server de développement, permet d'envoyer un courrier à un seul domaine

Nous avons postfix sur notre server de développement, et j'aimerais qu'il ne puisse envoyer que du courrier à notre domaine et non à d'autres domaines, ce qui empêche les internautes de recevoir accidentellement du courrier de notre server de développement.

J'ai cherché dans les docs, j'ai essayé plusieurs choses, mais il envoie toujours à tous les domaines …

  • Signez plusieurs domaines avec une seule key de domaine (filter dk)
  • Dans Postfix, comment mesurer la quantité de trafic utilisé par chaque user ou domaine?
  • Limiter les options de livraison Postfix pour les messages locaux via sendmail / postdrop
  • Les e-mails transmis via postfix sont signalés comme spam et falsifiés dans Gmail
  • Contrôle du taux de message SMTP sur Ubuntu 8.04, de preference avec postfix
  • Postfix sasl auth uniquement pour fallback_relay
  • Relais de messagerie et confidentialité personnelle
  • Comment get différents Received: à partir des en-têtes de chaque domaine en utilisant Postfix Virtual Domain Hosting?
  • 4 Solutions collect form web for “Postfix sur le server de développement, permet d'envoyer un courrier à un seul domaine”

    Les maps de transport (5) sont utilisées pour redéfinir la façon dont le courrier électronique est apathé par postfix.

    • Ajoutez la ligne suivante à /etc/postfix/main.cf:

    transport_maps = hash:/etc/postfix/transport

    • Ajoutez le nouveau file / etc / postfix / transport avec ce contenu:

    .example.com : example.com : * discard:

    Remplacez example.com par le domaine auquel votre server de messagerie doit toujours envoyer des mails. Si vous ne vous souciez pas des sous-domaines, retirez la première ligne.

    N'oubliez pas de hacher le file après l'avoir édité avec postmap (1) et recharger postfix afin que les modifications puissent prendre effet

    # postmap /etc/postfix/transport && postfix reload

    Donc, si quelqu'un se heurte à ça comme je l'ai fait: la réponse est en effet header_checks et ça fonctionne comme tel:

    • Ajoutez la ligne suivante à /etc/postfix/main.cf :

       header_checks = regexp:/etc/postfix/header_checks 
    • Ajoutez le nouveau file /etc/postfix/header_checks avec ce contenu:

       /^To:.*@allowed-domain.com/ DUNNO /^To:.*@/ REDIRECT redirect@example.com 

    Remplacez allowed-domain.com par le domaine auquel votre server de messagerie doit toujours envoyer des mails. Remplacez redirect@example.com par l'adresse courriel à laquelle tous les autres courriers doivent être redirigés.

    Si vous devez autoriser plusieurs domaines, la première ligne devrait ressembler à ceci:

     /^To:.*@(allowed-domain.com|another-domain.com)/ DUNNO 

    Au lieu de redirect, vous pouvez simplement déposer tous les autres courriers. Remplacez la deuxième ligne ci-dessus par:

     /^To:.*@/ DISCARD No outgoing mails allowed 

    Explication:

    • Postfix passe les en-têtes de messagerie un par un.
    • Chaque ligne d'en-tête est adaptée au file header_checks line-by-line.
    • Si elle correspond à la première ligne ( To: contient le domaine autorisé), elle passe à la ligne d'en-tête suivante et commence l'en-tête vérifie de nouveau en haut. Comme aucune autre ligne ne correspond, cela signifie que le courrier est livré.
    • Si elle correspond à la deuxième ligne ( To: contient une autre adresse email externe), elle redirige le courrier.

    Vous pouvez facilement restreindre les destinataires avec les ressortingctions smtpd_recipient standard ou plus précisément check_recipient_access .

    Créez simplement un access (5) table /etc/postfix/access avec le contenu suivant ( exemple.com étant le domaine auquel vous souhaitez autoriser l'envoi):

     example.com OK 

    Vous pouvez également autoriser uniquement certaines adresses spécifiques:

     user1@example.com OK user2@example.com OK 

    N'oubliez pas de hacher le file après l'avoir édité avec la carte postale (1) :

     # postmap /etc/postfix/access 

    Maintenant, mettez les ressortingctions de destinataire suivantes dans votre main.cf:

     smtpd_recipient_ressortingctions = hash:/etc/postfix/access reject 

    et recharger Postfix:

     postfix reload 

    Après cela, testez-le si cela fonctionne .

    Avez-vous essayé header_checks (5) ?

    Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de réseau.