WikiMiNET

La documentation technique et administrative

Outils pour utilisateurs

Outils du site


wiki:mail:mailing-lists

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
wiki:mail:mailing-lists [2015/08/28 11:54]
127.0.0.1 modification externe
wiki:mail:mailing-lists [2019/03/13 13:22]
zteeed
Ligne 1: Ligne 1:
 +===== Mailing-lists =====
  
 +==== Mailman ====
 +
 +Nous utilisons **Mailman** pour gérer les listes MiNET. L'​interface Web est accessible sur [[https://​listes.minet.net]]. La configuration de base se trouve dans ''/​etc/​mailman/​mm_cfg.py''​.
 +
 +Il y a aussi un **Postfix** avec une configuration de base, pour assurer la réception et l'​envoi des mails.
 +
 +Quelques emplacements utiles:
 +
 +  * Les données sont stockées dans ''/​var/​lib/​mailman/''​
 +  * On a accès à la liste des listes dans ''/​var/​lib/​mailman/​lists''​
 +  * Dans ''/​var/​log/​mailman'',​ les fichiers de logs '​post'​ contiennent les infos sur chacun des envois sur les listes.
 +
 +=== Migration de listes ===
 +
 +Pour dump les données d'une ML:
 +
 +<​code>/​var/​lib/​mailman/​bin/​list_members <nom de la ML></​code>​
 +
 +=== Installation ===
 +
 +== Paquets à installer ==
 +
 +Comme indiqué au dessus, mailman a besoin d'un serveur apache et d'un MTA. apt installera apache et exim avec mailman. Il faudra remplacer exim par postfix (parce qu'on utilise postfix à MiNET). Le second chasse le premier lorsqu'​on l'​installe.
 +
 +<​code>​
 +apt-get install mailman postfix
 +</​code>​
 +
 +== Configurer mailman ==
 +
 +La première chose à faire est de créer un mot de passe pour l'​administration du site et un mot de passe maître pour la création des listes. Ceci permet de créer des listes avec l'​interface web.
 +
 +<​code>​
 +mmsitepass <​motdepasse-admin-site>​
 +mmsitepass -c <​motdepasse-creation-listes>​
 +</​code>​
 +
 +Pour que l'​interface web puisse s'​afficher,​ il faut aussi créer une liste par défaut.
 +
 +<​code>​
 +newlist mailman
 +  Enter the email address of the person running the list: listmaster@minet.net
 +  Initial mailman password:
 +</​code>​
 +
 +Attention, il n'y a pas de confirmation pour le mot de passe.
 +
 +Cette commande va générer une liste d'​alias qui doit plus ou moins ressembler à ça :
 +
 +<​code>​
 +# mailman mailing list
 +mailman: ​             "​|/​usr/​lib/​mailman/​mail/​mailman post mailman"​
 +mailman-admin: ​       "​|/​usr/​lib/​mailman/​mail/​mailman admin mailman"​
 +mailman-bounces: ​     "​|/​usr/​lib/​mailman/​mail/​mailman bounces mailman"​
 +mailman-confirm: ​     "​|/​usr/​lib/​mailman/​mail/​mailman confirm mailman"​
 +mailman-join: ​        "​|/​usr/​lib/​mailman/​mail/​mailman join mailman"​
 +mailman-leave: ​       "​|/​usr/​lib/​mailman/​mail/​mailman leave mailman"​
 +mailman-owner: ​       "​|/​usr/​lib/​mailman/​mail/​mailman owner mailman"​
 +mailman-request: ​     "​|/​usr/​lib/​mailman/​mail/​mailman request mailman"​
 +mailman-subscribe: ​   "​|/​usr/​lib/​mailman/​mail/​mailman subscribe mailman"​
 +mailman-unsubscribe: ​ "​|/​usr/​lib/​mailman/​mail/​mailman unsubscribe mailman"​
 +</​code>​
 +
 +Il faut coller cette liste dans ''/​etc/​aliases''​ puis lancer en root la commande :
 +<​code>​
 +newaliases
 +</​code>​
 +
 +== Configurer apache ==
 +
 +Une configuration pour apache est fournie avec mailman. Elle se trouve dans ''/​etc/​mailman/​apache.conf''​.
 +
 +Il suffit de mettre un lien symbolique vers ce fichier dans ''/​etc/​apache2/​sites-enabled''​
 +
 +<code bash>
 +cd /​etc/​apache2/​sites-enables
 +ln -s /​etc/​mailman/​apache.conf .
 +/​etc/​init.d/​apache2 restart
 +</​code>​
 +
 +Vous pouvez accéder à l'​interface web à partir de ipdelamachine/​mailman
 +
 +NB: Le fichier de configuration par défaut à changer et pour joindre le site http://​nomdomaine/​cgi-bin/​mailman/​admin/​mailman .Tenter aussi un a2enmod cgid .
 +
 +== Configurer postfix ==
 +
 +Il faut d'​abord modifier ''/​etc/​mailman/​mm_cfg.py''​ pour que mailman utilise postfix.
 +
 +<code python>
 +MTA = '​postfix'​
 +</​code>​
 +
 +Pour le reste de la configuration de Postfix, rendez-vous dans ''/​etc/​postfix/​main.cf''​ :
 +
 +<code bash>
 +myorigin = /​etc/​mailname
 +
 +# appending .domain is the MUA's job.
 +append_dot_mydomain = no
 +
 +readme_directory = no
 +
 +myhostname = listes.minet.net
 +alias_maps = hash:/​etc/​aliases,​ hash:/​var/​lib/​mailman/​data/​aliases
 +alias_database = hash:/​etc/​aliases
 +mydestination = listes, listes.minet.net,​ localhost.localdomain,​ localhost
 +relayhost = mx.minet.net:​10025
 +mynetworks = 127.0.0.0/8 192.168.102.25 192.168.102.26
 +mailbox_size_limit = 0
 +
 +# Nécessaire pour mailman
 +recipient_delimiter = +
 +
 +inet_interfaces = localhost 192.168.102.29
 +
 +mailman_destination_recipient_limit = 1
 +</​code>​
 +
 +<​code>​
 +/​usr/​lib/​mailman/​bin/​check_perms -f
 +</​code>​
 +
 +Et on redémarre le tout :
 +<​code>​
 +/​etc/​init.d/​postfix restart
 +/​etc/​init.d/​mailman start
 +</​code>​
 +
 +=== Gestion des mailing lists ===
 +
 +En plus de l'​interface Web, il est possible de gérer les listes en ligne de commande.
 +
 +Pour supprimer une liste :
 +Sur la machine, en root, utiliser la commande : 
 +<​code>​
 +rmlist lenomdelaliste
 +</​code>​
 +
 +=== Générer des statistiques ===
 +
 +Ci-joint un petit script en python qui permet de récupérer des infos sur les listes. Par exemple, pour générer les statistiques des envois sur les 7 derniers mois, utiliser en root : 
 +<code bash>
 +python stats_listes.py 7
 +</​code>​
 +
 +=== Libérer de l'​espace disque ===
 +
 +Mailman a une fâcheuse tendance à stocker des archives, y compris pour les listes privées.
 +La commande ci-dessous permet de vider les messages et les fichiers attachés sur les listes privées datant de plus de 30 jours.
 +<code bash>
 +find /​var/​lib/​mailman/​archives/​private/​ -ctime +30 | xargs rm -rf
 +</​code>​
wiki/mail/mailing-lists.txt · Dernière modification: 2019/03/13 13:22 par zteeed