Mailman Installieren
Mailman
Installation
Installation von Mailman 2.1.1
Vielen Dank an Raimund Specht, der einige Verbesserungen beisteuerte!
Sourcen besorgen und entpacken
Log-Verzeichnis anlegen
xyz00@hopi:~$ mkdir /home/pacs/XYZ00/var/mailman xyz00@hopi:~$ chmod 02775 /home/pacs/XYZ00/var/mailman
Kompilieren
xyz00@hopi:~$ ./configure --prefix=/home/pacs/XYZ00/mailman --with-username=XYZ00 --with-groupname=XYZ00 --with-var-prefix=/home/pacs/XYZ00 /var/mailman xyz00@hopi:~$ make xyz00@hopi:~$ make install
Mailman > 2.1.6 benötigt beim configure-Befehl zusätzlich:
--with-cgi-gid=XYZ00 --with-mail-gid=nogroup --with-python=/usr/local/share/python/2.4.4/bin/python
Datenrechte prüfen
Sicherheitshalber die Dateirechte prüfen (und ggf. korrigieren) lassen:
xyz00@hopi:~$ ~/mailman/bin/check_perms -f
Konfiguration
mm_cfg.py
~/mailman/Mailman/mm_cfg.py editieren.
Folgendes könnte dort z.B. stehen:
... ################################################## # Put YOUR site-specific settings below this line. # -*- python -*-
DEFAULT_HOST_NAME = 'www.example.com' DEFAULT_EMAIL_HOST = 'example.com' DEFAULT_URL_HOST = 'www.example.com' add_virtualhost(DEFAULT_URL_HOST, DEFAULT_EMAIL_HOST) add_virtualhost('www.zoopnet.de', 'zoopnet.de')
DEFAULT_SERVER_LANGUAGE = 'de'
In ~/mailman/Mailman/Defaults.py seht ihr, was man in mm_cfg.py alles einstellen kann.
CGIs kopieren (in alle Domain-Verzeichnisse, die Mailman haben sollen)
xyz00@hopi:~$ mkdir ~/doms/example.com/cgi/mailman xyz00@hopi:~$ cp ~/mailman/cgi-bin/* ~/doms/example.com/cgi/mailman xyz00@hopi:~$ chmod g-s ~/doms/example.com/cgi/mailman/*
.htaccess
Dafür sorgen, dass mailman unter /mailman statt /cgi-bin/mailman erreichbar ist. In ~/doms/example.com/subs/www/.htaccess folgendes eintragen:
RewriteEngine On RewriteRule ^mailman/(.*)$ /cgi-bin/mailman/$1
Icons kopieren/verlinken
xyz00@hopi:~$ cp -R ~/mailman/icons ~/doms/example.com/subs/www
oder symlinken (spart ein klein wenig Platz)
xyz00@hopi:~$ ln -s ~/mailman/icons ~/doms/example.com/subs/www
Passwort setzen
xyz00@hopi:~$ ~/mailman/bin/mmsitepass
* Die erste Mailingliste (mit dem Namen "mailman") einrichten:
xyz00@hopi:~$ ~/mailman/bin/newlist Enter the name of the list: mailman
* In die virtusertable müssen wir die Adressen zuordnen:
xyz00@hopi:~$ vi /home/doms/example.com/etc/virtusertable
mailman@example.com XYZ00-mailman mailman-admin@example.com XYZ00-mailman-admin mailman-bounces@example.com XYZ00-mailman-bounces mailman-confirm@example.com XYZ00-mailman-confirm mailman-join@example.com XYZ00-mailman-join mailman-leave@example.com XYZ00-mailman-leave mailman-owner@example.com XYZ00-mailman-owner mailman-request@example.com XYZ00-mailman-request mailman-subscribe@example.com XYZ00-mailman-subscribe mailman-unsubscribe@example.com XYZ00-mailman-unsubscribe
* Auch die aliases müssen wir ändern:
xyz00@hopi:~$ vi ~/e tc/aliases
XYZ00-mailman: "|/home/pacs/XYZ00/mailman/mail/mailman post mailman" XYZ00-mailman-admin: "|/home/pacs/XYZ00/mailman/mail/mailman admin mailman" XYZ00-mailman-bounces: "|/home/pacs/XYZ00/mailman/mail/mailman bounces mailman" XYZ00-mailman-confirm: "|/home/pacs/XYZ00/mailman/mail/mailman confirm mailman" XYZ00-mailman-join: "|/home/pacs/XYZ00/mailman/mail/mailman join mailman" XYZ00-mailman-leave: "|/home/pacs/XYZ00/mailman/mail/mailman leave mailman" XYZ00-mailman-owner: "|/home/pacs/XYZ00/mailman/mail/mailman owner mailman" XYZ00-mailman-request: "|/home/pacs/XYZ00/mailman/mail/mailman request mailman" XYZ00-mailman-subscribe: "|/home/pacs/XYZ00/mailman/mail/mailman subscribe mailman" XYZ00-mailman-unsubscribe: "|/home/pacs/XYZ00/mailman/mail/mailman unsubscribe mailman"
* In die Crontab wird z.B. eingetragen:
* * * * * ~/mailman/bin/qrunner -o -r All 0 * * * * rm -f ~/var/mailman/logs/qrunner
Dies übernimmt die Funktion des qrunner-Dämons, der bei Mailman 2.1.1 normalerweise laufen würde. Das Logfile wird gelöscht, da es sonst sehr schnell sehr groß wird. Zusätzlich müssen noch die Cronjobs in ~/mailman/cron/crontab.in angelegt werden.
Nach diesem Schema werden auch alle anderen Listen angelegt. Administriert wird die Liste dann über http://www.example.com/mailman/admin/listenname und entweder dem Listenpasswort oder dem Site-Passwort.
Das war's. Mailman ist jetzt fertig installiert und müsste sogar funktionieren ;)
Links:
http://www.gnu.org/software/mailman/