Le CULTe est le club d'informatique de Toulouse/Ramonville avec lequel je travaille depuis plus de dix ans.

Le principal serveur du CULTe a été configuré il y a 12 ans... il vient de rendre l'âme.

Il tournait pour les mails avec qmail ezmlm, et on m'a vivement déconseillé d'essayer de faire fonctionner le nouveau serveur avec ce logiciel, ma compétence étant limitée.

Je vais raconter ici à mesure des travaux, la configuration de ce serveur.

Il y a pas mal de temps de je gère des mini serveurs, donc le mien, sur lequel vous êtes en ce moment. J'ai déjà écrit là dessus, fouillez un peu mon site web, vous trouverez :-).

On this page... (hide)

  1.   1.  Le serveur web:
  2.   2.  PMWIKI
  3.   3.  Mailman
  4.   4.  Opérations pratiques

1.  Le serveur web:

Il tourne sous openSUSE, la seule distribution avec laquelle je suis à l'aise. Mon serveur perso est sous la 11.4, celui du CULTe sous la 12.1, je vais ici parler de ce dernier.

Il fait tourner apache2 pour le web, avec quelques serveur virtuels, sans aucun problème réel. C'est aussi moi qui gère les zones DNS sur les DNS de GANDI, je n'ai jamais vu l'intérêt d'avoir les miens.

2.  PMWIKI

L'installation du wiki (http://pmwiki.org) est très simple. J'évite d'utiliser une base de données, quand je peux (j'ai pas pu, par exemple, pour ma galerie photo), car sauvegarde et restauration deviennent acrobatiques.

J'ai aussi recopié très facilement le wiki sur le nouveau serveur le moment venu, il a juste fallu adapter les permissions d'un répertoire, mais il y avait une aide en ligne parfaite.

Pmwiki est un produit tout à fait remarquable, très simple et très performant. Son seul défaut est qu'il est très modulaire, du coup il peut être assez long de configurer tous les modules (cookbooks dans sa terminologie).

3.  Mailman

Mailman est le gestionnaire de listes de discussions GNU. C'est aussi à peu près le seul qui reste, listar n'est plus maintenu, majordomo est dans les choux, sympa demande une base de données... va pour mailman.

4.  Opérations pratiques

  • Sauvegarde du serveur - une sauvegarde existe qui ne nécessite que des modifications mineures pour fonctionner (changement des permissions de répertoire wiki.d) et chaque sauvegarde nécessite 5Go, on va donc se contenter de faire un cliché (snapshot). Pour ca il faut une connexion en graphique à travers VNC (sur le mulet m-r), mais ca peut se faire sans arrêter le serveur. FAIT (18 Fev 2012, 10h).
  • Adaptation de la page de garde du site web (pour pointer vers le wiki - http://www.pmwiki.org/wiki/PmWiki/Installation) et création d'un compte utilisateur pour tester les mails. Pour ca le plus commode est une liaison ssh. Noter que l'usage de VNC avec des codes de caractères UTF8 entraîne des réponses du clavier bizarres. Ca ressemble à du QWERTY, mais par exemple le m est à la place du ;. Le compte utilisateur est "culte", mais avec un mot de passe plus complexe que ce que nous utilisons d'habitude :-). FAIT 18 Février 2012 11h.
  • Adaptation des zones. Je gère les zones de culte.org sur les DNS de GANDI. L'ancien serveur savage est maintenant un sous domaine qui pointe sur notre IP à l'IUT (192.54.227.231), juste au cas où son arrêt serait accidentel. "lists", "news" et "www" sont des CNAME sur culte.org, "*.asso", "mailman", "reborn", "asso" et bien sûr "@" sont des enregistrements A qui pointent sur l'IP de la freebox (82.234.76.241). Il n'est pas nécessaire d'avoir un MX explicite si c'est le même serveur qui fait office de serveur mail, ce qui est le cas. (était déjà fait).
  • Adaptation du pare feu. Je ne sais plus comment j'ai réglé le réseau, mais je vais changer le moins de choses possibles ici car sans réseau l’accès est limité. Il est encore possible car c'est une machine virtuelle, je peux donc y accéder par VNC tant que l'hôte marche. Ici il y avait une vieille config sur eth0 que j'ai supprimé et la carte réseau n'avait pas d'interface affecté, heureusement que les autorisations de passage étaient réglées sur "toutes les interfaces"... Affectée à "extérieure".
  • Test du redémarrage. Tel que, au redémarrage, le réseau ne repart pas (ce qui avait provoqué la nécessité de récupérer les sauvegardes la dernière fois). Mais j'ai trouvé ce qui ne va pas: il faut désactiver (dans YaST) l'usage de l'IPV6, et tout redémarre. Du coup je vais peut-être pouvoir récupérer ma précédent config (j'ai juste un répertoire à renommer).
  • Test du courrier par défaut
    • le courrier passe du compte culte vers mon mail perso, mais d'une part le nom de domaine de retour est savage-reborn.culte.org qui ne passe pas (ca peut se corriger de diverses manières), et le courrier ne passe pas dans l'autre sens (de jdd vers culte).

Reprise du travail Lundi 20 Février

Pour tester postfix, j'envoie un courrier de root vers jdd:

Return-Path: <root@culte.org>
X-Original-To: jdd@dodin.org
Delivered-To: jdd@dodin.org
Received: from savage-reborn.culte.org (ram31-1-82-234-76-241.fbx.proxad.net [82.234.76.241])
	by dodin.org (Postfix) with ESMTP id D1B831774
	for <jdd@dodin.org>; Mon, 20 Feb 2012 08:10:20 +0100 (CET)
Received: by savage-reborn.culte.org (Postfix, from userid 0)
	id 60DD03FC1D; Mon, 20 Feb 2012 08:13:38 +0100 (CET)
