Mailman : Différence entre versions

De Wiki NCad
Aller à : navigation, rechercher
(Configuration)
(Installation)
 
(17 révisions intermédiaires par le même utilisateur non affichées)
Ligne 2 : Ligne 2 :
  
 
[[Image:Mailman_logo.png|center]]
 
[[Image:Mailman_logo.png|center]]
 
{{Box Construction | type=Article}}
 
  
 
__TOC__
 
__TOC__
Ligne 19 : Ligne 17 :
 
* Nous installerons le paquet '''mailman''' avec ses dépendances et notamment le serveur web '''[[Apache2]]''' :
 
* Nous installerons le paquet '''mailman''' avec ses dépendances et notamment le serveur web '''[[Apache2]]''' :
  
{{ Box Console | objet=mailman apache2 apache2-mpm-worker apache2-utils apache2.2-bin apache2.2-common libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap libcap2 pwgen }}
+
{{ Box Console | objet=apt-get install mailman apache2 apache2-mpm-worker apache2-utils apache2.2-bin apache2.2-common libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap libcap2 pwgen }}
  
* '''Mailman''' demandera quels langues installer pour le gestionnaire de liste. On sélectionnera '''fr''' parmi la liste proposée.
+
* '''Mailman''' demandera quelles langues installer pour le gestionnaire de liste. On sélectionnera '''fr''' parmi la liste proposée.
  
 
== Configuration ==
 
== Configuration ==
Ligne 35 : Ligne 33 :
 
  MTA='Postfix'
 
  MTA='Postfix'
  
* Si le serveur '''Postfix''' utilise une base données MySQL, il faut décommenter les lignes suivantes dans le fichier '''/etc/mailman/mm_cfg.py''' :
+
* Si le serveur '''Postfix''' utilise une base données [[MySQL]], il faut décommenter les lignes suivantes dans le fichier '''/etc/mailman/mm_cfg.py''' :
  
 
   MTA = None # So that mailman skips aliases generation
 
   MTA = None # So that mailman skips aliases generation
   POSTFIX_STYLE_VIRTUAL_DOMAINS = ['list.geocoucou.glx']
+
   POSTFIX_STYLE_VIRTUAL_DOMAINS = ['list.geocoucou.eu']
 
   # alias for postmaster, abuse and mailer-daemon
 
   # alias for postmaster, abuse and mailer-daemon
 
   DEB_LISTMASTER = 'postmaster@geocoucou.eu'
 
   DEB_LISTMASTER = 'postmaster@geocoucou.eu'
Ligne 54 : Ligne 52 :
 
* On édite le fichier '''/etc/postfix/main.cf''' puis on y ajoute les informations suivantes :
 
* On édite le fichier '''/etc/postfix/main.cf''' puis on y ajoute les informations suivantes :
  
  relay_domains = list.mail.glx
+
  relay_domains = list.geocoucou.eu
relay_recipient_maps = hash:/var/lib/mailman/data/virtual-mailman
+
 
  <font color=orange>transport_maps = hash:/etc/postfix/transport</font>
 
  <font color=orange>transport_maps = hash:/etc/postfix/transport</font>
 
  mailman_destination_recipient_limit = 1
 
  mailman_destination_recipient_limit = 1
Ligne 78 : Ligne 75 :
 
* On rafraîchit la configuration de '''Postfix''' pour appliquer la configuration :
 
* On rafraîchit la configuration de '''Postfix''' pour appliquer la configuration :
  
{{ Box Console | objet=service postfix reload }}
+
{{ Box Console | objet=sudo service postfix reload }}
 +
 
 +
=== Permissions ===
 +
 
 +
* Il est nécessaire de vérifier que les répertoires de '''Mailman''' disposent des permissions adéquates :
 +
 
 +
{{ Box Console | objet=sudo /usr/lib/mailman/bin/check_perms -f }}
 +
 
 +
 
 +
{{ Box Remarque | objet=Si les erreurs persistent, modifier manuellement les permissions avec la commande <font color=grey>chown</font>. }}
  
 
== Création d'une liste ==
 
== Création d'une liste ==
Ligne 84 : Ligne 90 :
 
* Nous allons créer la liste '''ncad''' pour laquelle nous définirons comme adresse mail du propriétaire '''tech@ncad.fr''' et comme mot de passe '''00000000''' :
 
* Nous allons créer la liste '''ncad''' pour laquelle nous définirons comme adresse mail du propriétaire '''tech@ncad.fr''' et comme mot de passe '''00000000''' :
  
{{ Box Console | objet=newlist ncad<br />
+
{{ Box Console | objet=newlist --urlhost=www.list.geocoucou.eu --emailhost=list.geocoucou.eu ncad tech@ncad.fr 00000000<br />
Entrez l'adresse courriel du gestionnaire de la liste : tech@ncad.fr<br />
+
Mot de passe initial de la liste ncad :<br />
+
 
Tapez sur Entrée pour aviser le propriétaire de ncad... }}
 
Tapez sur Entrée pour aviser le propriétaire de ncad... }}
  
