admin:infrastructure:sympa
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| admin:infrastructure:sympa [2017/06/24 15:01] – [guest -> sympa] 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. |
| - | < | + | Voir le [[https:// |
| + | |||
| + | Il faut choisir un //objet// pour la liste. | ||
| + | |||
| + | L' | ||
| + | Choisir //Autre// tout en bas de la liste. | ||
| + | |||
| + | 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. | ||
| + | |||
| + | Pour la création du modèle //Template pour une liste de type support// procéder comme suit : | ||
| + | <code bash> | ||
| + | mkdir -p / | ||
| + | cp / | ||
| + | / | ||
| + | </ | ||
| + | |||
| + | 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 | ||
| + | |||
| + | 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 '' | ||
| + | |||
| + | < | ||
| transport_maps = hash:/ | transport_maps = hash:/ | ||
| </ | </ | ||
| - | Par ailleurs il faut que le relais reconnaisse les transports comme des destinataires valides. Nous avons donc | + | 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é automatiquement sur sympa.cluster.april.org via incron | + | < |
| + | ## Généré automatiquement sur sympa.cluster.april.org via systemd (sympa-transports.path) | ||
| ## À 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 38: | Ligne 149: | ||
| </ | </ | ||
| - | ===== guest -> relais ===== | + | ==== Postfix coté guest ==== |
| - | C'est plus direct car basiquement on applique moins de contrôle. Une conf postfix | + | C'est plus direct car basiquement on applique moins de contrôle. |
| + | Une configuration Postfix | ||
| + | Ne restent plus que quelques adaptations. | ||
| - | ===== guest -> sympa ===== | + | Les adaptations : |
| + | < | ||
| + | # On sert localement le domaine chapril.org | ||
| + | mydestination = $myhostname, | ||
| - | Là on retrouve la configuration | + | # D' |
| + | alias_maps = | ||
| + | alias_database = $alias_maps | ||
| - | <code conf main.cf> | + | # Mais en cas de doute on renvoit au relais |
| - | alias_maps | + | fallback_transport |
| - | [...] | + | # On accepte de recevoir du mail depuis le relais |
| + | mynetworks = 127.0.0.0/ | ||
| + | inet_interfaces = all | ||
| - | # Un seul envoi/destinataire envoyé aux services | + | # Reglages Sympa |
| - | sympa_destination_recipient_limit | + | virtual_alias_maps = hash:/ |
| - | sympabounce_destination_recipient_limit | + | transport_maps = regexp:/ |
| + | |||
| + | sympaqueue_destination_recipient_limit | ||
| + | sympabouncequeue_destination_recipient_limit | ||
| </ | </ | ||
| - | Notre fichier d' | + | <note important> |
| - | <code conf / | + | 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 '' |
| - | ## List aliases used for the sympa mailing-list manager | + | Se référer au [[https://agir.april.org/issues/3149|ticket n°3149]]. |
| - | test: " | + | </note> |
| - | test-request: | + | |
| - | test-editor: | + | < |
| - | #test-subscribe: " | + | /^.*\@sympaqueue$/ sympaqueue: |
| - | test-unsubscribe: | + | /^.*\@sympabouncequeue$/ sympabouncequeue: |
| - | test-owner: "| / | + | |
| </ | </ | ||
| - | et | + | |
| - | < | + | < |
| + | # Sympa mailing list manager transports | ||
| + | sympaqueue | ||
| + | flags=RF user=sympa argv=/ | ||
| + | sympabouncequeue unix - | ||
| + | flags=RF user=sympa argv=/ | ||
| + | </ | ||
| + | |||
| + | |||
| + | <code - / | ||
| # default contact emails | # default contact emails | ||
| postmaster: | postmaster: | ||
| sympa-owner: | sympa-owner: | ||
| sympa-request: | sympa-request: | ||
| - | sympa: | + | </code> |
| - | listmaster: smtp:[mail.cluster.chapril.org] | + | Enfin, notre fichier de transports est ainsi fait (on voit sa construction juste après) |
| + | <code - /etc/mail/ | ||
| + | ## 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' | ===== Construction du fichier d' | ||
| - | En fait sympa fait ça tout seul comme un grand. | + | 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.1498316515.txt.gz · Dernière modification : 2017/06/24 15:01 de fpoulain