Date: Mon, 20 Feb 2012 08:13:38 +0100
To: jdd@dodin.org
Subject: to jdd to see headers
User-Agent: Heirloom mailx 12.5 7/5/10
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: quoted-printable
Message-Id: <20120220071338.60DD03FC1D@savage-reborn.culte.org>
From: root@culte.org (root)

=

Je ne vois aucun problème là. Je renvoie le post depuis chez moi, ce qui donne sur s-r:

Message 11:
From jdd@dodin.org  Mon Feb 20 08:14:20 2012
X-Original-To: root@culte.org
Delivered-To: root@culte.org
Date: Mon, 20 Feb 2012 08:14:14 +0100
From: jdd <jdd@dodin.org>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:10.0.1) Gecko/20120208 Thunderbird/10.0.1
MIME-Version: 1.0
To: root <root@culte.org>
Subject: Re: to jdd to see headers (return?)
References: <20120220071338.60DD03FC1D@savage-reborn.culte.org>
In-Reply-To: <20120220071338.60DD03FC1D@savage-reborn.culte.org>
Content-Type: text/plain; charset=ISO-8859-15; format=flowed
Content-Transfer-Encoding: 8bit

Le 20/02/2012 08:13, root a écrit :

--
http://www.dodin.net

Ca a l'air bon! Pour autant mailman ne délivre toujours pas les mails...

(NB: ma freebox me coupe ma liaison internet très régulièrement - elle boucle entre les stades 3 et 4, du coup mon travail est perturbé).

Nouveau test, résultat à priori correct:

sendmail -bv linux-31@culte.org
<linux-31@culte.org>: delivery via local: delivers to command:
    /usr/lib/mailman/mail/mailman post linux-31

Vérification des alias:

 newaliases -oA/var/lib/mailman/data/aliases

On dirait que j'ai retrouvé les messages:

/var/lib/mailman/data # ls
adm.pw                   heldmsg-linux-31-11.pck  heldmsg-linux-31-16.pck  heldmsg-linux-31-20.pck  heldmsg-linux-31-25.pck  heldmsg-linux-31-3.pck  heldmsg-linux-31-8.pck
aliases                  heldmsg-linux-31-12.pck  heldmsg-linux-31-17.pck  heldmsg-linux-31-21.pck  heldmsg-linux-31-26.pck  heldmsg-linux-31-4.pck  heldmsg-linux-31-9.pck
aliases.db               heldmsg-linux-31-13.pck  heldmsg-linux-31-18.pck  heldmsg-linux-31-22.pck  heldmsg-linux-31-27.pck  heldmsg-linux-31-5.pck  last_mailman_version
heldmsg-conseil-1.pck    heldmsg-linux-31-14.pck  heldmsg-linux-31-19.pck  heldmsg-linux-31-23.pck  heldmsg-linux-31-28.pck  heldmsg-linux-31-6.pck  master-qrunner.pid
heldmsg-linux-31-10.pck  heldmsg-linux-31-15.pck  heldmsg-linux-31-1.pck   heldmsg-linux-31-24.pck  heldmsg-linux-31-2.pck   heldmsg-linux-31-7.pck  sitelist.cfg

La page qui semble me concerner:

 http://wiki.list.org/display/DOC/4.78+Troubleshooting-+No+mail+going+out+to+lists+members

20 Février, 14h30

Je viens de configurer mailman sur mon serveur perso assez facilement, et il marche :-). Au pire on pourra utiliser celui-là, au mieux demain j'espère avoir refait correctement la config du CULTe :-)

21 Février 10h

Redémarré le serveur pour contrôle->pas de réseau, retour au cliché précédent de VirtualBox qui, au moins, lui, a le réseau.

Différences entre dodin.org et culte.org

/etc/hosts: dodin.org a une IP externe (kimsufi) alors que culte.org utilise un nat, la machine virtuelle étant dans un réseau interne en 192...

Pourtant un mail envoyé de root@culte.org vers jdd@dodin.org arrive avec des en-têtes corrects et si j'y répond, la réponse arrive à root@culte.org sans souci.

Suite des vérifications:

(la page en question)

hostname: le hostname est réglé sur le nom de la machine seul sur les deux machines (kim3 d'un coté, savage-reborn de l'autre).

Resolv.conf contient bien search culte.org

problème résolu. Plus dès que j'ai le temps.

Bien. Le problème était à la fois simple et vicieux. La configuration des fichiers sous openSUSE est faite par un script qui s'appelle "SuSEconfig". Il est le plus souvent appelé par YaST, mais on peut aussi l'appeler à la main il suffit de taper SuSEconfig dans une console root.

Mais openSUSE veut vous laisser le choix de faire la configuration "à la main". Le script a donc une méthode pour reconnaître les fichiers qu'il a créé lui-même et ceux qui ont été modifiés par l'utilisateur. Dans ce dernier cas, en général, il écrit un autre fichier, à coté du précédent, avec une extension et qui contient ses données.

Pour je ne sais quelle raison, le script a considéré que je ne voulais pas qu'il touche au fichier /usr/lib/mailman/Mailman/mm_cfg.pyc qui contient la config de mailman, et n'y a donc pas touché.

Dès que je m'en suis rendu compte il a suffit de remplacer le fichier par défaut par le fichier openSUSE et mailman s'est mis à marcher.

 savage-reborn:/usr/lib/mailman/Mailman #

 cp mm_cfg.pyc.rpmnew mm_cfg.pyc

 systemctl restart mailman.service 

Concrètement, mailman s'attends à avoir un programme d'envoi de courrier qui s'appelle "sendmail", et celui d'openSUSE a un autre nom.