* Pour s'inscrire à la liste de diffusion, il suffit d'envoyer un mail à '''ncad-subscribe@list.geocoucou.eu''' :
+
* Pour s'inscrire à la liste de diffusion, il suffit d'envoyer un mail à '''ncad-subscribe@list.geocoucou.eu'''. '''Mailman''' renverra un mail de confirmation d'inscription de ce type :
  
 +
Avis de confirmation de demande d'abonnement pour la liste Ncad
 +
 +
Nous avons reçu une demande de  à partir de nicolas@cachelou.fr, pour
 +
l'abonnement de votre adresse courriel "nicolas@cachelou.fr", à la
 +
liste de diffusion ncad@list.geocoucou.eu.  Pour confirmer la demande,
 +
répondez à ce message en gardant l'en-tête Objet: intact, ou consultez
 +
la page :
 +
 +
http://www.list.geocoucou.eu/confirm/ncad/635e1d11268ef68c1793a5492134199b960f6d05
 +
 +
 +
ou bien mettez la ligne suivante - et seulement la ligne suivante -
 +
dans le corps d'un message à l'attention de
 +
ncad-request@list.geocoucou.eu:
 +
 +
    confirm 635e1d11268ef68c1793a5492134199b960f6d05
 +
 +
Notez qu'un simple "répondre" devrait fonctionner pour la plupart des
 +
lecteurs de courriel, puisque ceux-ci laissent en général l'en-tête
 +
