admin:infrastructure:sympa
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Prochaine révision | Révision précédente | ||
| admin:infrastructure:sympa [2017/06/24 14:44] – créée fpoulain | admin:infrastructure:sympa [2026/03/03 22:53] (Version actuelle) – Correction typographique fhenry2 | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | ====== | + | ====== |
| - | Pour rappel on a une architecture avec un relais mail qui gère tout ce qui entre/sort du cluster au niveau du mail. Le sympa est installé sur une machine séparée. | + | ===== Création d'une liste ===== |
| - | ===== relais -> guest ===== | + | Pour créer une liste il faut utiliser l' |
| - | Pour que le relais transmette les emails au bon guest, il faut installer les bons transports. | + | Pour une liste de type support, il faut choisir le modèle //Template pour une liste de type support// qui contient notamment des éléments de configuration en lien avec la gestion des adresses en erreur. |
| - | <code conf /etc/postfix/ | + | Voir le [[https://agir.april.org/ |
| - | transport_maps = hash:/etc/postfix/transports/sympa, hash:/etc/postfix/transports/slow_domains, hash:/etc/postfix/transports/sympa-static | + | |
| + | Il faut choisir un //objet// pour la liste. | ||
| + | |||
| + | L' | ||
| + | Choisir | ||
| + | |||
| + | Ajouter une // | ||
| + | |||
| + | Puis cliquer sur //Envoyer votre demande de création// | ||
| + | |||
| + | La liste est créée. | ||
| + | Il faut ensuite ajouter les adresses courriels des personnes qui recevront les courriels de support dans l' | ||
| + | Mettre aussi ces adresses en // | ||
| + | |||
| + | Puis envoyer un courriel de test avec une adresse non inscrite à la liste, pour vérifier la bonne diffusion du message. | ||
| - | sympa_destination_recipient_limit = 1 | + | Pour la création du modèle //Template pour une liste de type support// procéder comme suit : |
| - | sympabounce_destination_recipient_limit = 1 | + | <code bash> |
| + | mkdir -p / | ||
| + | cp / | ||
| + | / | ||
| </ | </ | ||
| - | Par ailleurs il faut que le relais reconnaisse les transports comme des destinataires valides. Nous avons donc | + | Ces deux copies peuvent être éditées pour personnaliser le modèle. |
| - | < | + | |
| + | ===== Modification d'un message envoyé par Sympa ===== | ||
| + | |||
| + | Il y a un mauvais message affiché lorsqu' | ||
| + | Cela induit en erreur la personne qui, du coup, peut ne pas valider l' | ||
| + | |||
| + | La personne reçoit deux courriels. | ||
| + | Un courriel de Sympa pour valider son inscription mais elle reçoit un 2e courriel indiquant //La demande a été soumise au gestionnaire de la liste//. | ||
| + | |||
| + | C'est exactement le même souci qu' | ||
| + | |||
| + | On applique la même résolution que pour l’instance Sympa de l' | ||
| + | <code bash> | ||
| + | apt install gettext | ||
| + | mkdir / | ||
| + | cd / | ||
| + | dpkg -s sympa |grep Version | ||
| + | wget http:// | ||
| + | tar Jxvf sympa_6.2.60~dfsg.orig.tar.xz | ||
| + | cd sympa-6.2.60/ | ||
| + | msgfmt -c -o fr.mo -v fr.po | ||
| + | </ | ||
| + | < | ||
| + | -> 2810 messages traduits, 1 traduction approximative, | ||
| + | </ | ||
| + | |||
| + | En comparant au fichier qui est livré avec le paquet Debian : | ||
| + | <code bash> | ||
| + | diff -u / | ||
| + | </ | ||
| + | < | ||
| + | fichier identique (parfait) | ||
| + | </ | ||
| + | |||
| + | On peut donc modifier le fichier '' | ||
| + | <code bash> | ||
| + | cp fr.po fr.po.orig | ||
| + | vi fr.po | ||
| + | diff -u fr.po.orig fr.po | ||
| + | </ | ||
| + | < | ||
| + | -msgstr "La demande a été soumise au gestionnaire de la liste (%1)" | ||
| + | +msgstr "Votre requête à été transmise à l' | ||
| + | </ | ||
| + | <code bash> | ||
| + | msgfmt -c -o fr.mo -v fr.po | ||
| + | </ | ||
| + | |||
| + | On met en production : | ||
| + | <code bash> | ||
| + | cd / | ||
| + | cp sympa.mo sympa.mo.dpkg | ||
| + | cp ~/ | ||
| + | systemctl restart sympa | ||
| + | systemctl restart wwsympa | ||
| + | </ | ||
| + | |||
| + | ===== Interconnexion entre Sympa et Postfix ===== | ||
| + | |||
| + | Pour rappel on a une architecture avec un relais courriel qui gère tout ce qui entre ou sort du //cluster// au niveau du courriel. | ||
| + | Le service Listes est installé sur une VM séparée. | ||
| + | Pour éviter la confusion on nommera '' | ||
| + | |||
| + | <note important> | ||
| + | On est ici dans une documentation //a posteriori// | ||
| + | </ | ||
| + | |||
| + | ==== Postfix coté relais ==== | ||
| + | |||
| + | Pour que la VM '' | ||
| + | |||
| + | <code - / | ||
| + | transport_maps = hash:/ | ||
| + | </ | ||
| + | |||
| + | Par ailleurs il faut que '' | ||
| + | Nous avons donc cette ligne : | ||
| + | < | ||
| local_recipient_maps = proxy: | local_recipient_maps = proxy: | ||
| </ | </ | ||
| - | Examinons | + | On examine |
| - | - '' | + | - '' |
| - | orange.fr slow: | + | < |
| + | aliceadsl.fr slow: | ||
| + | free.fr slow: | ||
| + | hotmail.com slow: | ||
| + | hotmail.fr slow: | ||
| + | infonie.fr slow: | ||
| laposte.net slow: | laposte.net slow: | ||
| - | wanadoo.fr slow: | + | libertysurf.fr slow: |
| - | yahoodns.net slow: | + | live.com slow: |
| live.fr slow: | live.fr slow: | ||
| + | orange.com slow: | ||
| + | orange.fr slow: | ||
| + | wanadoo.com slow: | ||
| + | wanadoo.fr slow: | ||
| + | yahoo.com slow: | ||
| + | yahoo.fr slow: | ||
| </ | </ | ||
| - | - '' | + | - '' |
| + | < | ||
| sympa@chapril.org | sympa@chapril.org | ||
| sympa-request@chapril.org | sympa-request@chapril.org | ||
| + | sympa-owner@chapril.org | ||
| </ | </ | ||
| - | - '' | + | - '' |
| - | ## Généré | + | < |
| + | ## Généré | ||
| ## À copier dans mail.cluster.chapril.org:/ | ## À copier dans mail.cluster.chapril.org:/ | ||
| ## List aliases used for the sympa mailing-list manager | ## List aliases used for the sympa mailing-list manager | ||
| Ligne 39: | Ligne 147: | ||
| test-unsubscribe@chapril.org | test-unsubscribe@chapril.org | ||
| test-owner@chapril.org | test-owner@chapril.org | ||
| + | </ | ||
| + | |||
| + | ==== Postfix coté guest ==== | ||
| + | |||
| + | C'est plus direct car basiquement on applique moins de contrôle. | ||
| + | Une configuration Postfix satellite avec '' | ||
| + | Ne restent plus que quelques adaptations. | ||
| + | |||
| + | Les adaptations : | ||
| + | <code - / | ||
| + | # On sert localement le domaine chapril.org | ||
| + | mydestination = $myhostname, | ||
| + | |||
| + | # D' | ||
| + | alias_maps = | ||
| + | alias_database = $alias_maps | ||
| + | |||
| + | # Mais en cas de doute on renvoit au relais | ||
| + | fallback_transport = smtp: | ||
| + | |||
| + | # On accepte de recevoir du mail depuis le relais | ||
| + | mynetworks = 127.0.0.0/8 [:: | ||
| + | inet_interfaces = all | ||
| + | |||
| + | # Reglages Sympa | ||
| + | virtual_alias_maps = hash:/ | ||
| + | transport_maps = regexp:/ | ||
| + | |||
| + | sympaqueue_destination_recipient_limit = 1 | ||
| + | sympabouncequeue_destination_recipient_limit = 1 | ||
| + | </ | ||
| + | |||
| + | <note important> | ||
| + | On passe par des transports vers de nouveaux services et non par des alias car ça nous permet de contrôler l'UID du service dans '' | ||
| + | Se référer au [[https:// | ||
| + | </ | ||
| + | |||
| + | <code - / | ||
| + | / | ||
| + | / | ||
| + | </ | ||
| + | |||
| + | <code - / | ||
| + | # Sympa mailing list manager transports | ||
| + | sympaqueue | ||
| + | flags=RF user=sympa argv=/ | ||
| + | sympabouncequeue unix - | ||
| + | flags=RF user=sympa argv=/ | ||
| + | </ | ||
| + | |||
| + | |||
| + | <code - / | ||
| + | # default contact emails | ||
| + | postmaster: | ||
| + | sympa-owner: | ||
| + | sympa-request: | ||
| + | </ | ||
| + | |||
| + | Enfin, notre fichier de transports est ainsi fait (on voit sa construction juste après) : | ||
| + | <code - / | ||
| + | ## Généré automatiquement sur sympa.cluster.april.org via systemd (sympa-transports.path) | ||
| + | ## Destiné à sympa.cluster.chapril.org:/ | ||
| + | |||
| + | sympa@chapril.org sympa+chapril.org@sympaqueue. | ||
| + | |||
| + | ## List aliases used for the sympa mailing-list manager | ||
| + | test@chapril.org test+chapril.org@sympaqueue. | ||
| + | test-request@chapril.org test-request+chapril.org@sympaqueue. | ||
| + | test-editor@chapril.org test-editor+chapril.org@sympaqueue. | ||
| + | # | ||
| + | test-unsubscribe@chapril.org test-unsubscribe+chapril.org@sympaqueue. | ||
| + | test-owner@chapril.org test+chapril.org@sympabouncequeue. | ||
| + | </ | ||
| + | |||
| + | ===== Construction du fichier d' | ||
| + | |||
| + | En fait Sympa fait ça tout seul comme un grand si on lui demande. | ||
| + | |||
| + | <code - / | ||
| + | sendmail_aliases / | ||
| + | alias_manager | ||
| + | </ | ||
| + | |||
| + | Il est poli et exécute '' | ||
| + | |||
| + | <note tip> | ||
| + | Si d' | ||
| + | |||
| + | Ce fichier par défaut a les alias de type '' | ||
| + | Or ce type d' | ||
| + | Donc, copier le fichier ''/ | ||
| + | Modifier cette copie pour avoir les alias '' | ||
| + | La régénération du fichier ''/ | ||
| + | Mais pour les listes déjà existantes les entrées dans le fichier ne sont pas modifiées. | ||
| + | Il faut donc modifier manuellement ce fichier. | ||
| + | </ | ||
| + | |||
| + | Maintenant il faut pousser cette configuration proprement sur '' | ||
| + | |||
| + | ===== Création et installation du fichier d' | ||
| + | |||
| + | <note tip> | ||
| + | On va se faire aider de Systemd à l'aide d'une //unit// de type '' | ||
| + | Se référer à // | ||
| + | </ | ||
| + | |||
| + | ==== Sur la machine guest ==== | ||
| + | |||
| + | On va installer le programme suivant : | ||
| + | <file bash / | ||
| + | #!/bin/bash | ||
| + | echo '## Généré automatiquement sur sympa.cluster.april.org via systemd (sympa-transports.path)' | ||
| + | echo '## À copier dans mail.cluster.chapril.org:/ | ||
| + | awk -F ':' | ||
| + | |||
| + | echo '## Généré automatiquement sur sympa.cluster.april.org via systemd (sympa-transports.path)' | ||
| + | echo '## Destiné à sympa.cluster.chapril.org:/ | ||
| + | |||
| + | echo ' | ||
| + | sed -e ' | ||
| + | |||
| + | postmap / | ||
| + | |||
| + | scp / | ||
| + | |||
| + | export GIT_AUTHOR_EMAIL=sympa@chapril.org | ||
| + | export GIT_AUTHOR_NAME=Sympa | ||
| + | |||
| + | git -C /etc add / | ||
| + | git -C /etc commit -m 'MaJ des alias des listes' | ||
| + | </ | ||
| + | |||
| + | Ainsi que les //units// suivantes de Systemd : | ||
| + | <code ini / | ||
| + | [Unit] | ||
| + | Description=Wait for new sympa transports | ||
| + | |||
| + | [Path] | ||
| + | PathChanged=/ | ||
| + | Unit=sympa-transports.service | ||
| + | |||
| + | [Install] | ||
| + | WantedBy=multi-user.target | ||
| + | </ | ||
| + | |||
| + | <code ini / | ||
| + | [Unit] | ||
| + | Description=Push sympa transports toward postfix | ||
| + | |||
| + | [Service] | ||
| + | Type=simple | ||
| + | ExecStart=/ | ||
| + | |||
| + | [Install] | ||
| + | WantedBy=multi-user.target | ||
| + | </ | ||
| + | |||
| + | Ce qu'on va penser à activer : | ||
| + | <code bash> | ||
| + | systemctl enable sympa-transports.path sympa-transports.service | ||
| + | systemctl start sympa-transports.path sympa-transports.service | ||
| + | </ | ||
| + | | ||
| + | ==== Sur la machine relais ==== | ||
| + | |||
| + | On va installer le programme suivant : | ||
| + | <file bash / | ||
| + | #!/bin/bash | ||
| + | cd / | ||
| + | |||
| + | export GIT_AUTHOR_EMAIL=sympa@chapril.org | ||
| + | export GIT_AUTHOR_NAME=Sympa | ||
| + | |||
| + | git add transports/ | ||
| + | git commit -m 'MaJ des alias des listes' | ||
| + | </ | ||
| + | |||
| + | Ainsi que les //units// suivantes de Systemd : | ||
| + | <code ini / | ||
| + | [Unit] | ||
| + | Description=Wait for new sympa transports | ||
| + | |||
| + | [Path] | ||
| + | PathChanged=/ | ||
| + | Unit=sympa-transports.service | ||
| + | |||
| + | [Install] | ||
| + | WantedBy=multi-user.target | ||
| + | </ | ||
| + | |||
| + | <code ini / | ||
| + | [Unit] | ||
| + | Description=Push sympa transports toward postfix | ||
| + | |||
| + | [Service] | ||
| + | Type=simple | ||
| + | ExecStart=/ | ||
| + | |||
| + | [Install] | ||
| + | WantedBy=multi-user.target | ||
| + | </ | ||
| + | |||
| + | Ce qu'on va penser à activer : | ||
| + | <code bash> | ||
| + | systemctl enable sympa-transports.path sympa-transports.service | ||
| + | systemctl start sympa-transports.path sympa-transports.service | ||
| </ | </ | ||
admin/infrastructure/sympa.1498315488.txt.gz · Dernière modification : 2017/06/24 14:44 de fpoulain
