From 0a4b5d24845fb86bade3ab3c38a6202862d6caad Mon Sep 17 00:00:00 2001 From: Guilhem Moulin Date: Sun, 23 Sep 2012 20:43:08 +0200 Subject: List creation via a Postfix local alias. --- misc/mklist/INSTALL | 56 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 misc/mklist/INSTALL (limited to 'misc/mklist/INSTALL') diff --git a/misc/mklist/INSTALL b/misc/mklist/INSTALL new file mode 100644 index 0000000..660bcf9 --- /dev/null +++ b/misc/mklist/INSTALL @@ -0,0 +1,56 @@ +sudo apt-get install libmail-gnupg-perl libmime-tools-perl libconfig-auto-perl + +Also, Fripost's schema (module Fripost::Schema) needs to be found in the +library path. + + addgroup mklist + adduser list mklist + adduser schleuder mklist + mkdir -m 0700 -p /etc/mklist/gnupg-{mailman,schleuder} + chown 'list:list' /etc/mklist/gnupg-mailman + chown 'schleuder:schleuder' /etc/mklist/gnupg-schleuder + cp ./config /etc/mklist/ + + mkdir /etc/postfix-lists/{mailman,schleuder} + chown list:list /etc/postfix-lists/mailman + chown schleuder:schleuder /etc/postfix-lists/schleuder + +To add a key: + + ggp --homedir /etc/mklist/gnupg --import < /path/to/pubkey.pub + +for each list manager. For instance, + + sudo -u www-data gpg --homedir /etc/fripost-panel/gnupg/ -a --export ECFA6E43 | sudo -u list gpg --homedir /etc/mklist/gnupg-mailman/ --import + sudo -u www-data gpg --homedir /etc/fripost-panel/gnupg/ -a --export ECFA6E43 | sudo -u schleuder gpg --homedir /etc/mklist/gnupg-schleuder/ --import + +(Don't forget to whitelist the key ID in the configuration file.) + + +Postfix's lookup table (/etc/postfix-lists/transport_mklist) + + mklist#fripost.org+mailman@lists.fripost.org mklist-mailman: + mklist#fripost.org+schleuder@lists.fripost.org mklist-schleuder: + +Postfix's master.cf + + mklist-mailman unix - n n - - pipe + flags=FR directory=/opt/fripost-panel/ user=list:list + argv=/opt/fripost-panel/misc/mklist/mklist.pl mailman ${size} + + mklist-schleuder unix - n n - - pipe + flags=FR directory=/opt/fripost-panel/ user=schleuder:schleuder + argv=/opt/fripost-panel/misc/mklist/mklist.pl schleuder ${size} + +Postfix's main.cf + transport_maps = cdb:$config_directory/transport_mklist + cdb:$config_directory/mailman/transport + cdb:$config_directory/schleuder/transport + + mklist-mailman_destination_concurrency_limit = 1 + mklist-mailman_destination_recpipient_limit = 1 + mklist-mailman_time_limit = 10m + + mklist-schleuder_destination_concurrency_limit = 1 + mklist-schleuder_destination_recpipient_limit = 1 + mklist-schleuder_time_limit = 2h -- cgit v1.2.3