Mailman Installieren

Aus Hostsharing Wiki
Version vom 28. März 2009, 15:09 Uhr von Dgy00 (Diskussion | Beiträge) (0.1 version)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

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/ 

Feintuning

Multidomainfähigkeit