Q: How can I create a suppression list in LISTSERV to exclude email addresses from all lists on the entire server?
When managing a LISTSERV server, especially one used for promotional or marketing purposes, recipients will occasionally request to unsubscribe from a given list and to be excluded from all other lists on the server. It is the recipient's expectation, and the list owner's responsibility, that this request is implemented quickly and effectively. Manual removal from multiple lists can be error-prone. In rare instances, maintenance tasks such as restoring from backup can result in the unintentional re-addition of the subscriber. Both of these scenarios are frustrating for the recipient and embarrassing for LISTSERV administrators.
To accommodate these types of "don't-email-me-again" requests, LISTSERV has a capability of setting up a special SUPPRESS list that resolutely solves the problem. Whenever mailings are sent out for any list on the server, LISTSERV will filter out addresses from the mailing that match an address in the SUPPRESS list. This prevents any outgoing email from going to that complaining user. Note that this filtering also applies to DISTRIBUTE job mailings, so it will work for all LISTSERV Maestro mailings as well.
However, the filtering does not apply to LISTSERV administrative messages such as command responses, OK confirmations, renewal probes, etc., but this is effectively a non-issue once the recipient ceases interaction with LISTSERV. Note also that addresses added to the SUPPRESS list must be fully qualified (email@example.com or firstname.lastname@example.org). Wildcard addresses (*@example.com or *@*.example.com) are not supported.
The suppression list capability is an alternate application of the Spam Feedback processing that is discussed more fully in the Advanced Topics Manual, Sect 6. It is not necessary to fully implement all parts of the Spam Feedback processing to gain the suppression list functionality, although it is a good idea to do so if you are serious about dealing with spam complaints from your mailings.
The main steps are to create your SUPPRESS list, configure LISTSERV to activate the suppression, test that it works, and then start using your suppression list.
Creating the SUPPRESS List
You create a list in the typical manner. However, this list needs certain special settings. Primarily, it is important that no subscriber ever receives any email from the list, which is achieved via subscriber options:
Default-Options= NOMAIL, NOACK
Also, you will want to monitor the addition of addresses to the SUPPRESS list:
Change-Log= Yes, Yearly
Additional security settings to keep the list hidden, not send any acknowledgements, limit who might send to the list and prevent people from subscribing themselves:
Validate= Yes, Confirm
Loopcheck= nocrc, spam-delay(0)
If you plan to fully implement the Spam Feedback processing you need some additional settings:
Send= email@example.com, firstname.lastname@example.org
These are explained in more detail in the Advanced Topics Manual.
Site Configuration Settings
Add these settings to your LISTSERV Site Configuration file (site.cfg or go.user) to implement the suppression list functionality:
SPAM_FEEDBACK_EXCLUDE_LIST=SUPPRESS (use the name of your list)
If you are on Unix/Linux, do not forget to export the variable names:
export SPAM_FEEDBACK_EXCLUDE_LIST SPAM_FEEDBACK_ACTION
Add a couple of test addresses to the SUPPRESS list:
20100820112752 ADD bparker@EXAMPLE.COM Test Address
20100820112959 ADD bparker@EXAMPLE.NET Ben Parker
Make sure these addresses are also added to your test list. Then send a mailing to your test list. Verify that the LISTSERV log shows:
>20 Aug 2010 11:43:44 Deleting users on spam feedback exclude list:
Check that the changelog file for your test list shows:
20100820114344 SPAMDEL bparker@EXAMPLE.COM
20100820114344 SPAMDEL bparker@EXAMPLE.NET
If you are using LISTSERV Maestro, repeat with a Maestro job. When you are satisfied, your suppression list is then ready for use.
Subscribe to LISTSERV at Work (American Edition).