Schleuder

From ArchWiki
Jump to navigation Jump to search

Schleuder is an encrypting mailing list manager with remailing-capabilities.

Installation

Install the schleuderAUR package.

After updating the main configuration file to your needs (see next section). You need to run schleuder install as the schleuder system user:

$ su schleuder -s /bin/bash -c 'schleuder install'

To create the needed certificates for the transport encryption

Configuration

The basic configuration is happening in the /etc/schleuder/schleuder.yml configuration file by default. The path to the configuration file can be changed by setting the SCHLEUDER_CONFIG environment variable before running schleuder commands. The default configuration for schleuder can be found in the upstream repository.

The default configuration for new lists is done via the /etc/schleuder/list-defaults.yml configuration file. The path can again be changed. This time by the SCHLEUDER_LIST_DEFAULTS environment variable. The default values for this configuration file can be found here. Once a list was created their configuration only is controlled by the database. To change configuration of existing lists the schleuder API can be used via schleuder-cliAUR or schleuder-web.

Hook into Mail Transport Agent

Read the upstream documentation to find out how to configure the mail transfer agent in order for schleuder to be able to receive mails. The upstream documentation gives examples for Postfix and Exim.

Client authentication

In order for a client to be able to talk to schleuder you have to create and configure an API key. Run the following command to generate a new API key:

$ schleuder new_api_key

Afterwards the new API key needs to be added to the valid_api_keys section of the configuration file.

Running

Enable and start the schleuder-api-daemon.service.

The systemd service with timer schleuder-weekly-key-maintenance.timer exist to refresh and check keys.

Managing lists

To manage lists you can use schleuder-cliAUR or schleuder-web. They are treated as clients and you need to configure API keys for them.