User Tools

Site Tools


serveurs:mailman

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

serveurs:mailman [2015/08/30 22:55] (current)
Line 1: Line 1:
 +====== Mailman ======
  
 +===== SME 6 =====
 +
 + - SME 6 c'est sur [[http://​www.apo33.org/​raccorps/​article.php3?​id_article=80|arcticle sur apo33 raccorps]]
 +
 +===== Mailman sur SME 7 =====
 +
 +
 +[[http://​www.ergin.dyndns.org/​download/​RPMS/​contribs/​mailman/​| la ou telecharger les contribution pour SME 7]]
 +
 +  *  Ajoutez une entree au DNS de votre provider juste pour la gestion des listes, par exemple chez gandi.net j’ai pour mon domaine<​code>​
 +www                  28800 IN A xxx.xxx.xxx.xxx
 +lists                28800 IN A xxx.xxx.xxx.xxx
 +@                    28800 IN A xxx.xxx.xxx.xxx
 +@                    28800 IN MX 0 mondomaine.org. ​
 +</​code>​
 +evidement xxx c’est l’adresse ip de mon serveur ...
 +  *  Ajoutez un domaine virtuel dans e-smith-manager en accord avec celui donne a votre provider , "​lists.yourdomain.com"​
 +  *  Recuperez et installez les codes
 +   <​code bash>
 +cd /tmp
 +mkdir mailm
 +cd mailm
 +wget http://​www.ergin.dyndns.org/​download/​RPMS/​contribs/​mailman/​mailman.README.txt
 +wget http://​www.ergin.dyndns.org/​download/​RPMS/​contribs/​mailman/​e-smith-mailman-1.1.10-01.noarch.rpm
 +wget http://​www.ergin.dyndns.org/​download/​RPMS/​contribs/​mailman/​mhonarc-2.6.8-1.noarch.rpm
 +#wget http://​www.ergin.dyndns.org/​download/​RPMS/​contribs/​mailman/​htdig-3.1.6-6.i386.rpm
 +wget http://​www.ergin.dyndns.org/​download/​RPMS/​contribs/​mailman/​mailman-2.1.5-23es02.i386.rpm
 +
 +yum install htdig
 +ln -s /​usr/​bin/​HtFileType /​opt/​mailman/​bin
 +ln -s /​usr/​bin/​htdb_dump /​opt/​mailman/​bin
 +ln -s /​usr/​bin/​htdb_load /​opt/​mailman/​bin
 +ln -s /​usr/​bin/​htdb_stat /​opt/​mailman/​bin
 +ln -s /​usr/​bin/​htdig /​opt/​mailman/​bin
 +ln -s /​usr/​bin/​htdump /​opt/​mailman/​bin
 +ln -s /​usr/​bin/​htfuzzy /​opt/​mailman/​bin
 +ln -s /​usr/​bin/​htload /​opt/​mailman/​bin
 +ln -s /​usr/​bin/​htmerge /​opt/​mailman/​bin
 +ln -s /​usr/​bin/​htnotify /​opt/​mailman/​bin
 +ln -s /​usr/​bin/​htpurge /​opt/​mailman/​bin
 +ln -s /​usr/​bin/​htsearch /​opt/​mailman/​bin
 +ln -s /​usr/​bin/​htstat /​opt/​mailman/​bin
 +ln -s /​usr/​bin/​rundig /​opt/​mailman/​bin
 +rpm -i mhonarc-2.6.8-1.noarch.rpm
 +rpm -i mailman-2.1.5-23es02.i386.rpm ​ e-smith-mailman-1.1.10-01.noarch.rpm  ​
 +
 +  </​code>​
 +  *  Mettez a jour le mot de passe de mailman et ajour le fichier de config
 +   <​code>/​opt/​mailman/​bin/​mmsitepass
 +vi /​opt/​mailman/​Mailman/​mm_cfg.py
 +
 +</​code>​
 +     Ca ressemblera à ceci :
 +<​code>​
 +
 +# "​add_virtualhost(urlfqdn,​ emailfqdn)"​ to add new mappings.
 +
 +DEFAULT_URL_HOST ​  = '​lists.mondomaine.org'​
 +DEFAULT_EMAIL_HOST = '​lists.mondomaine.org'​
 +
 +# Because we've overriden the virtual hosts above add_virtualhost
 +# MUST be called after they have been defined.
 +
 +add_virtualhost(DEFAULT_URL_HOST,​ DEFAULT_EMAIL_HOST)
 +add_virtualhost('​lists.mondomaine2babels.org',​ '​lists.mondomaine2babels.org'​)
 +
 +</​code>​
 +  *  Creation de la liste par defaut
 +<​code>​
 +cd /​opt/​mailman/​bin
 +./newlist
 +</​code> ​
 +  *  Voila c’est presque fini 
 +   ​Commencez avec la page http://​lists.yourdomain.com/​mailman et accedez à la page d’administration sur   ​**http://​lists.yourdomain.com/​mailman/​admin/​mailman**
 +   Vous avez aussi dans le menu du server-manager une nouvelle ligne pour mailman
 +
 +il '​semble'​ que le script mailman-addlist et autres ne soient plus a jour, la base db e-smith a changee de repertoire, et sans doute de structure ... du coup la page de creation de la liste retourne une erreure, mais la liste a bien ete cree .. 
 +
 +sinon c'est la partie qmail qui n'est pas mise a jour, le fichier /​var/​qmail/​users/​assign peut etre mis a jour a la main en ajoutant des lignes
 +<​code>​=apodio:​mailman:​41:​41:/​opt/​mailman/​aliases:​-:​apodio:​
 ++apodio-:​mailman:​41:​41:/​opt/​mailman/​aliases:​-apodio-::​
 +</​code>​
 +et valide par /​var/​qmail/​bin/​qmail-newu
 +le fichier /​var/​qmail/​control/​local me semble aussi manquer d'une ligne concernant le domaine seul . et puis du coup il faut parametrer cette partie a la main .. attendre donc une maj de e-smith-mailman ;-)
 +[[http://​www.culte.org/​projets/​doc/​qmail/​v0.4/​c04.html#​LOCALS]]
 +
 +
 +===== customisation possible =====
 +Pour autoriser les créateurs / admin de listes à plus d’actions , éditer le fichier : /​opt/​mailman/​Mailman/​Defaults.py
 +
 +et modifiez :
 +
 +<​code>​OWNERS_CAN_DELETE_THEIR_OWN_LISTS = Yes
 +OWNERS_CAN_ENABLE_PERSONALIZATION = Yes
 +</​code>​
 +pour ne pas utiliser le "​lists.yourdomain.com"​ un document sur chaloner.ca qui dit, en gros,
 +
 +arretez le service mailman par
 +
 +<​code>​service mailman stop
 +
 +vi /​etc/​e-smith/​templates/​opt/​mailman/​Mailman/​mm_cfg.py/​40hostname ​
 +</​code>​
 +pour modifier les deux lignes
 +<​code>​
 +# DEFAULT_URL_HOST = '​lists.{ $DomainName }' ​
 +# DEFAULT_EMAIL_HOST = '​lists.{ $DomainName }' ​
 +
 +#en
 +
 +DEFAULT_URL_HOST = '{ $DomainName }' ​
 +DEFAULT_EMAIL_HOST = '{ $DomainName }' ​
 +</​code>​
 +
 +puis la prise en compte par sme
 +<​code>​
 +/​sbin/​e-smith/​expand-template /​opt/​mailman/​Mailman/​mm_cfg.py ​
 +</​code>​
 +et relancer le service
 +<​code>​
 +service mailman start
 +</​code>​
 +
 +===== une page web pour s’enregistrer =====
 +
 +Le code php pour un acces à la list tire de mailman et php 
 +
 +<code PHP>
 +
 +I use the following code to call a form that sends the appropriate subscribe or unsubscribe request to the list manager.
 +
 +Enter your name and email address to <​b>​subscribe</​b>​ to our <a href="​http://​www.gnu.org/​software/​mailman/​index.html"​ target="​_blank">​Mailman</​a>​ powered mailing list. For further information on out mailing list, <a href="​http://​www.chaloner.ca/​mailing.php"><​b>​click here</​b></​a>​.
 +<form method=post action="​http://​www.chaloner.ca/​subscribe.php">​
 +<​center>​Your Name:</​center>​
 +<input name="​name"​ type="​text"><​br>​
 +<​center>​Your Email:</​center>​
 +<input name="​email"​ type="​text"><​br>​
 +<​center><​input type=submit value="​Subscribe"></​center>​
 +</​form>​
 +To <​b>​unsubscribe</​b>​ from our mailing list, enter your email address below.
 +<form method=post action="​http://​www.chaloner.ca/​unsubscribe.php">​
 +<​center>​Your Email:</​center>​
 +<input name="​email"​ type="​text"><​br>​
 +<​center><​input type=submit value="​Unsubscribe"></​center>​
 +</​form>​
 +</​code>​
 +The form calls the following code to do the actual email validation and subscribing to the list manager.
 +
 +<code PHP>
 +
 +<?php
 +$email = trim($HTTP_POST_VARS['​email'​]);​
 +$name = $HTTP_POST_VARS['​name'​];​
 +
 +if ($email != ""​)
 +{
 +if (validate_email($email)) {
 +mail ( "​want-to-buy-request@chaloner.ca",​ "​subscribe",​ "",​ "From: " . $name . "<"​ . $email . ">"​ );
 +?>
 +Your request to subscribe email address <​b><?​php print $email;?></​b>​ has been sent to the list manager. You will receive an email confirmation that you must reply to in order to confirm your subscription request. If you do not reply to the email, no action will be taken, and you will not be subscribed.<​br>​
 +<?php
 +}
 +else
 +{
 +?>You must supply a valid email address. The list manager cannot proceed with an invalid email address. Please try again.<​br>​
 +<?php
 +}
 +}
 +else
 +{
 +?>I cannot process an empty email address. You must supply a valid email address in order to subscribe. Please try again.<​br>​
 +<?php
 +}
 +?>
 +<​br><​br>​
 +Thank You,<​br>​
 +<br>
 +<a href="​mailto:​Chaloner Hale <​email@chaloner.ca>">​Chaloner Hale</​a>​
 +
 +<?php
 +
 +There are a many email validation routines that you can find on the web. If you want a copy of the one I call, just drop us a line. 
 +</​code>​
 +
 +
 +===== cas d’hebergement de plusieurs dommaines, domaine virtuel et listes associees =====
 + 
 +
 +Apres avoir fait la création à travers l’interface e-smith-manager , des autres domaines virtuels, ce qui autorise la réception des mèls sur ces domaines, il faut juste modifier le fichier
 +
 +/​opt/​mailman/​Mailman/​mm_cfg.py
 +
 +et par exemple y mettre, pour 2 autre domaines virtuel 1 et 2 en plus du principal :
 +<​code>​
 +DEFAULT_URL_HOST = '​lists.domaine_principal.org'​
 +DEFAULT_EMAIL_HOST = '​lists.domaine_principal.org'​
 +
 +# Because we've overriden the virtual hosts above add_virtualhost
 +# MUST be called after they have been defined.
 +
 +add_virtualhost(DEFAULT_URL_HOST,​ DEFAULT_EMAIL_HOST)
 +add_virtualhost('​domaine_virtuel_1.org',​ '​domaine_virtuel_1.org'​)
 +add_virtualhost('​domaine_virtuel_2.org',​ '​domaine_virtuel_2.org'​)
 +
 +</​code>​
 +
 +vous pouvez créer les listes en allant dans /​opt/​mailman/​bin
 +<​code>​
 +cd /​opt/​mailman/​bin ./newlist ma-mailing-list1@domaine_virtuel_1.org
 +</​code>​
 +en précisant le domaine à la création.
 +
 +Ou en allant sur la page http://​domaine_virtuel_1/​mailman/​admin , ATTENTION la maniere dont vous écrivez l’adresse nommera la liste, si vous ecrivez http://​domaine_virtuel_a_toto/​mailman/​ cela vous faira travailler sur les listes xxx@domaine_virtuel_a_toto
 +
 +  Il faut aussi faire un lien symbolique de l’endroit des archives sur un répertoire vu par le serveur web apache, c’est à dire , créer un ibay ’archives’ accessible par tous, et faire
 +<​code>​
 +ln -s /​opt/​mailman/​archive/​publique /​home/​e-smith/​files/​ibays/​archives/​html/​publique ​
 +</​code>​
 +
 +===== Autres options =====
 +
 +
 +Des options pas forcément accéssibles par la page d’administration de mailman sont modifiables en ligne de commande.
 +
 +récupérer les paramètres :
 +<​code>​
 +cd /​opt/​mailman/​bin ./​config_list -o /​tmp/​listatoto.conf listatoto
 +</​code>​
 +modifier les parametres :
 +<​code>​
 +pico /​tmp/​listatoto.conf
 +</​code>​
 +enregistrer les parametres :
 +<​code>​
 +./​config_list -i /​tmp/​listatoto.conf listatoto
 +</​code>​
 +pensez à faire un ls vous verez les commandes suivantes
 +<​code>​
 +add_members ​  ​config_list ​ genaliases ​   msgfmt.py ​      ​show_qfiles
 +arch          convert.py ​  ​inject ​       msgfmt.pyc ​     smelist
 +b4b5-archfix ​ convert.pyc ​ list_admins ​  ​newlist ​        ​sync_members
 +change_pw ​    ​discard ​     list_lists ​   paths.py ​       transcheck
 +check_db ​     dumpdb ​      ​list_members ​ paths.pyc ​      ​unshunt
 +check_perms ​  ​find_member ​ list_owners ​  ​qrunner ​        ​update
 +cleanarch ​    ​fix_url.py ​  ​mailmanctl ​   remove_members ​ version
 +clone_member ​ fix_url.pyc ​ mmsitepass ​   rmlist ​         withlist
 +</​code>​
 +
 +et comme d’habitude,​ ./​config_list —help pour l’usage de la commande ici config_list.
 +
 +===== Petits trucs =====
 +
 +  * problemes avec AOL, les serveurs AOL n’accepte pas de router les messages venant de serveur personnel :(, solution faire la modif suivante :
 +<​code>​
 +pico /​var/​qmail/​control/​smtproutes
 +</​code>​
 +mettre :
 +<​code>​
 +.aol.com :​smtp.free.fr ou l’adresse du serveur smtp de votre FAI
 +</​code>​
 +relancer qmail par service qmail restart ​
 +
 +et copier le fichier pour l’enregistrer dans les templates
 +</​ode>​
 +echo "​.aol.com :​smtp.free.fr"​ >> /​etc/​e-smith/​templates/​var/​qmail/​control/​smtproutes/​30AOLroute ​
 +</​code>​
 +
 +  *  Voir les traitements de qmail par tail -f /​var/​log/​qmail/​current ​
 +
 +  qmHandle est un outils assez pratique pour suivres et faire quelques manipulations sur les queues des traitements de qmail.
 +<​code>​
 +cd /tmp
 +wget http://​contribs.org/​contribs/​saco/​contrib/​e-smith-qmHandle/​e-smith-qmHandle-1.0.0-7.noarch.rpm
 +rpm -Uvh e-smith-qmHandle-*.rpm
 +</​code>​
 +
 +  * Autres petits trucs
 +
 +  a o l ou t i scali refuse de transmetre les messages venant de serveur personnel :(
 +
 +solution : dans le /​var/​qmail/​control/​smtproutes mettre : aol.com :​smtp.free.fr ou le smtp de votre FAI
 +<​code>​
 +mkdir -p /​etc/​e-smith/​templates-custom/​var/​qmail/​control/​smtproutes/ ​
 +cd /​etc/​e-smith/​templates-custom/​var/​qmail/​control/​smtproutes/ ​
 +# sample script for free reverse-dns ​
 +echo "​tiscali.fr:​smtp.free.fr"​ >​./​60Tiscali ​
 +echo "​aol.com:​smtp.free.fr"​ >./61AOL
 +/​sbin/​e-smith/​expand-template /​var/​qmail/​control/​smtproutes ​
 +/​sbin/​service qmail restart
 +</​code>​
serveurs/mailman.txt · Last modified: 2015/08/30 22:55 (external edit)