Mailman/fr

From SME Server
Revision as of 03:43, 14 April 2022 by Unnilennium (talk | contribs)
Jump to navigationJump to search


Mailman

Mainteneur

stephdl Stéphane de Labrusse AKA Stephdl

Version

Contrib 10:
Contrib 9:
smeserver-mailman
The latest version of smeserver-mailman is available in the SME repository, click on the version number(s) for more information.


Description

Mailman est un logiciel gratuit de gestion des discussions par courrier électronique et des listes de lettres d'information électroniques. Mailman est intégré au Web, ce qui permet aux utilisateurs de gérer facilement leurs comptes et aux propriétaires de listes d'administrer leurs listes. Mailman prend en charge l'archivage intégré, le traitement automatique des retours, le filtrage de contenu, la livraison de résumé, les filtres anti-pourriels, etc.

Merci à Gordon Rowell pour le dévelopement du paquet.

Installation

yum install smeserver-mailman --enablerepo=smecontribs 
  • for sme8, sme9
yum install smeserver-mailman --enablerepo=smecontribs 
signal-event mailman-update

ou si vous voulez redémarrer votre serveur :

signal-event post-upgrade;signal-event reboot

Vous devriez maintenant voir une section Mailman sous la section Configuration du gestionnaire du serveur. Veuillez consulter les problèmes connus ci-dessous pour configurer votre session mailman. Gardez à l'esprit que le mot de passe administrateur mailman n'est pas le même que celui du serveur SME, Lisez la section ci-dessous pour voir comment trouver votre mot de passe.

Configuration

Créer des listes

Error: You are not authorized to create new mailing lists

L'administrateur du serveur SME KOOZALI n'est pas autorisé à créer des listes (même depuis le gestionnaire du serveur), voici comment obtenir le mot de passe administrateur mailman : voir bugzilla:7836.


Information.png Astuce
le mot de passe de mailman est différent du mot de passe administrateur du serveur SME KOOZALI, cependant pour connaître le mot de passe de mailman, vous pouvez lancer la commande suivante dans un terminal en « root » :


[root@sme8dev64 ~]# config show mailman 
mailman=service
    SitePass=[VOTRE_MOT_DE_PASSE_EST_ICI]
    status=enabled

Vous devez utiliser la valeur de SitePass comme mot de passe mailman pour créer des listes. Si vous changez ultérieurement le mot de passe avec /usr/lib/mailman/bin/mmsitepass, vous *DEVEZ* mettre à jour SitePass par :

config setprop mailman SitePass VOTRE_MOT_DE_PASSE
Error: Unknown virtual host: xxxxxx.xx

Go to http://domain.name/mailman to create new lists.

If your SMEServer has multiple domains configured, do not prepend www. before the virtual domain.

For example: go to http:// virtualdomain.name/mailman to create lists for that domain name.

Keep in mind that no list can have the same name as an ibay, group or an user so choose the name carefully.

Important.png Note:
Always use http://domain.name/mailman to create your list, where domain.name is the exact domain you want to be used after the "@". Failing to do so, will lead to denial to relay error. As an example do not go to http://hostname.domain.name/mailman to create a mailing list for mailinglist@domain.name but to http://domain.name/mailman. see Bugzilla:5976

If you don't use a FQDN domain Name as described above, you can have an error like this one

Error: Unknown virtual host: xxxxxx

where xxxxxx is the hostname of your Server. see bugzilla:7837



Information.png Tip:
Further more You have to define the concerned domain in the server-manager's domain panel. You can select whether this domain is resolved locally, passed to the corporate DNS servers, or resolved by the Internet DNS servers, otherwise you will have the message: Error: Unknown virtual host: xxxxxx


"www" instead of "apache
But if you are not running the contribs compiled version, Mailman's management interface shows up with a CGI error message. It complains about group mismatch error between "www" and "apache". Login as root and apply the following workaround, which was suggested in bugzilla:6425:
id -u apache                  # should yield 48
id -u www                     # should yield 102
usermod -u 102 -o apache      # makes apache user and www user identical
groupmod -g 102 -o apache     # make apache group and www group identical

File locations

Location Description
/var/lib/mailman location of mailman lists and archives
/usr/lib/mailman location of mailman program files
/usr/lib/mailman/aliases location of qmail alias files

Command line options

You can do a lot using the command line scripts located in /usr/lib/mailman/bin

For example

/usr/lib/mailman/bin/mmsitepass will set the master password for all lists
/usr/lib/mailman/bin/list_members [listname] will list the members of [listname]
/usr/lib/mailman/bin/list_admins [listname] will list all admins of [listname]
/usr/lib/mailman/bin/list_lists will list your mailling lists
/usr/lib/mailman/bin/list_owners will list all owners of mailling lists or will list all mailling list

Running the script with --help will display the options available

Transferring Lists

You can transfer lists from another server and keep everything in tact. It's an easy process but the Mailman FAQ and info seems to be sparse and complicated. This simplifies everything.

OLD SERVER

First stop the mailman service.

/etc/init.d/mailman stop

Next, tar/zip up the lists.

tar -czvf /temp/mailman.tar.gz /var/lib/mailman

Next, transfer it onto the new server using scp or rsync:

scp -P <sshportnumber> /temp/mailman.tar.gz <newserverip>:/var/lib

