2 votes

Comment autoriser la partie extension de l'e-mail dans postfix lors de la livraison virtuelle

Actuellement, j'ai un fichier /etc/postfix/virtual qui contient des entrées comme :

user@foo.com foo@bar.com 

Je veux pouvoir rediriger user+asdf@foo.com vers foo+asd@bar.com

Comment puis-je faire cela?

MODIFICATION : J'ai défini

propagate_unmatched_extensions = canonical, virtual

et

recipient_delimiter = +

mais je continue de recevoir Adresse du destinataire rejetée : Utilisateur inconnu dans la table des destinataires locaux;

MODIFICATION II: J'ai apporté les modifications suggérées dans la réponse mise à jour de @Schot avec quelques progrès;

Maintenant, je reçois Adresse du destinataire rejetée: Utilisateur inconnu dans la table d'alias virtuels; lors de l'envoi à user+asdf@foo.com

L'envoi à user@foo.com fonctionnait à la fois avant et après les modifications

MODIFICATION III:

Postfix est en version 2.3.3 - Je n'ai pas de journaux mail.warn ou mail.err séparés - seulement le /var/log/maillog. Voici l'extrait complet (anonymisé) :

MODIFICATION IV: Mise à jour vers postfix 2.3.19 sans succès.

MODIFICATION V: En faisant postconf -n il est apparu que recipient_delimiter était mal orthographié dans le fichier main.cf ainsi que ci-dessus et le délimiteur n'était pas pris en compte du tout.

3voto

schot Points 646

Vos entrées actuelles sont correctes, vous devriez regarder le paramètre de configuration propagate_unmatched_extensions. Vérifiez qu'il inclut virtual.

Concernant votre regex qui ne fonctionne pas, consultez la page du manuel virtual(8):

L'agent de distribution virtual(8) interdit la substitution d'expressions régulières de $1, etc. dans les tables de recherche d'expressions régulières, car cela ouvrirait une faille de sécurité.

Mise à jour

J'ai testé votre configuration et cela fonctionne pour moi. Peut-être que l'un des éléments suivants pose problème :

  • Le domaine virtuel ("foo.com") est-il répertorié dans mydestination? Si c'est le cas, retirez le.
  • Le domaine virtuel est-il répertorié dans virtual_alias_domains? Sinon, ajoutez-le.

Notez bien : Est-ce que l'envoi de courrier à user@foo.com (sans délimiteur +) fonctionne ?

2voto

Kimvais Points 315

C'est recipient_delimiter pas recipient_delimEter

1voto

topdog Points 3490

Les substitutions de $number ne sont pas autorisées dans le fichier virtuel par mesure de sécurité. http://www.postfix.org/PCRE_README.html

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