ezmlm-make -+ [changed_switches] dir
ezmlm-make(1) stores configuration info in DIR/config and
uses that info as the default when you use the ``-+'' switch. If the list
was created with a very old version or ezmlm-0.53 ezmlm-make(1) you have
to restate all arguments the first time you edit the list.
The ``-e'' switch works the same, without stickiness for switches.
A message arriving during reconfiguration may be handled incorrectly. The prudent user will set the sticky bit on the home directory to prevent delivery, then clear it after the list has been changed.
This is the default setup. The main list generates digests in response to a mailed request or when a message arrives and the amount of messages since the last digest exceeds set limits (see ezmlm-tstdig(1)). Alternatively, ezmlm-get(1) can be invoked from the command line. In both cases, the generated digest message is disseminated to the subscribers stored in DIR/digest/subscribers/, i.e. the subscriber database with the base directory DIR/digest/.
You can set up lists with combinations of message moderation, subscription moderation, and remote administration, easiest by combining ezmlm-make(1) ``-m'' ,``-s'', and ``-r'' switches. You can use a non-default moderator db, by specifying a directory starting with a slash in DIR/modsub or DIR/remote (for remote admin and subscription moderation - always the same db for both functions) or in DIR/modpost for message moderation. You can point several lists to the same moderator db, thus using the same moderators for several lists. NOTE: The user controlling the list must have read/write access to the files (specifically, must be able to write the lock file).
Some of these setups are not trivial. However, you can make them trivial by modifying ezmlmrc(5) so that ezmlm-make(1) can set up the desired lists by default or when the user uses e.g. the ``-y'' or ``-z'' switches (see Customizing ezmlm-make operation).
Create a regular remote admin list, but remove DIR/public. This allows moderators to (un)subscribe users and have archive access, but rejects all user requests. Posts work as usual. Naturally, this can be combined with message moderation or ezmlm-issub SENDER checks (see Restricting message posting to the list).
Create a regular remote admin list, remove DIR/public, and add the ``-p'' [public] switch to the ezmlm-get(1) command line in DIR/manager. This overrides the normal DIR/public effect on ezmlm-get(1) and archive retrieval, allowing full archive access to anyone, but rejecting user -help and subscription commands. It is assumed that the users know archive retrieval commands without help. If you want to provide specific help, just link ~/.qmail-listname-help to DIR/help, and invoke a script that copies help info from there. See ezmlm-check(1) for an example.
Use a standard list, but add the ezmlm-get(1) ``-s'' command line switch in DIR/manager. Only subscribers can receive archive excerpts. Digests work as usual. This can be set up using the ezmlm-make(1) ``-g'' switch.
Use a standard list, but add the ``-C'' switch to both the ezmlm-get(1) and ezmlm-manage(1) command lines in DIR/manager. No archive retrieval commands will be honored. Digest can be created as usual (See Restricting archive retrieval).
For maximal archive security, set up a normal indexed and archived list, then remove the ezmlm-get(1) line from DIR/manager and add the ``-C'' switch to the ezmlm-manage(1) command line. You can still create digests by direct invocation of ezmlm-get(1) from a script or crontab entry.
Create a normal remote admin (+ subscription moderated) list, and add the ``-P'' (not public) switch to the ezmlm-get(1) command line in DIR/manager. Subscription will not be affected, but ezmlm-get(1) will send archive excerpts only to moderators. Digests are unaffected.
The need for a user handshake can be eliminated by the ezmlm-manage(1) ``-S'' (subscribe) and/or ``-U'' (unsubscribe) switches. Alone, this is very insecure. However, there may be some use for it in local lists with subscription moderation, or alone for notifications where ease of use is more important than preventing users from (un)subscribing others. If the list has subscription moderation or remote administration, any user subscribe or unsubscribe request is forwarded to the moderators if the SENDER and target address do not match, even if the ``-U/-S'' switches are specified. This is put in place to make a ``-U/-S'' list similar to other list managers, not for security (it's not secure, since a malicious outsider can easily fake the SENDER address). Unsubscribe confirmations are sent also to the target in this case, to avoid situations where the user needs moderator ``permission'' to get off the list.
Set up the list with ezmlm-store(1) ``-P'' and add the ``trusted E-mail addresses'' to DIR/mod/ with
% ezmlm-sub DIR/mod address@host
A post from a ``trusted address'' is sent back to that address for approval,
assuring that the user at that address really sent the post. Posts from
other e-mail addresses are rejected.
This is useful in many circumstances. A list announcing new programs for a system, where both the main developers and other users may have contributed programs.
Set up the list with ezmlm-store(1) and the main developers as moderators. When any of these posts, that user alone is asked to confirm. Posts from other E-mail addresses are sent to all moderators/developers. To use a different set of E-mail addresses as ``trusted e-mail addresses'' and moderators for other posts, use the ezmlm-store(1) ``-S'' switch and make a separate address database for the ``trusted E-mail addresses''. Put the name of the basedir for the ``trusted e-mail addresses'' database in DIR/modpost (needs leading ``/''), and add the post moderator(s) to DIR/mod/ using ezmlm-sub(1) as shown above.
A general solution for SENDER checking is to configure list with ezmlm-gate(1). ezmlm-gate(1) takes as arguments any number of basedirs for subscriber lists. Posts from SENDERs that are found are posted. For others ezmlm-store(1) is invoked. If DIR/modpost exists, ezmlm-store(1) will send out other messages for moderation. To bounce such messages, create DIR/modpost, and use the ezmlm-gate(1) ``-P'' switch (will be passed on to ezmlm-store(1) to bounce any posts not from a moderator).
By default, ezmlm-gate(1) accepts messages from subscribers. However, this is overridden if any ``basedirs'' are put on the ezmlm-gate(1) command line. Common would be to create a address list and put its ``basedir'' on the ezmlm-gate(1) command line. Trusted E-mail addresses can then be added with:
% ezmlm-sub basedir trusted@host
As this relies on SENDER checks it is less secure than the ezmlm-store based
confirmation-requiring setup.