Mailman erhält keine Mails

Dieses Thema im Forum "Installation und Konfiguration" wurde erstellt von krz, 3. Juni 2014.

  1. krz

    krz New Member

    Hallo,

    ich habe zur Zeit auf einem Ubuntu 12.04.4 LTS Server mit ISPConfig 3.0.5.4p1 incl. mailman Installation. Bisher funktionierte dieses Zusammenspiel auch tadelos, vor einer Woche hat mailman jedoch ohne weiteres zutun seine Funktion eingestellt. Beim Eingang einer neuen Mail an eine Mailingliste wird diese lokal mit relay=dovecot verarbeitet, dies führt dazu, dass dovecot die Mail auch zustellt - im catchall-Maildir der jeweiligen Domain. Normalerweise müsste die Mail aber an dieser Stelle an mailman weitergereicht werden.

    Ausschnitte aus den jeweiligen Konfigurationsdateien:
    /var/lib/mailman/data/mailman-transport
    Code:
    mylist@lists.mydomain.de      local
    /var/lib/mailman/data/mailman-virtual
    Code:
    mylist@lists.mydomain.de      mylist
    /var/lib/mailman/data/aliases
    Code:
    mylist:             "|/var/lib/mailman/mail/mailman post mylist"
    /etc/postfix/main.cf
    Code:
    alias_maps = hash:/etc/aliases, hash:/var/lib/mailman/data/aliases
    alias_database = hash:/etc/aliases, hash:/var/lib/mailman/data/aliases
    virtual_alias_maps = proxy:mysql:/etc/postfix/mysql-virtual_forwardings.cf, proxy:mysql:/etc/postfix/mysql-virtual_email2email.cf, hash:/var/lib/mailman/data/virtual-mailman
    transport_maps = hash:/var/lib/mailman/data/transport-mailman, proxy:mysql:/etc/postfix/mysql-virtual_transports.cf
    /etc/mailman/mm_cfg.py
    Code:
    POSTFIX_MAP_CMD = '/etc/mailman/virtual_to_transport.sh'
    /etc/mailman/virtual_to_transport.sh
    Code:
    #!/bin/sh
    sed -r -e 's/(^[^#]\S+\s+).+$/\1local/' $1 > /var/lib/mailman/data/transport-mailman
    /usr/sbin/postmap /var/lib/mailman/data/transport-mailman
    Sowohl ein in ISPConfig angestoßener Resync als auch das Ausführen von /var/lib/mailman/bin/genaliases ändern nichts, sondern leeren vielmehr die Konfigurationsdateien transport-mailman und virtual-mailman.

    Manuelles Aktualisieren der .db Dateien mittels postmap hilft ebenfalls nicht. Dienste und Server wurden auch mehrfach neugestartet.

    Hat Jemand einen Vorschlag woran es noch liegen könnte?

    MfG krz
     
  2. sirrus

    sirrus New Member

    Mailman und Zustellungsprobleme

    Hallo,

    ich habe leider das selbe Problem. Bei mir wird die Mail allerdings nicht zugestellt (kein Catchall aktiv) sondern abgelehnt mit:

    Interessant ist, dass tatsächlich alle Dateien in /var/lib/mailman/data (aliases, transport-mailman und virtual-mailman) auf einmal leer waren.

    Außerdem habe ich testweise einfach eine neue Liste erstellt - die funktioniert!!! Aber die anderen weiterhin nicht.

    Dann habe ich von Hand die Einträge entsprechend wiederhergestellt, genaliases gestartet und die Dienste neugestartet (postfix und mailman). Leider ohne Erfolg.

    Das Problem liegt meiner Meinung nach an transport-mailman. Die Datei ist dafür zuständig, dass postfix lokal zustellen soll.

    Bin leider auch mit meinem Latein am Ende... Die neu erstelle Liste funktioniert einwandfrei, was mich einen Postfix Konfigurationsfehler ausschließen lässt...

    Was tun? Hat irgendjemand eine Idee?

    Grüße
    Andreas
     
  3. sirrus

    sirrus New Member

    Gelöst

    Nach einigem hin und her habe ich es nun doch gelöst.

    Also - es müssen die Dateien aliases, transport-mailman und virtual-mailman entsprechende Einträge enthalten (maillist ist durch den Namen der Mailingliste zu ersetzen und entsprechend domain.tld durch die notwendige Domain - ggf. in der dbispconfig in der Tabelle mail_mailinglist nachsehen).

    Dazu muss man für jede Liste die folgenden Einträge vorfinden:

    /var/lib/mailman/data/aliases
    Code:
    # STANZA START: maillist
    maillist:             "|/var/lib/mailman/mail/mailman post maillist"
    maillist-admin:       "|/var/lib/mailman/mail/mailman admin maillist"
    maillist-bounces:     "|/var/lib/mailman/mail/mailman bounces maillist"
    maillist-confirm:     "|/var/lib/mailman/mail/mailman confirm maillist"
    maillist-join:        "|/var/lib/mailman/mail/mailman join maillist"
    maillist-leave:       "|/var/lib/mailman/mail/mailman leave maillist"
    maillist-owner:       "|/var/lib/mailman/mail/mailman owner maillist"
    maillist-request:     "|/var/lib/mailman/mail/mailman request maillist"
    maillist-subscribe:   "|/var/lib/mailman/mail/mailman subscribe maillist"
    maillist-unsubscribe: "|/var/lib/mailman/mail/mailman unsubscribe maillist"
    # STANZA END: maillist
    /var/lib/mailman/data/transport-mailman
    Code:
    # STANZA START: maillist
    maillist@domain.tld              local
    maillist-admin@domain.tld        local
    maillist-bounces@domain.tld      local
    maillist-confirm@domain.tld      local
    maillist-join@domain.tld         local
    maillist-leave@domain.tld        local
    maillist-owner@domain.tld        local
    maillist-request@domain.tld      local
    maillist-subscribe@domain.tld    local
    maillist-unsubscribe@domain.tld  local
    # STANZA END: maillist
    /var/lib/mailman/data/virtual-mailman
    Code:
    # STANZA START: maillist
    maillist@domain.tld              maillist
    maillist-admin@domain.tld        maillist-admin
    maillist-bounces@domain.tld      maillist-bounces
    maillist-confirm@domain.tld      maillist-confirm
    maillist-join@domain.tld         maillist-join
    maillist-leave@domain.tld        maillist-leave
    maillist-owner@domain.tld        maillist-owner
    maillist-request@domain.tld      maillist-request
    maillist-subscribe@domain.tld    maillist-subscribe
    maillist-unsubscribe@domain.tld  maillist-unsubscribe
    # STANZA END: maillist
    Dann muss man noch sicherheitshalber die Befehle ausführen:

    Code:
    cd /var/lib/mailman/data/
    /var/lib/mailman/bin/genaliases
    newaliases
    postmap transport-mailman
    postmap virtual-mailman
    postfix reload
     
    Zuletzt bearbeitet: 7. Juni 2014
  4. sirrus

    sirrus New Member

    Nachtrag

    Es muss auch noch am Anfang der Dateien virtual-mailman und transport-mailman ein Block mit den erlaubten Domains vorhanden sein:

    Code:
    # LOOP ADDRESSES START
    mailman-loop@domain1.tld  local
    mailman-loop@domain2.tld  local
    mailman-loop@domain3.tld  local
    # LOOP ADDRESSES END
    
    Und in der /var/lib/mailman/data/aliases:
    Code:
    # The ultimate loop stopper address
    mailman-loop: /var/lib/mailman/data/owner-bounces.mbox
    Eigentlich legt das genaliases auch an - bei mir war nur noch ein Fehler in einer mailman Konfiguration - wenn man die Domain ändert, dann passt die E-Mailadresse nicht mehr zu dem was in ispconfig eingestellt ist. Das ist nebenbei gesagt auch ziemlich gefährlich, da hier garantiert nicht gegen existierende E-Mailadressen geprüft wird.
     

Diese Seite empfehlen