This is an old revision of the document!
Table of Contents
Mailing list
Finalement on utilise mailman vu que sympa ne veut pas envoyer d'email et que je n'ai pas trouvé pourquoi. (et mailman est en python, sympa en perl!)
Installation et configuration de mailman
apt-get install mailman
Choisir les langues fr et en, langue par défaut fr.
Le système d'installation nous demande de créer une liste mailman, mais il faut configurer mailman en premier, après c'est trop tard.
Éditer /etc/mailman/mm_cfg.py, et changer :
DEFAULT_URL_PATTERN = 'https://%s/mailman/' DEFAULT_EMAIL_HOST = 'fuz.re' DEFAULT_URL_HOST = 'liste.fuz.re' DEFAULT_SERVER_LANGUAGE = 'en' MTA=None
On peut ensuite ajouter la ou les listes :
newlist mailman
entrer listadmin@jack.tf et un mot de passe. Faire pareil pour les listes core ou autre.
Run /usr/sbin/withlist -l -a -r fix_url if you change DEFAULT_URL_PATTERN in /etc/mailman/mm_cfg.py, because a service reload won't do.
Configuration d'exim
Source : https://www.debian-administration.org/article/617/Mailman_and_Exim4 et /usr/share/doc/mailman/README.Exim4.Debian.gz
Dans exim4.conf (un seul fichier, osef de la génération auto de fichier, c'est pénible), ajouter :
Les définitions :
# Mailman macro definitions
# # Home dir for the Mailman installation
MM_HOME=/var/lib/mailman
# # User and group for Mailman
MM_UID=list
MM_GID=list
# Domains that your lists are in - colon separated list
# you may wish to add these into local_domains as well
domainlist mm_domains=jack.tf
# The path of the Mailman mail wrapper script
MM_WRAP=MM_HOME/mail/mailman
#
# The path of the list config file (used as a required file when
# verifying list addresses)
MM_LISTCHK=MM_HOME/lists/${lc::$local_part}/config.pck
Un routeur (à peu près vers la fin, entre les routeurs 400 et 500 mais l'ordre est pas trop important) :
mailman_router:
driver = accept
domains = +mm_domains
require_files = MM_LISTCHK
local_part_suffix_optional
local_part_suffix = -admin : \
-bounces : -bounces+* : \
-confirm : -confirm+* : \
-join : -leave : \
-owner : -request : \
-subscribe : -unsubscribe
transport = mailman_transport
Transport :
mailman_transport:
driver = pipe
command = MM_WRAP \
'${if def:local_part_suffix \
{${sg{$local_part_suffix}{-(\\w+)(\\+.*)?}{\$1}}} \
{post}}' \
$local_part
current_directory = MM_HOME
home_directory = MM_HOME
user = MM_UID
group = MM_GID
Finalisation
Redémarrer exim et mailman :
service exim4 restart; service mailman restart
Des emails doivent arriver dans les boites de listmaster.
Reste à trouver comment modérer l'inscription à une liste car pour le moment, tout le monde peut s'inscrire à core@jack.tf…