or

rsync --progress -te "ssh -p <sshportnumber>" /temp/mailman.tar.gz <newserverip>:/var/lib

NEW SERVER

Change to the rpm location.

cd /install

Install the rpms.

yum localinstall mailman-* smeserver-mailman-*

Extract/untar/unzip the tar/zip file.

tar -xvzf /var/lib/mailman.tar.gz

The lists are transferred but the SME SERVER doesn't know about them. Let the server know about the list:

signal-event mailman-addlist <listname>

All your lists and lists' configurations should now be available at: http://domain.name/mailman

Personalization

Important.png Note:
Be warned that personalization is going to stress your server a lot as every mail is sent individually, not in batches as mailman usually do, so test this option before using in a production server


If you want to enable personalization in mailman (make every mail sent with the name of the recipient in the to: field as example or add the name of the user on the text) you do this:

  1. Create the custom-templates tree, in case it does not exist already: mkdir -p /etc/e-smith/templates-custom/usr/lib/mailman/Mailman/mm_cfg.py/
  2. Copy the hostname file from the templates tree to the templates-custom tree maintaining the directory layout: cp \ /etc/e-smith/templates/usr/lib/mailman/Mailman/mm_cfg.py/30hostname \ /etc/e-smith/templates-custom/usr/lib/mailman/Mailman/mm_cfg.py/30hostname
  3. Now we need to add one line to the custom template fragment to enable personalization: echo OWNERS_CAN_ENABLE_PERSONALIZATION = 1 >> \ /etc/e-smith/templates-custom/usr/lib/mailman/Mailman/mm_cfg.py/30hostname
  4. To refelct your changes we need to regenerate the file using the following commands: expand-template /usr/lib/mailman/Mailman/mm_cfg.py signal-event reboot
  5. After the server comes back up again enter your mailing list admin and go to non-digest and in "Should Mailman personalize each non-digest delivery?" choose either yes or full personalization. Test both to see wich one do you like more... Also if you want to add a header with the person name enter in "Header added to mail sent to regular list members" this: Hello dear %(user_name)s and mailman is going to replace the string with the name the person used when he/she subscribed.

Import lists from ezmlm

Get the script ezmlm2mbox from http://www.arctic.org/~dean/scripts/ezmlm2mbox

wget http://www.arctic.org/~dean/scripts/ezmlm2mbox -O 

Get subscribers:

ezmlm-list /home/e-smith/files/ezmlm/lists/mylist > mylist.subscribers

Get denied subscribers:

ezmlm-list /home/e-smith/files/ezmlm/lists/mylist deny > mylist.deny

Convert the ezmlm list to an mbox-file: ./ezmlm2mbox /home/e-smith/files/ezmlm/lists/mylist > mylist.mbox Backup the ezmlm list, just in case ...

tar -czf mylist.tgz /home/e-smith/files/ezmlm/lists/mylist

Then using the server-manager:

  1. Remove the ezmlm list, via the ezmlm web panel
  2. Create the new Mailman list, via the Mailman web panel
  3. Add subscribers to the new list, using the file you made in step 1. I prefer to do this in silence, without letting the subscribers know.
  4. Check the file mylist.deny from step 2, and - if needed - adjust the settings of your new list accordingly.


Import the mbox to Mailman

cp mylist.mbox  /var/lib/mailman/archives/private/mylist.mbox/mylist.mbox
/opt/mailman/bin/arch --wipe mylist

Check and fix ownerships and access rights

/opt/mailman/bin/check_perms -f

from : https://forums.contribs.org/index.php/topic,53230.0.html

For more information

Mailman website http://www.list.org/ Mailman FAQ http://www.python.org/cgi-bin/faqw-mm.py?req=all

Current Issues

  • Check submitted bugs in the bug tracker under the contrib component "smeserver-mailman"
  • Current mailman release is 2.1.9
  • Bugzilla:2411: /usr/lib/mailman/aliases and /var/lib/mailman are not currently backed up

Bugs

Please raise bugs under the SME-Contribs section in bugzilla and select the smeserver-mailman component or use this link .

IDProductVersionStatusSummary (2 tasks)
11948SME Contribs10.0CONFIRMEDNFR add property and fragment to allow personalization
11938SME Contribs10.0CONFIRMEDas mailman create the list for a specific domain we should use the domain in account entry as we do for pseudonyms

Changelog

Only released version in smecontrib are listed here.

smeserver-mailman Changelog: SME 10 (smecontribs)
2024/09/06 terry Fage 1.5.0-21.sme
- apply locale 2024-09-05.patch
2022/11/11 Jean-Philippe Pialasse 1.5.0-20.sme
- apply locale 2022-11-11 patch
2022/07/30 Brian Read 1.5.0-18.sme
- Re-build and link to latest devtools [SME: 11997]

2022/07/30 Jean-Philippe Pialasse 1.5.0-17.sme
- update to httpd 2.4 access syntax [SME: 12050]

- rebuild for core backup [SME: 12015]

2022/07/23 Jean-Philippe Pialasse 1.5.0-16.sme
- apply locale 2022-07-24.patch
- add to core backup [SME: 12015]

 remove patch only adding to dar in SME 2411
- already compatible with httpd 2.4 syntax [SME: 12050]