Ceci est une ancienne révision du document !
Les liste de diffusions Mailman3
Mailman3 est une application libre pour gérer des listes de diffusion électroniques, les listes de discussion et les « newsletters ».
Mailman3 est une ré-écriture complète de Mailman 2. Elle est basé sur le language Python et le framework Django.
L'installation et l’administration cette version 3 sont très différentes de la version 1 ou 2, ce qui rend les recherches ardues et conduit bien souvent à d'incommensurables déceptions. D'où la création de cette page.
Installation depuis le dépôt Ubuntu
Il existe moultes manières d'installer Mailman3 (pip, git, apt, Docker…), selon votre humeur, vos goûts et vos envies.
Reportez-vous à la documentation officielle Mailman3 si nécessaire. (Attention, celle-ci ne couvre pas les paquets Ubuntu/Debian.)
Nous ne verrons ici que celle qui me semble être la plus rapide et la plus confortable, pour Ubuntu : l'utilisation des dépôts via cette merveilleuse commande apt-get
. Notez qu'elle devrait fonctionner de la même manière sous Debian.
Cette procédure a été écrite pour Ubuntu 20.04 LTS « Focal Fossa » mais devrait pouvoir être adaptée facilement pour des version ultérieures.
- Commencez par mettre à jour vos dépôts :
sudo apt-get update && sudo apt-get -y upgrade
- Il est recommandé de supprimer Apache2 s'il est présent (pour Nginx) :
sudo apt-get remove --purge apache2
- Installez mailman3, ainsi que Postorius (interface web) et HyperKitty (outil d'archivage), et ce en une seule et même opération :
sudo apt-get install mailman3-full
Suivez les instructions lors de l'installation (les options par défaut fonctionnent plutôt pas mal).
- Installez certbot pour la gestion des certificats SSL :
sudo apt-get install python3-certbot-nginx
- Copiez le modèle de fichier de configuration Nginx fourni par Mailman3 vers le répertoire de Nginx :
sudo cp /etc/mailman3/nginx.conf /etc/nginx/sites-available/mailman.conf
- Muni de votre éditeur texte favori, éditez le fichier
/etc/nginx/sites-available/mailman.conf
ainsi copié et remplacez le nom de domainemailman.example.com
par le vôtre :
server_name mailman.example.com;
- Activez le fichier de configuration :
sudo ln -s /etc/nginx/sites-available/mailman.conf /etc/nginx/sites-enabled/mailman.conf
- Redémarrez Nginx :
sudo service nginx restart
- Créez le certificat SSL :
sudo certbot
Suivez les instructions à l'écran.
- Créez un compte superuser pour Mailman3 :
sudo django-admin createsuperuser --pythonpath /usr/share/mailman3-web/ --settings settings
Suivez les instructions à l'écran.
- Avec le navigateur web qui vous plait, rendez-vous sur votre site à l'adresse https://mailman.example.com/admin.
Il ne vous reste plus qu'à configurer votre serveur !