Ezmlm

From SME Server
Jump to navigation Jump to search

Install and configure ezmlm-web on SME Server

Before starting, uninstall any previous versions of ezmlm you have installed as this version is not compatible with earlier versions.

The ezmlm contributed rpms are works in progress and newer versions may be released with different functionality so check the download sites to see if any later versions have been released.

Thanks to Gordon Rowell for developing the rpms.

For further information please refer to the ezmlm.idx manual and faq at http://www.glasswings.com.au/ezmlm/ or from the EZFAQ at http://ezmlm.org/faq/index.html


Installation

The ezmlm rpms are located in the smecontribs repository

ezmlm-idx-std
ezmlm-web
perl-Ezmlm
smeserver-ezmlm-web

Install the packages with yum

yum install --enablerepo=smecontribs smeserver-ezmlm-web

After the RPMS have been installed do

signal-event post-upgrade
signal-event reboot

(Note: Requires the complete reconfigure + reboot to stop Warning appearing in server manager re this.)

If required to get the panel to appear in the correct location in server manager under Collaboration (ignore all warnings that appear on screen)

/etc/e-smith/events/actions/navigation-conf

Upgrading from other versions

Refer this thread http://forums.contribs.org/index.php?topic=40851.new;topicseen#new

If upgrading from the ezmlm-toaster version to the new version in smecontribs, then you need to do the following:

rpm -e ezmlm-toaster
rpm -e e-smith-ezmlm-web
yum install --enablerepo=smecontribs smeserver-ezmlm-web

Backup your ezmlm data first ie all of /home/e-smith/files/ezmlm/

Configuration

When you log on to server manager, you will find a new menu item under Collaboration called Mailing Lists. This allows you to create a list with a set of modifiable default settings and set the list owner, the list administrator and also add subscribers either individually or from an existing text file and modify other configuration settings. The web interface panel allows you to select configuration options by checking tick boxes.

Creating, Configuring and Using Mail Lists

To be added This section deals with how to set up and use mail lists, and the various commands available to Manage lists remotely.


Additional information

If you receive an error message when trying to Modify the list Configuration then you need to change the ezmlm folder so it has the correct permissions by doing the following:

chown ezmlm:ezmlm ~ezmlm


List creation

The switches and their meaning is summarized here. Both the FAQ and manual for ezmlm should be read fully to give you a complete understanding of the functionality of ezmlm.

The check boxes set the following switches. An important point to remember is that leaving these switches out will not prevent a list behavior necessarily. Most switches have a default value that will be used if you leave a setting out - check the faq carefully. The switches set are good safe settings but they may not serve your purposes.

Default settings

Note that these are set by checking or unchecking the appropriate tick boxes.

aBdfgHiJklMnOpQrStuWx

a =creates an archived list

B =archive access permitted (see g switch)

d =list digest will be created

f =prefix set so subject prefixed with listname

g =guard archive so only list members have access

H =subscription requires confirmation by a reply sent to subscription address

i =indexed for www archive access

J =unsubscribe requires confirmation by a reply sent to sub address

k =addresses in /deny are rejected.

l =sets up subscriber lists so remote admins can access them

M = message posting isn't moderated

n =setups up the list to allow remote administrators to edit files in /text

O =posts other than subscriber-originated are rejected

p =allow remote admin and archive retrieval

Q =don't process 'request' command

r =enable remote administration

S =subscriptions are not moderated

t =trailer; /text/trailer will be added to outgoing messages (editable by RA)

u =uses posts only

W =no address restriction

x =eXtra. Ezmlm-make will configure the list with a few extras such as stripping annoying mime parts such as excel spreadsheets, rtf text, html text etc from the messages. Messages consisting solely of this Content-type will be rejected


Explanation of Config switch

Archived: "Ezmlm will archive new messages"

Block archive: "Only moderators are allowed to access the archive"

Digest: "Set up a digest list to disseminate digest of the list messages"

Prefix: "Outgoing subject will be prefixed with the list name"

Guard Archive: "Archive access requests from unrecognized SENDERs will be rejected"

Help subscription: "Subscriptions do not require confirmation by moderator"

Indexed: "Indexed for WWW archive access"

Jump off: "Unsubscribe does not require confirmation by moderator"

Kill: "Posts from addresses in dir/deny/ are rejected"

Subscriber List: "Remote administrators can request a subscriber list"

Message Moderation: "All incoming messages are moderated" (most commonly used)

Text Editing: "Allow remote administrators to edit files in dir/text/"

Others rejected: "Posts from addresses other than moderators are rejected"

Public: "List will respond to administrative requests and archive retrieval"

Service Request Address: "Process commands sent in the subject to local-request@host"

Remote Admin: "Enable remote adminstration of the list"

Subscription Moderation: "Subscriptions to the main list and digest will be moderated"

Trailer: "Add a trailer, or footer, to outgoing messages"