Objet: au format correct (un "Re:" devant l'objet passe).
 +
 +
Si vous ne souhaitez pas vous abonner à cette liste, ignorez
 +
simplement ce message.  Si vous pensez être abonné à la liste contre
 +
votre gré ou si avez d'autres questions, envoyez un message à
 +
ncad-owner@list.geocoucou.eu.
  
 
{{ Box Remarque | objet=On peut aussi envoyer un mail à <font color=grey>ncad-request@list.geocoucou.eu</font> et mettre dans l'objet du message <font color=grey>subscribe</font> }}
 
{{ Box Remarque | objet=On peut aussi envoyer un mail à <font color=grey>ncad-request@list.geocoucou.eu</font> et mettre dans l'objet du message <font color=grey>subscribe</font> }}
 +
 +
* Il suffit de répondre au message et l'inscription est terminée.
 +
 +
== Poster sur la liste ==
 +
 +
* L'adresse mail de la liste de diffusion est '''ncad@list.geocoucou.eu'''. En envoyant un mail à cette adresse, tous les abonnés de la liste recevront le mail envoyé.
 +
 +
== Supprimer la liste ==
 +
 +
* Pour supprimer la liste il suffit d'utiliser la commande '''rmlist''' avec l'option '''-a''' pour supprimer les archives :
 +
 +
{{ Box Console | objet=rmlist -a ncad }}
 +
 +
 +
{{ Box Remarque | objet=Cette action est également possible depuis l'interface de gestion web de Mailman. }}
 +
 +
== Interface web ==
 +
 +
* '''Mailman''' s'administre via une interface web. Les utilisateurs peuvent également l'utiliser pour gérer leur inscription. Dans notre cas, cette interface est accessible à l'adresse '''www.list.geocoucou.eu'''. Nous allons définit un nouvel hôte virtuel dans '''Apache2'''. Pour cela, nous allons créer le fichier '''/etc/apache2/sites-available/www.list.geocoucou.eu.conf''' et y inscrire les lignes suivantes :
 +
 +
<VirtualHost *:80>
 +
ServerName www.list.geocoucou.eu
 +
DocumentRoot /var/www/lists/
 +
ErrorLog /var/log/apache2/lists-error.log
 +
CustomLog /var/log/apache2/lists-access.log combined
 +
 +
<Directory /var/lib/mailman/archives/>
 +
    Options FollowSymLinks
 +
    AllowOverride None
 +
</Directory>
 +
 +
Alias /pipermail/ /var/lib/mailman/archives/public/
 +
Alias /images/mailman/ /usr/share/images/mailman/
 +
ScriptAlias /admin /usr/lib/cgi-bin/mailman/admin
 +
ScriptAlias /admindb /usr/lib/cgi-bin/mailman/admindb
 +
ScriptAlias /confirm /usr/lib/cgi-bin/mailman/confirm
 +
ScriptAlias /create /usr/lib/cgi-bin/mailman/create
 +
ScriptAlias /edithtml /usr/lib/cgi-bin/mailman/edithtml
 +
ScriptAlias /listinfo /usr/lib/cgi-bin/mailman/listinfo
 +
ScriptAlias /options /usr/lib/cgi-bin/mailman/options
 +
ScriptAlias /private /usr/lib/cgi-bin/mailman/private
 +
ScriptAlias /rmlist /usr/lib/cgi-bin/mailman/rmlist
 +
ScriptAlias /roster /usr/lib/cgi-bin/mailman/roster
 +
ScriptAlias /subscribe /usr/lib/cgi-bin/mailman/subscribe
 +
ScriptAlias /mailman/ /usr/lib/cgi-bin/mailman/
 +
ScriptAlias / /usr/lib/cgi-bin/mailman/listinfo
 +
</VirtualHost>
 +
 +
* Ensuite nous activons ce nouvel hôte virtuel :
 +
 +
{{ Box Console | objet=a2ensite /etc/apache2/sites-available/www.list.geocoucou.eu.conf }}
 +
 +
* Puis nous rafraîchissons la configuration d''''Apache2''' :
 +
 +
{{ Box Console | objet=service apache2 reload }}
  
 
[[Category:Serveur de Messagerie]]
 
[[Category:Serveur de Messagerie]]

Version actuelle en date du 6 février 2017 à 01:32

.:[ Serveur de Messagerie ]:.

Installation >> Postfix avec MySQL

Anti-Spam SpamAssassin | Anti-Virus Clamav


Plateforme de filtrage Amavis >> Amavis avec MySQL


Ajouter un Disclaimer


Configurer Thundirbird | Configurer Roundcube


Commandes messagerie | DNSBL | MX Backup
Mailman logo.png

Présentation

Mailman est un gestionnaire de mailing list. Ce programme est compatible avec Postfix et Exim4.

Prérequis

Avant d'étudier cette documentation il est nécessaire de disposer d'un serveur mail Postfix fonctionnel. De plus, nous utiliseront le domaine list.geocoucou.eu pour l'ensemble de nos listes. Le MX devra pointer sur le serveur mail pour ce domaine.

Installation

  • Nous installerons le paquet mailman avec ses dépendances et notamment le serveur web Apache2 :
ICON Terminal.png

apt-get install mailman apache2 apache2-mpm-worker apache2-utils apache2.2-bin apache2.2-common libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap libcap2 pwgen

  • Mailman demandera quelles langues installer pour le gestionnaire de liste. On sélectionnera fr parmi la liste proposée.

Configuration

Mailman

  • Nous configurons le module mailman en éditant le fichier /etc/mailman/mm_cfg.py et en vérifiant/adaptant les paramètres suivants :
MAILMAN_SITE_LIST = 'geocoucou'
DEFAULT_EMAIL_HOST = 'list.geocoucou.eu'
DEFAULT_URL_HOST   = 'www.list.geocoucou.eu'
DEFAULT_SERVER_LANGUAGE = 'fr'
MTA='Postfix'
  • Si le serveur Postfix utilise une base données MySQL, il faut décommenter les lignes suivantes dans le fichier /etc/mailman/mm_cfg.py :
 MTA = None # So that mailman skips aliases generation
 POSTFIX_STYLE_VIRTUAL_DOMAINS = ['list.geocoucou.eu']
 # alias for postmaster, abuse and mailer-daemon
 DEB_LISTMASTER = 'postmaster@geocoucou.eu'
  • Une fois les paramètres renseignés, on crée la liste du système définie dans la variable MAILMAN_SITE_LIST :
ICON Terminal.png

mailman newlist mailman

  • Puis on démarre le service mailman :
ICON Terminal.png

service mailman start

Postfix

  • On édite le fichier /etc/postfix/main.cf puis on y ajoute les informations suivantes :
relay_domains = list.geocoucou.eu
transport_maps = hash:/etc/postfix/transport
mailman_destination_recipient_limit = 1
ICON Light.png
Si le transport_maps est géré dans une base de données, il faudra ajouter dans cette base le domaine list.mail.glx qui a pour transport mailman.
  • Nous ajoutons une nouvelle entrée dans le fichier /etc/postfix/transport :
list.geocoucou.eu        mailman:
  • Puis nous régénérons la base transport :
ICON Terminal.png

cd /etc/postfix
postmap transport

  • On édite le fichier /etc/postfix/master.cf puis on vérifie la présence des informations suivantes :
mailman unix  -       n       n       -       -       pipe
 flags=FR user=list 
 argv=/var/lib/mailman/bin/postfix-to-mailman.py ${nexthop} ${user}
  • On rafraîchit la configuration de Postfix pour appliquer la configuration :
ICON Terminal.png

sudo service postfix reload

Permissions

  • Il est nécessaire de vérifier que les répertoires de Mailman disposent des permissions adéquates :
ICON Terminal.png

sudo /usr/lib/mailman/bin/check_perms -f


ICON Light.png
Si les erreurs persistent, modifier manuellement les permissions avec la commande chown.

Création d'une liste

  • Nous allons créer la liste ncad pour laquelle nous définirons comme adresse mail du propriétaire tech@ncad.fr et comme mot de passe 00000000 :
ICON Terminal.png

newlist --urlhost=www.list.geocoucou.eu --emailhost=list.geocoucou.eu ncad tech@ncad.fr 00000000
Tapez sur Entrée pour aviser le propriétaire de ncad...

  • Pour s'inscrire à la liste de diffusion, il suffit d'envoyer un mail à ncad-subscribe@list.geocoucou.eu. Mailman renverra un mail de confirmation d'inscription de ce type :
Avis de confirmation de demande d'abonnement pour la liste Ncad

Nous avons reçu une demande de  à partir de nicolas@cachelou.fr, pour
l'abonnement de votre adresse courriel "nicolas@cachelou.fr", à la
liste de diffusion ncad@list.geocoucou.eu.  Pour confirmer la demande,
répondez à ce message en gardant l'en-tête Objet: intact, ou consultez
la page :

	http://www.list.geocoucou.eu/confirm/ncad/635e1d11268ef68c1793a5492134199b960f6d05 


ou bien mettez la ligne suivante - et seulement la ligne suivante -
dans le corps d'un message à l'attention de
ncad-request@list.geocoucou.eu: 

    confirm 635e1d11268ef68c1793a5492134199b960f6d05

Notez qu'un simple "répondre" devrait fonctionner pour la plupart des
lecteurs de courriel, puisque ceux-ci laissent en général l'en-tête
Objet: au format correct (un "Re:" devant l'objet passe).

Si vous ne souhaitez pas vous abonner à cette liste, ignorez
simplement ce message.  Si vous pensez être abonné à la liste contre
votre gré ou si avez d'autres questions, envoyez un message à
ncad-owner@list.geocoucou.eu.
ICON Light.png
On peut aussi envoyer un mail à ncad-request@list.geocoucou.eu et mettre dans l'objet du message subscribe
  • Il suffit de répondre au message et l'inscription est terminée.

Poster sur la liste

  • L'adresse mail de la liste de diffusion est ncad@list.geocoucou.eu. En envoyant un mail à cette adresse, tous les abonnés de la liste recevront le mail envoyé.

Supprimer la liste

  • Pour supprimer la liste il suffit d'utiliser la commande rmlist avec l'option -a pour supprimer les archives :
ICON Terminal.png

rmlist -a ncad


ICON Light.png
Cette action est également possible depuis l'interface de gestion web de Mailman.

Interface web

  • Mailman s'administre via une interface web. Les utilisateurs peuvent également l'utiliser pour gérer leur inscription. Dans notre cas, cette interface est accessible à l'adresse www.list.geocoucou.eu. Nous allons définit un nouvel hôte virtuel dans Apache2. Pour cela, nous allons créer le fichier /etc/apache2/sites-available/www.list.geocoucou.eu.conf et y inscrire les lignes suivantes :
<VirtualHost *:80>
ServerName www.list.geocoucou.eu
DocumentRoot /var/www/lists/
ErrorLog /var/log/apache2/lists-error.log
CustomLog /var/log/apache2/lists-access.log combined

<Directory /var/lib/mailman/archives/>
   Options FollowSymLinks
   AllowOverride None
</Directory>

Alias /pipermail/ /var/lib/mailman/archives/public/
Alias /images/mailman/ /usr/share/images/mailman/
ScriptAlias /admin /usr/lib/cgi-bin/mailman/admin
ScriptAlias /admindb /usr/lib/cgi-bin/mailman/admindb
ScriptAlias /confirm /usr/lib/cgi-bin/mailman/confirm
ScriptAlias /create /usr/lib/cgi-bin/mailman/create
ScriptAlias /edithtml /usr/lib/cgi-bin/mailman/edithtml
ScriptAlias /listinfo /usr/lib/cgi-bin/mailman/listinfo
ScriptAlias /options /usr/lib/cgi-bin/mailman/options
ScriptAlias /private /usr/lib/cgi-bin/mailman/private
ScriptAlias /rmlist /usr/lib/cgi-bin/mailman/rmlist
ScriptAlias /roster /usr/lib/cgi-bin/mailman/roster
ScriptAlias /subscribe /usr/lib/cgi-bin/mailman/subscribe
ScriptAlias /mailman/ /usr/lib/cgi-bin/mailman/
ScriptAlias / /usr/lib/cgi-bin/mailman/listinfo
</VirtualHost>
  • Ensuite nous activons ce nouvel hôte virtuel :
ICON Terminal.png

a2ensite /etc/apache2/sites-available/www.list.geocoucou.eu.conf

  • Puis nous rafraîchissons la configuration d'Apache2 :
ICON Terminal.png

service apache2 reload