Mailman est un logiciel libre permettant la gestion de discussions par courrier électronique et de listes de bulletins d'information électroniques. De nombreuses listes de discussions sur le libre ( dont toutes les listes de discussions de Ubuntu ) utilisent Mailman comme logiciel de gestion de liste de diffusion. Il est puissant, facile à installer et à gérer.
Mailman offre aux administrateurs et utilisateurs une interface web. C'est pourquoi, il a besoin d'apache avec le support de mod_perl. Mailman utilise un serveur de courriel externe pour envoyer et recevoir les courriels. Il fonctionne parfaitement avec les serveurs de courrier suivants :
Postfix
Exim
Sendmail
Qmail
Nous allons voir comment installer Mailman, le serveur web apache et le serveur de courriels Exim. Si vous désirez installer Mailman associé à un autre serveur de courriels, veuillez consulter la section « Références ».
Pour installer apache2, référez vous à la section Installation de HTTPD pour plus de détails.
Pour installer Exim4, exécutez les commandes suivantes dans un terminal :
sudo apt-get install exim4 sudo apt-get install exim4-base sudo apt-get install exim4-config
Une fois exim4 installé, les fichiers de configuration sont stockés dans le répertoire /etc/exim4
. Par défaut, dans Ubuntu les fichiers de configuration de exim4 sont divisés en plusieurs fichiers. Vous pouvez changer ce comportement en modifiant le paramètre suivant dans le fichier /etc/exim4/update-exim4.conf
:
dc_use_split_config='true'
Pour installer Mailman, exécutez la commande suivante dans une console :
sudo apt-get install mailman
Cela copie les fichiers d'installation dans le répertoire /var/lib/mailman, installe les scripts CGI dans le répertoire /usr/lib/cgi-bin/mailman, crée l'utilisateur linux list, ainsi que le groupe linux list. Le processus Mailman sera la propriété de cet utilisateur.
Cette section suppose que vous ayez installé mailman, apache2 et exim4 avec succès. Maintenant, vous avez juste besoin de les configurer.
Une fois Apache2 installé, vous pouvez ajoutez les lignes suivantes dans le fichier /etc/apache2/apache2.conf
:
Alias /images/mailman/ "/usr/share/images/mailman/" Alias /pipermail/ "/var/lib/mailman/archives/public/"
Mailman utilise Apache2 pour exécuter ses scripts CGI. Les scripts CGI de Mailman sont installés dans le répertoire /usr/lib/cgi-bin/mailman. C'est pourquoi l'URL de Mailman sera http://hostname/cgi-bin/mailman/. Vous pouvez modifier le fichier /etc/apache2/apache2.conf
si vous souhaitez changer ce comportement.
Une fois Exim4 installé, vous pouvez démarrer le serveur Exim grâce à la commande suivante entrée à l'invite d'un terminal :
sudo apt-get /etc/init.d/exim4 start
Afin que Mailman utilise Exim4, vous devez de configurer Exim4. Comme mentionné précédemment, par défaut, Exim4 utilise de multiples fichiers de configuration, de types différents. Pour plus de détails, veuillez vous référer au site internet de Exim. Pour exécuter Mailman, il nous faut ajouter un nouveau fichier de configuration aux types de configuration suivants :
Principal
Transport
Routeur
Exim crée un fichier de configuration principal en triant tous ces petits fichiers de configuration. C'est pourquoi, l'ordre de ces fichiers de configuration est très important.
Tous les fichiers de configuration appartenant à la catégorie Principal sont stockés dans le répertoire /etc/exim4/conf.d/main/
. Vous pouvez ajouter le contenu suivant dans un nouveau fichier, nommé 04_exim4-config_mailman
:
# start # Home dir for your Mailman installation -- aka Mailman's prefix # directory. # On Ubuntu this should be "/var/lib/mailman" # This is normally the same as ~mailman MM_HOME=/var/lib/mailman # # User and group for Mailman, should match your --with-mail-gid # switch to Mailman's configure script. Value is normally "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=hostname.com # # -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= # # These values are derived from the ones above and should not need # editing unless you have munged your mailman installation # # 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 # end
Tous les fichiers de configuration appartenant à la catégorie Transport sont stockés dans le répertoire /etc/exim4/conf.d/transport/
. Vous pouvez ajouter le contenu suivant dans un nouveau fichier, nommé 40_exim4-config_mailman
:
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
Tous les fichiers de configuration appartenant à la catégorie Routeur sont stockés dans le répertoire /etc/exim4/conf.d/router/
. Vous pouvez ajouter le contenu suivant dans un nouveau fichier, nommé 101_exim4-config_mailman
:
mailman_router: driver = accept require_files = MM_HOME/lists/$local_part/config.pck local_part_suffix_optional local_part_suffix = -bounces : -bounces+* : \ -confirm+* : -join : -leave : \ -owner : -request : -admin transport = mailman_transport
![]() |
|
L'ordre des fichiers de configuration des catégories Principal et Transport n'est pas important. Mais l'ordre des fichiers de configuration de la catégorie Routeur doit être respecté. Ce fichier particulier doit se trouver avant le fichier 200_exim4-config_primary. Ces deux fichiers de configuration contiennent le même type d'information, le premier fichier étant prioritaire. Pour plus de détails, veuillez vous reporter à la section « Références ». |
Une fois mailman installé, vous pouvez l'exécuter grâce à la commande suivante :
sudo /etc/init.d/mailman start
Une fois mailman installé, vous devez créer la liste de diffusion par défaut. Utilisez la commande suivante pour créer la liste de diffusion :
sudo /usr/sbin/newlist mailman
Enter the email address of the person running the list: bhuvan at ubuntu.com
Initial mailman password:
To finish creating your mailing list, you must edit your /etc/aliases
(or
equivalent) file by adding the following lines, and possibly running the
`newaliases' program:
## mailman mailing list
mailman: "|/var/lib/mailman/mail/mailman post mailman"
mailman-admin: "|/var/lib/mailman/mail/mailman admin mailman"
mailman-bounces: "|/var/lib/mailman/mail/mailman bounces mailman"
mailman-confirm: "|/var/lib/mailman/mail/mailman confirm mailman"
mailman-join: "|/var/lib/mailman/mail/mailman join mailman"
mailman-leave: "|/var/lib/mailman/mail/mailman leave mailman"
mailman-owner: "|/var/lib/mailman/mail/mailman owner mailman"
mailman-request: "|/var/lib/mailman/mail/mailman request mailman"
mailman-subscribe: "|/var/lib/mailman/mail/mailman subscribe mailman"
mailman-unsubscribe: "|/var/lib/mailman/mail/mailman unsubscribe mailman"
Hit enter to notify mailman owner...
#
Nous avons configuré exim pour qu'il reconnaisse tous les courriers électroniques issus de mailman. Il n'est donc pas indispensable de créer de nouvelles entrées dans /etc/aliases
. Si vous avez procédé à des modifications dans les fichiers de configuration, assurez-vous de redémarrer ces services avant de passer à la section suivante.
Nous supposons que vous avez fait une installation par défaut. Les scripts cgi de mailman se trouvent toujours dans le répertoire /usr/lib/cgi-bin/mailman/. Mailman fournit un outil d'administration par internet. Pour accéder à cette page, ouvrez l'adresse suivante dans votre navigateur :
http://hostname/cgi-bin/mailman/admin
La liste de diffusion par défaut, mailman, apparaitra sur cet écran. Si vous cliquez sur le nom de la liste, il vous sera demandé votre mot de passe d'authentification. Si vous entrez le bon mot de passe, alors vous pourrez modifier les paramètres d'administration de cette liste de diffusion. Vous pouvez créer une nouvelle liste de diffusion, en ligne de commande, avec l'utilitaire /usr/sbin/newlist. Sinon, vous pouvez aussi créer une nouvelle liste de diffusion en utilisant l'interface web.
Mailman fournit aux utilisateurs une interface web. Pour accéder à cette page, ouvrez avec votre navigateur l'adresse suivante :
http://hostname/cgi-bin/mailman/listinfo
La liste de diffusion par défaut, mailman, apparaitra sur cet écran. Si vous cliquez sur le nom de la liste, vous verrez apparaitre le formulaire d'inscription. Vous pourrez alors saisir votre adresse électronique, votre nom ( facultatif ) et votre mot de passe afin de vous y inscrire. Un courriel d'invitation vous sera adressé. Vous pourrez alors suivre les instructions de ce courriel pour vous inscrire.