RaQ 550 Mailman Installation

From CobaltFAQs

Jump to: navigation, search

The majority of the installation of mailman on the RaQ 550 is the same as installing it anywhere else. It's the configuration for the virtual sites that is a pain.

For the purposes of this article, $prefix is where you installed mailman. I'm also assuming that you only set a $prefix, and not things like $varprefix, because I make no distinction between them in my install or instructions.

Contents

Installing mailman

The webserver gid is httpd, and the mail gid is mail.

The mailman program must have a symlink in /usr/adm/sm.bin

ln -s $prefix/mail/mailman /usr/adm/sm.bin/mailman

Adding the Mailman user

Every user added through the mail interface doesn't necessarily appear in /etc/passwd. I am not sure how exactly these false users are handled, so I edited /etc/passwd directly to add mailman.

When adding the user mailman you must be cautious. Despite the virtual site users not being listed in /etc/passwd file, they are assigned numbers slightly based on it. If you pick anything in the 500s you will actually just be creating an alias. I used 10000 for my mailman user, but if you have a large number of sites this may not be enough. After adding the user mailman, su into that account. If the name that displays on the prompt is not mailman, then you've just aliased another account and need to pick a higher number.

The same caveat applies to adding the group mailman, but it is harder to tell. Just set it to the same number as you've found to work for the mailman user account.

Setting up the web sites

The configuration files for each virtual host is in /etc/httpd/conf/vhosts. Grep through this directory for the file you're looking for and add this to the bottom:

ScriptAlias /mailman/ $prefix/cgi-bin/
Alias /pipermail/ $prefix/archives/public/

Add this just for the sites you want to have access to the interface. All sites can be managed through this interface however, just so you know. Each list will automatically forward to the correct virtual host though.

TODO: I don't have pipermail working yet, as I'm getting permission denied

Setting up mailing lists

In order to make mailman work for the virtual sites you must do these three things:

  • Each virtual site must be added to mailman in the configuration overrides like this: add_virtualhost('virthost')
  • The normal alias entries must be made
  • In addition to that, entries must be made in the beginning of virtusertable that point towards the alias entries.

Sample Configuration Files

###################
# /etc/mail/aliases

mailman:              "|/usr/adm/sm.bin/mailman post mailman"
mailman-admin:        "|/usr/adm/sm.bin/mailman admin mailman"
mailman-bounces:      "|/usr/adm/sm.bin/mailman bounces mailman"
mailman-confirm:      "|/usr/adm/sm.bin/mailman confirm mailman"
mailman-join:         "|/usr/adm/sm.bin/mailman join mailman"
mailman-leave:        "|/usr/adm/sm.bin/mailman leave mailman"
mailman-owner:        "|/usr/adm/sm.bin/mailman owner mailman"
mailman-request:      "|/usr/adm/sm.bin/mailman request mailman"
mailman-subscribe:    "|/usr/adm/sm.bin/mailman subscribe mailman"
mailman-unsubscribe:  "|/usr/adm/sm.bin/mailman unsubscribe mailman"

#########################
# /etc/mail/virtusertable

mailman@my.domain.com             mailman
mailman-admin@my.domain.com       mailman-admin
mailman-bounces@my.domain.com     mailman-bounces
mailman-confirm@my.domain.com     mailman-confirm
mailman-join@my.domain.com        mailman-join
mailman-leave@my.domain.com       mailman-leave
mailman-owner@my.domain.com       mailman-owner
mailman-request@my.domain.com     mailman-request
mailman-subscribe@my.domain.com   mailman-subscribe
mailman-unsubscribe@my.domain.com mailman-unsubscribe

###########################
# $prefix/Mailman/mm_cfg.py

add_virtualhost('my.domain.com')

Personal tools