Changes

Jump to navigation Jump to search
7,901 bytes added ,  03:12, 24 July 2022
Line 1: Line 1:  +
{{Languages|Mailman}}
 
==Mailman==
 
==Mailman==
    +
=== Maintainer ===
 +
[mailto:stephdl@de-labrusse.fr stephdl] Stéphane de Labrusse AKA [[User:stephdl|Stephdl]]<br />
 +
=== Version ===
 +
{{ #smeversion: smeserver-mailman }}
 
===Description===
 
===Description===
   Line 8: Line 13:     
=== Installation ===
 
=== Installation ===
 +
<tabs container><tab name="For SME 10">
 +
yum install smeserver-mailman --enablerepo=smecontribs
 +
</tab><tab name="For SME 9 and SME 8">
 +
* for sme8, sme9
 +
yum install smeserver-mailman --enablerepo=smecontribs
 +
signal-event mailman-update
 +
or if you want to restart your server
 +
signal-event post-upgrade;signal-event reboot
 +
</tab>
 +
</tabs>
   −
wget http://www.gormand.com.au/smeserver/WIP/smeserver-mailman/smeserver-mailman-1.3.0-14.noarch.rpm
+
You should now see a Mailman section under the Configuration section of the server-manager. Please see Known issues below to set up your mailman session. Keep in mind that the mailman administrator password is not the same as the SME Server one, [[Mailman#Error:_You_are_not_authorized_to_create_new_mailing_lists|Read the section below to see how find your password]].
wget http://www.gormand.com.au/smeserver/WIP/smeserver-mailman/mailman-2.1.5.1-34.rhel4.3sme01.i386.rpm
  −
yum localinstall mailman-2.1.5.1-34.rhel4.3sme01.i386.rpm smeserver-mailman-1.3.0-14.noarch.rpm
     −
You should now see a Mailman section under the Configuration section of the server-manager.
+
=== Configuration ===
 +
 
 +
==== Configure access ====
 +
By default only listing public lists is enabled from outside the LAN. Admin is reserved for LAN access, and also Archive browsing.
 +
 
 +
Option setting is also attached to the public listing access, so external users can modify their preferences.
   −
=== Configuration ===
+
To modify those setting just go to server-manager and modify according to your needs.
 +
 
 +
==== Creating lists ====
 +
===== Error: You are not authorized to create new mailing lists=====
 +
 
 +
The administrator of SME Server isn't allowed to create Lists (even from the server-manager), this is how obtain the mailman administrator password. see [[bugzilla:7836]]
 +
 
 +
{{Tip box|The mailman password is different of the admin password of SME Server, therefore to know the mailman Password you can issue the following command in a root terminal}}
 +
[root@sme8dev64 ~]# config show mailman
 +
mailman=service
 +
    SitePass=[YOUR_PASSWORD_IS_HERE]
 +
    status=enabled
 +
 
 +
You have to use the value of SitePass as your mailman password to create Lists. If you change the password later with '''/usr/lib/mailman/bin/mmsitepass''' you '''*SHOULD*''' update SitePass using
 +
 
 +
config setprop mailman SitePass YOUR_PASSWORD
 +
 
 +
===== 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.
 +
{{Note box|msg=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]]
 +
}}
 +
 
 +
{{Tip box|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 ====
 
==== File locations ====
   −
{|
+
{|border="1"
 
|-
 
|-
 
! Location
 
! Location
Line 33: Line 91:  
| location of qmail alias files
 
| location of qmail alias files
 
|}
 
|}
  −
==== Creating lists ====
  −
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.
  −
   
==== Command line options ====
 
==== Command line options ====
 
You can do a lot using the command line scripts located in /usr/lib/mailman/bin
 
You can do a lot using the command line scripts located in /usr/lib/mailman/bin
    
For example
 
For example
{|
+
{|border="1"
 
|-
 
|-
 
| /usr/lib/mailman/bin/mmsitepass
 
| /usr/lib/mailman/bin/mmsitepass
| will set the master password for all lists
+
|   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-members [listname]
+
| /usr/lib/mailman/bin/list_lists
| will list the members of [listname]
+
|  will list your mailling lists
 +
|-
 +
| /usr/lib/mailman/bin/list_owners
 +
will list all owners of mailling lists or will list all mailling lists
 
|}
 
|}
Running the script with --help will display the options available
+
Running the script with --help will display the options available.
 +
 
 +
==== Transferring Lists ====
 +
You can transfer lists from another server and keep everything intact. 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 lists:
 +
signal-event mailman-addlist <listname>
 +
 
 +
All your lists and lists' configurations should now be available at: http://domain.name/mailman
 +
 
 +
=== Personalization ===
 +
 
 +
{{Note box|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:
 +
<ol><li>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/
 +
</li><li>
 +
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
 +
</li><li>
 +
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
 +
</li><li>
 +
To reflect your changes we need to regenerate the file using the following commands:
 +
expand-template /usr/lib/mailman/Mailman/mm_cfg.py
 +
signal-event smeserver-mailman-update
 +
</li><li>
 +
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.
 +
</li></ol>
 +
 
 +
===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:
 +
# Remove the ezmlm list, via the ezmlm web panel
 +
# Create the new Mailman list, via the Mailman web panel
 +
# 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.
 +
# 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 ===
 
=== For more information ===
Line 60: Line 200:     
=== Current Issues ===
 
=== Current Issues ===
* Check submitted bugs in the bug tracker under the contrib component "smeserver-mailman"
+
 
* Current mailman release is 2.1.9
+
=== Bugs ===
* [[Bugzilla:2411]]: /usr/lib/mailman/aliases and /var/lib/mailman are not currently backed up
+
Please raise bugs under the SME-Contribs section in [http://bugs.contribs.org/enter_bug.cgi bugzilla]
 +
and select the smeserver-mailman component or use {{BugzillaFileBug|product=SME%20Contribs|component=smeserver-mailman|title=this link}}.
 +
 
 +
{{#bugzilla:columns=id,product,version,status,summary |sort=id|order=desc |component=smeserver-mailman|noresultsmessage="No open bugs found."}}
 +
 
 +
= Changelog =
 +
Only released versions in smecontrib are listed here.
 +
 
 +
{{#smechangelog:smeserver-mailman}}
 +
 
    
----
 
----
 
[[Category:Contrib]]
 
[[Category:Contrib]]
 
[[Category:Mail]]
 
[[Category:Mail]]
 +
[[Category:Mail:Mailinglists]]
Super Admin, Wiki & Docs Team, Bureaucrats, Interface administrators, Administrators
3,254

edits

Navigation menu