http://www.isp-control.net/ispcp/wiki/howto_mlmmj Howto - Setup mailing lists with mlmmjTHIS IS WORK IN PROGRESS !!! If you know what you are doing you are invited to check out the following steps. Please report any bugs/hints/whatever in the following board thread: http:// This Howto explains how you install and setup the mailing list manager [mlmmj http://mlmmj.mmj.dk/]. Mlmmj is an attempt at implementing a mailing list manager with the same functionality as the brilliant ezmlm, but with a decent license and mail server independency. 1. Download mlmmj and installInstallation was tested with Debian Etch 4.0 and ispcp trunk (2007-05-12). # mkdir /root/mlmmj # cd /root/mlmmj # wget http://mlmmj.mmj.dk/files/mlmmj-1.2.15.tar.gz # tar xzf mlmmj-1.2.15.tar.gz # cd mlmmj-1.2.15 You should read through the README before continue with installation less README Following command compiles mlmmj and installs it to /usr/local/bin/mlmmj-* afterwards: # ./configure && make && make install 2. Recipient delimiterConfigure a recipient delimiter (for the commands like subscribe and unsubscribe). Many mailing list managers use '-' as the default. But currently mlmmj has a problem with '-'-delimiters when having listnames with a dash ('-') inside (like list-talk@yourdomain.tld or list-my-talk@yourdomain.tld). If you are going to have listnames without a dash (like mylist@yourdomain.tld) then you are safe with the '-'-delimiter. The default for mlmmj is to use '+', but some Email clients (i.e. Webmailer) reject email addresses like list-talk+subscribe@yourdomain.tld as invalid. Also some spam filters might categorise those email addresses as spam. A delimiter which seems to be safe under all circumstance is an underscore: '_'. We need to change the recipient delimiter configuration at two places. One is the postfix main.cf and the other is in the "control" directory of each individual mlmmj based list. Latter will be shown later. In postfix it's done by adding (or eventually modifying) recipient_delimiter = _ to /etc/postfix/main.cf. 3. Create a listCreate a mailing list for testing purposes first is a good idea. This way you get used to mlmmj configuration without disturbing your real lists. You could name it i.e. "list-test" for the virtual domain "yourdomain.tld": # mlmmj-make-ml.sh -L list-test -s /var/spool/mlmmj/yourdomain.tld -c nobody.nogroup mlmmj-make-ml.sh will ask you following questions: The Domain for the List? [] : yourdomain.tld The emailaddress of the list owner? [postmaster] : myaddress@domain.tld The path to texts for the list? [en] : de chown -R nobody.nogoup /var/spool/mlmmj/yourdomain.tld/list-test? [y/n]: y 4. crontab filePrepare the crontab file for mlmmj maintenance # vi /etc/cron.d/mlmmj # /etc/cron.d/mlmmj: crontab fragment for mlmmj # see man mlmmj-maintd # Launch mlmmj-maintd every two hours for each domain ... and add following line for each virtual domain for which you have already setup an mlmmj based mailing list: 0 */2 * * * /usr/local/bin/mlmmj-maintd -F -d /var/spool/mlmmj/yourdomain.tld 5. postfix aliasesSetup an aliases file for mlmmj lists: vi cat /etc/postfix/ispcp/mlmmj.aliases # /etc/postfix/ispcp/mlmmj.aliases # aliases for the mailing list manager mlmmj list-test: "|/usr/local/bin/mlmmj-recieve -L /var/spool/mlmmj/yourdomain.tld/list-test" 6. postfix virtual aliasesSetup a virtual aliases file for mlmmj lists: vi /etc/postfix/ispcp/mlmmj.virtual # /etc/postfix/ispcp/mlmmj.virtual # virtual aliases for the mailing list manager mlmmj list-test@ yourdomain.tld list-test 7. Change postfix alias configurationTo make the newly created alias and virtual alias files aware to postfix, we need to change the appropriate attributes with in /etc/postfix/main.cf : vi /etc/postfix/main.cf alias_maps = hash:/etc/aliases,
hash:/etc/postfix/ispcp/mlmmj.aliases,
nis:mail.aliases
virtual_alias_maps = hash:/etc/postfix/ispcp/aliases,
hash:/etc/postfix/ispcp/mlmmj.virtual
8. Create/update alias database filesRun following commands to create or update the mlmmj.aliases.db and mlmmj.virtual.db files # postalias /etc/postfix/ispcp/mlmmj.aliases # postmap /etc/postfix/ispcp/mlmmj.virtual To be continued ...(mlmmj testing, web gui) |
