software:mailman

mailman

Mailman ist in python und läuft auf dem mailserver.

  • Webserver
  • Python ab besten ab Version 2.4 (prüfen mit python -V)

siehe Mailman Requirements.

aptitude install mailman
  1. newlist Name der Mailingliste
  2. die /etc/aliase

Grundsätzlich muss

konfiguriert werden.

Die Datei /etc/mailman/apache.conf enthält bereits eine Beispielkonfiguration:

# Sample configuration for Debian mailman with Apache

# We can find mailman here:
ScriptAlias /cgi-bin/mailman/ /usr/lib/cgi-bin/mailman/
# And the public archives:
Alias /pipermail/ /var/lib/mailman/archives/public/
# Logos:
Alias /images/mailman/ /usr/share/images/mailman/

# Use this if you don't want the "cgi-bin" component in your URL:
# In case you want to access mailman through a shorter URL you should enable
# this:
#ScriptAlias /mailman/ /usr/lib/cgi-bin/mailman/
# In this case you need to set the DEFAULT_URL_PATTERN in
# /etc/mailman/mm_cfg.py to http://%s/mailman/ for the cookie
# authentication code to work.  Note that you need to change the base
# URL for all the already-created lists as well.

<Directory /usr/lib/cgi-bin/mailman/>
    AllowOverride None
    Options ExecCGI
    AddHandler cgi-script .cgi
    Order allow,deny
    Allow from all
</Directory>
<Directory /var/lib/mailman/archives/public/>
    Options Indexes FollowSymlinks
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
<Directory /usr/share/images/mailman/>
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>


## The following describes how to configure mailman on
## a dedicated virtual host, courtesy Marco d'Itri.

# Add these lines in /etc/mailman/mm_cfg.py:
#DEFAULT_EMAIL_HOST = 'lists.example.net'
#DEFAULT_URL_HOST = 'lists.example.net'
#DEFAULT_URL_PATTERN = 'http://%s/'

#<VirtualHost *>
#ServerName lists.example.net
#DocumentRoot /var/www/lists
#ErrorLog /var/log/apache2/lists-error.log
#CustomLog /var/log/apache2/lists-access.log combined
#
#<Directory /var/lib/mailman/archives/>
#    Options Indexes FollowSymLinks
#    AllowOverride None
#</Directory>
#
#Alias /pipermail/ /var/lib/mailman/archives/public/
#Alias /images/mailman/ /usr/share/images/mailman/
#ScriptAlias /admin /usr/lib/cgi-bin/mailman/admin
#ScriptAlias /admindb /usr/lib/cgi-bin/mailman/admindb
#ScriptAlias /confirm /usr/lib/cgi-bin/mailman/confirm
#ScriptAlias /create /usr/lib/cgi-bin/mailman/create
#ScriptAlias /edithtml /usr/lib/cgi-bin/mailman/edithtml
#ScriptAlias /listinfo /usr/lib/cgi-bin/mailman/listinfo
#ScriptAlias /options /usr/lib/cgi-bin/mailman/options
#ScriptAlias /private /usr/lib/cgi-bin/mailman/private
#ScriptAlias /rmlist /usr/lib/cgi-bin/mailman/rmlist
#ScriptAlias /roster /usr/lib/cgi-bin/mailman/roster
#ScriptAlias /subscribe /usr/lib/cgi-bin/mailman/subscribe
#ScriptAlias /mailman/ /usr/lib/cgi-bin/mailman/
#</VirtualHost>

Die Datei /usr/lib/mailman/bin/postfix-to-mailman.py enthält Anweisungen, hier nochmal angegeben.

Dateien in /etc/postfix:

In der main.cf:

# mailman
relay_domains = lists.domain.tld
# external domains
transport_maps = hash:/etc/postfix/transports
mailman_destination_recipient_limit = 1

die Datei transports enthält dann

test.stefanux.de   mailman

Anschließend mit

postmap transports

Änderung übernehmen.

die master.cfg:

mailman   unix  -       n       n       -       -       pipe
  flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py
  ${nexthop} ${user}

Die Datei /etc/mailman/mm_cfg.py muss auch noch angepasst werden:

MTA = None # No MTA alias processing required
# alias for postmaster, abuse and mailer-daemon
DEB_LISTMASTER = 'postmaster@example.com'

Mailman ist in den aktuellen 2.1.x-Versionen komplett eingedeutscht.

FIXME