blob: 660bcf9a510c5f263330d0213f27464093dbf443 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
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
|