[X]

Comment ça fonctionne

 

Nous utilisons les logiciels Mailman et Postfix

Un domaine entier est consacré au gestionnaire de listes. Un message arrivant à l'adresse truc@listes.rezo.net est donc considéré comme destiné à la liste truc, et pas à l'utilisateur truc. (Note : ce domaine peut être entièrement caché des utilisateurs, via des virtual supplémentaires.)

Dans Postfix, une ruse nous permet de ne pas avoir à déclarer chacune des listes :

- nous déclarons les appels à mailman de manière générique (indépendamment du nom de la liste, qu'il faudra passer dans la variable $EXTENSION) :

/etc/aliases
mmbot_post: "|/var/local/mailman/mail/mailman post $EXTENSION"
mmbot_request: "|/var/local/mailman/mail/mailman request $EXTENSION"
mmbot_owner: "|/var/local/mailman/mail/mailman owner $EXTENSION"
mmbot_join: "|/var/local/mailman/mail/mailman join $EXTENSION"
mmbot_leave: "|/var/local/mailman/mail/mailman leave $EXTENSION"
mmbot_confirm: "|/var/local/mailman/mail/mailman confirm $EXTENSION"
mmbot_admin: "|/var/local/mailman/mail/mailman bounces $EXTENSION"
mmbot_bounces: "|/var/local/mailman/mail/mailman bounces $EXTENSION"
mmbot_post_verif: "| test -d /var/local/mailman/lists/$EXTENSION && /var/local/mailman/mail/mailman post $EXTENSION"

- nous appelons également un virtual en mode regexp, qui nous permet de passer le nom de la liste dans la variable $EXTENSION, via une adresse de la forme mailman-action+liste@...

/etc/postfix/main.cf
virtual_maps = hash:$config_directory/virtual,
    regexp:/etc/postfix/virtual-regexp
recipient_delimiter = +
mailbox_command = /usr/bin/procmail -a "$EXTENSION"

/etc/postfix/virtual-regexp
# obligatoire
/^(postmaster|root|abuse)@listes\.rezo\.net$/   $1@rezo.net
# aliases /^(.+)-(subscribe|on)@(listes\.rezo\.net)$/ $1-join@$3 /^(.+)-(unsubscribe|off)@(listes\.rezo\.net)$/ $1-leave@$3 # les commandes
/^(.+)-(post|admin|request|owner|join|leave|confirm)@(listes\.)?rezo\.net$/ mmbot_$2+$1
# les listes (commande -post)
/^([-a-zA-Z0-9_]+)@listes\.rezo\.net$/ mailman-post+$1

Dans Mailman, quelques patches ont été nécessaires pour éviter de demander son mot de passe à l'utilisateur avant de le désabonner. C'est ainsi que nous avons pu ajouter les appels liste-on et liste-off. Ces aménagements sont en cours d'intégration dans le logiciel.

* * *

Espérons que ces éléments vous seront utiles... (en anglais)

(Voir aussi la méthode proposée par Dax Kelson : postfix-to-mailman.py.)

 

 

 

[X] Une initiative de Rezo.net, le portail des copains