3 votes

Utiliser postfix à travers un proxy. Comment doit-il être configuré ?

Postfix utilise par défaut les ports 25, 465 et 587. Dans ma configuration, j'ai activé le cryptage TLS en utilisant l'option smtpd_use_tls=yes dans l'interface de postfix main.cf . Cela rend toutes les communications smtp cryptées pour autant que je sache.

Comme postfix n'accepte qu'un seul certificat et ne prend pas en charge les certificats SNI J'aimerais utiliser nginx comme proxy pour que l'encryptage soit décidé par nginx sur la base du SNI et du nom de domaine, en tant que proxy, et non par postfix.

Je ne comprends pas bien les changements que je dois effectuer dans postfix, et j'apprécierais votre aide. Voici mes questions :

1) Lorsque j'envoie des e-mails via mon serveur, j'utilise le port 25. Mais qu'en est-il de la réception du courrier ? Dois-je changer tous ces ports que postfix utilise (pour les remplacer par nginx) ? ou le port 25 suffit-il ?

2) Lorsque j'utilise nginx comme proxy, dois-je désactiver l'encryptage dans postfix ? Si je comprends bien, la communication interne du proxy entre nginx et postfix n'a pas besoin d'être cryptée, donc je devrais désactiver le cryptage une fois que j'ai commencé à configurer ce proxy à l'aide de smtpd_use_tls=no n'est-ce pas ?

Si vous avez besoin d'informations supplémentaires, n'hésitez pas à les demander.

1voto

Amyunimus Points 163

Les serveurs de messagerie sont censés vérifier le PTR de chaque serveur qui leur envoie des courriers électroniques, de sorte que ce que vous essayez de faire ne fonctionnera pas de toute façon. Vous ne pouvez pas faire de proxy à cause de plusieurs noms de domaine.

Dans postfix, vous définissez tous les noms avec lesquels vous pouvez recevoir des courriels :

mydestination=$myhostname, example.com, other-example.com, yet-another.com

Pour l'envoi, cependant, vous devez vous assurer que $myhostname est autorisé à envoyer des courriels pour les autres noms de domaine. De mon côté, je m'assure que les noms suivants ont la même valeur :

myhostname = example.com                                                          
mydomain = example.com                                                            
myorigin = example.com                                                            

(vous pouvez probablement utiliser le $myhostname en mydomain y myorigin ).

Pour le certificat, je n'utilise que celui du nom de domaine principal :

smtpd_tls_cert_file = fullchain.pem
smtpd_tls_key_file = privkey.pem
smtpd_tls_security_level = may

Je ne comprends pas vraiment la Documentation sur le proxy Nginx pour le système de messagerie . Il semble procéder à l'authentification et aucune destination n'est définie, je n'ai donc aucune idée de la manière dont cela pourrait fonctionner.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X