User Posts Only: "Posts from unrecognized SENDER addresses will be rejected" (this will counteract "message moderation"


Common usage and configuration misinterpretations

The "Others rejected" and "User posts only" switches should be used separately (not together) as they effectively counteract each other, unless of course you want "subscribers not moderated" behavior for your list.

The message moderation only works for posts from subscribers when these two switches (Others rejected; User posts only) are not checked, or for non-subscriber posts, if one or both the other switches are checked.

Also you may not want to use the "User post only" switch with the "Message moderation" switch. Doing so allows subscribers and "allow" people to post without moderation.

Users are encouraged to carefully read the manual and test the behavior of their list to ensure it does what you require.


Known bugs for fixing in next release

modify description after creation

The description field for the plain English description of each list can only be set when the list is first created.

The description is not modifiable later (it was in earlier versions).

You can modify it from the command prompt by doing:

/sbin/e-smith/db accounts setprop mylist Description "Description of list"
removing mailing lists
Important.png Note:
resolved in bugzilla:3599


List deletion gives an error and the list does not get deleted.

You need to manually delete folders & files and remove the database entry at the command prompt

rm -R -f /home/e-smith/files/ezmlm/lists/listname
rm /home/e-smith/files/ezmlm/.qmail-listname*
db accounts delete listname

Setting the attachment size for list messages

The default message attachment size is quite small (30Kb). If you wish to change the attachment size then edit the msgsize file.

Remember though, that if you have a large list of subscribers and send a message with a large attachment to the list, your server may be busy (and slow) for quite a while as the message with attachment is sent to all subscribers individually.

cd ~ezmlm/lists/listname

or

cd /home/e-smith/files/ezmlm/lists/listname
pico msgsize

change the value from

30000:2

to say

1000000:2

Press Ctrl+O to save.

Press Ctrl+X to exit.

Alternatively you can include in the message a URL link to a website or ftp location where the attachment can be read or downloaded. This avoids sending large attachments to list subscribers who may not wish to receive them and also helps to reduce web traffic. The list subscriber can visit the web or ftp site if they wish to obtain the file attachment.


Modifying the default configuration

The default configuration of each new list is controlled by the contents of /etc/ezmlm/ezmlmrc.

Information about customizing ezmlmrc including these modifications can be found here.

The following changes alter the default message attachmemt size (from 30,000 to 500,000) and change the reply to address to be the list address.

Download the English configuration file from the following location:

http://mirror.contribs.org/smeserver/contribs/rmitchell/smeserver/contribs/ezmlm/ezmlmrc-config/english/ezmlmrc

and replace the current file located in /etc/ezmlm/ folder.

A modified Spanish version of ezmlmrc is here:

http://mirror.contribs.org/smeserver/contribs/rmitchell/smeserver/contribs/ezmlm/ezmlmrc-config/spanish/ezmlmrc

You can compare the files to see the differences using the diff command (assuming you copy the new file to /tmp) eg

diff /etc/ezmlm/ezmlmrc /tmp/ezmlmrc

Note that these new settings are applied when you create a new list.

If you have existing lists and wish to apply these changes then you will need to delete all your lists, then download and replace the ezmlmrc file, and then recreate the lists. Upon recreation of the list the new defaults will be applied.

If you wish to retain the data in existing lists, then you will need to backup your lists first. If you want back up the existing users, backup the folder /home/e-smith/files/ezmlm/lists/listname/subscriber/ for each list. Then, when you have finished recreating the list, copy your subscribers backup folders into each list.

Alternatively you can edit the applicable sections of ezmlmrc

around line 330

# max & min message size
</msgsize#x/>
30000:2

Change this to suit your requirements eg

# max & min message size
</msgsize#x/>
500000:2

around line 314

# Headeradd needs to always exist but leave out stuff for sublists
</headeradd#E^0/>
# Good for mailing list stuff (and vacation program)

Change this to suit your requirements eg

# Headeradd needs to always exist but leave out stuff for sublists
</headeradd#E^0/>
Reply-To: <#L#>@<#H#>
# Good for mailing list stuff (and vacation program)

Other usage tips

If you wish to allow list users to send html messages or any other type of attachments, go to the configuration of the list and delete all entries under "Mime types to strip from all outgoing mail". Note that you can selectively remove entries that are applicable to the type of attachment you wish to only allow.

list migration from a domain to another

you might need to move a list from a domain to another, following the forum (http://forums.contribs.org/index.php/topic,49078.0.html) you might execute this :

#! /bin/sh
read -p "Please enter name of existing mailing list: " list
olddomain=`/sbin/e-smith/db accounts getprop $list Domain`
echo ".. and the new domain name as one of the following:"
/sbin/e-smith/db domains keys
read -p ".. new domain name: " newdomain
echo "Changing mailing address for list $list"
echo "from $list@$olddomain"
echo "to   $list@$newdomain"
read -p "OK? (y/n) " yn
if [ "$yn" != "y" ]
then
echo "Exiting ..."
exit
fi
/sbin/e-smith/db accounts setprop $list Domain $newdomain
/sbin/e-smith/signal-event mailinglist-modify $list
for f in config editor owner bouncer mailer moderator headeradd prefix listid inhost outhost
do
 file = "/home/e-smith/files/ezmlm/lists/$list/$f"
 [ -a $file ] && sed -i.bak s/$olddomain/$newdomain/g $file
done
for file in /home/e-smith/files/ezmlm/lists/$list/text/*
do
 sed -i.bak s/$olddomain/$newdomain/g $file
done

migration from a server to another

if you need to move mailing list from a server to another you can do the following from the new server:

rsync  -ravpzHogt --bwlimit=3000 root@oldserverip:/home/e-smith/files/ezmlm/  /home/e-smith/files/ezmlm
rsync -arzu /home/e-smith/db/accounts /home/e-smith/db/old/
cd /home/e-smith/db/old/
grep mailinglist  accounts>/home/e-smith/db/accounts
signal-event mailinglist-update

doing so, you will only need to reintegrate manually your subscribers, as all I saw is that the subscribers are still listed but can not send receive mail or being deleted through the manager. All other configurations and archives seems to be kept

mkdir /root/oldsubscribers
mv /home/e-smith/files/ezmlm/lists/afc/subscribers/* /root/oldsubscribers*
cd /root
cat -e /root/oldsubscribers/*|sed -e 's/T//g'|sed -e 's/\^@/\n/g'>/root/mylistsubs.txt

then you only import the subscribers in the server-manager.

Of course if you also change the domain you have to check what's above.