UCS Member + Kopano + 3 Maildomänen + Probleme

kopano

#1

habe Probleme 3 Maildomänen auf einem UCS Member Server (Version 4.3.3. errata390) mit Anbindung an einen UCS Master als AD Controller unter Kopano (Version 8.6.8.2) zu konfigurieren:

Ziel soll sein, dass für alle hinterlegten Benutzer mit deren Mailkonten (auch den hinterlegten Alias Konten) die Zustellung der Mails ausschliesslich über den lokalen SMTP host (127.0.01) erfolgen soll.
Dagegen sollen für alle anderen Mailadressen - egal, ob

  1. FQDN mit einer der hinterlegten Maildomänen übereinstimmt (aber das Konto gar nicht existiert) und
  2. natürlich allen externen Mailadressen
    die Zustellung über den SMTP Relay Host eines externen Providers erfolgen.
    Funktion 1 wäre eine Art “Catch-All” Konto für nicht zustellbare Mails an eine oder mehrere interne Maildomänen.

Eine Domäne wird ausschliesslich lokal benutzt --> lokal.example.de
Zweite und dritte Domäne beinhalten Mailkonten von lokalen Usern; aber auch externe Konten (nicht unter UCS gehostete Konten) der gleichen FQDN = Maildomäne --> example.de + extern.example.de

Nach der Installation von UCS Member Server und Kopano funktionierte zunächst die interne/lokale Mailzustellung problemlos.
Dann wurde die zweite und dritte Maildomäne auf dem UCS Master “Domäne/E-Mail” angelegt und bei den Benutzern die entsprechenden Mailkonten im Dialog “Benutzer/user???/Erweiterte Einstellungen” zusätzlich eingetragen.

Entsprechende Variablen (UCR “relayhost” usw.) wurden eingetragen.
Das Vorgehen entsprach im Wesentlichen dem https://www.univention.de/blog-de/2016/08/einmal-kopano-to-go-bitte/

Zu diesem Zeitpunkt gingen:
lokaler User --> lokaler User (inkl. aller Aliases mit Bezug zu “lokal.example.de”)
lokaler User --> externer User (wenn dieser zumindest als Alias in den “Erweiterten Einstellungen” hinterlegt war --> Zustellung erfolgte unter SMTP lokal)
lokaler User --> externer User (wenn es keinen Bezug zu einer der hinterlegten Domänen gab (z.B. “.com” --> Zustellung erfolge unter SMTP Relayhost)

Ging nicht:
lokaler User --> externer User (wenn dessen FQDN mit einer der Maildomänen (lokal.example.de bzw. example.de) übereinstimmte und/oder auch nur mit “…de” endet !

Beispiel Versand über Console mit “swaks” an nicht in UCS /bzw. Postfix existierende Mailkonten:
Mail an info@domain1.com --> klappt einwandfrei über das SMTP Relay
Mail an info@domain1.de --> Fehler 550 5.1.1…

Fehlermeldung swaks --> <** 550 5.1.1 info1@domain2.de: Recipient address rejected: User unknown in virtual mailbox table

Fehlermeldung kopano --> Unfortunately, kopano-spooler was unable to deliver your mail to the/some of the recipient(s).
You may need to contact your e-mail administrator to solve this problem.

Recipients that failed permanently: info@domain1.de
Ausnahmen:
Das Senden an die 2.te Domain scheiterte, wenn das Zielkonto nicht bereits bei einem lokalem User z.B. als Alias in den Erweiterten Einstellungen hinterlegt war.
Es erfolgte immer eine Fehlermeldung in der WebApp von Kopano:
Unfortunately, kopano-spooler was unable to deliver your mail.
The error given was:

5.7.0 Must issue a STARTTLS command first

You may need to contact your e-mail administrator to solve this problem.

Problem 1:
Es werden immer noch keine Mails über das SMTP Relay zugestellt, wenn deren FQDN mit einer der hinterlegten Mail-Domänen übereinstimmt !
Da helfen auch diese Artikel nicht --> https://help.univention.com/t/mail-setup-mit-kopano/7907 oder https://help.univention.com/t/smtp-relay-per-recipient-unknown-in-virtual-mailbox-table/2823/11.

Problem 2:
Es wird immer (noch) die interne FQDN übertragen.
Das führte bei (testweise gewollt)en falschen Zieladressen zu einem reject

550 5.1.1 info10@example.de: Recipient address rejected: User unknown in virtual mailbox table

der vom externen SMTP Relay natürlich nicht an die ursprüngliche Senderadresse (z.B. lokal.example.de) zugestellt werden konnte.

Ich habe deswegen diverse Postfix Einstellungen ausprobiert, um die Probleme zu beheben, aber keines führte zum Erfolg.
Allerdings fiel dabei auf, das die Konfigurationsdatei des Kopano-Spoolers “/etc/kopano/spooler.cfg” mit Ausnahme der UCR Variable “kopano/cfg/spooler/smtp_port” komplett auskommentiert war ?

Nachdem ich die dortige Konfiguration gemäß https://forum.kopano.io/topic/1473/kopano-does-not-send-mails/3
manuell geändert habe, wurden überhaupt keine Mails mehr zum Relayhost versendet (Fehlermeldung wie oben).

Ich ging daher dann davon aus, das Kopano nach der Erstinstallation auf das zugrunde liegende Postfix-System zurückgriff und kommentierte die spooler.cfg wieder aus.

Weitere Tests erfolgten dann nur noch mit dem Programm swaks (über apt-get installiert) in der Console.

Dabei stellte sich heraus, dass Postfix alle von mir modifizierten Dateien nicht interpretiert:

root@ucs-XXXX:/etc/postfix# cat canonical_sender
user1.lokal user1.loka@example.de
user2.lokal user2.lokal@example.de

root@ucs-XXXX:/etc/postfix# cat canonical
user2.lokal user2.lokal@example.de

Selbst in “/etc/postfix/main.cf.local” angelegt : smtp_generic_maps = hash:/etc/postfix/generic

root@ucs-XXX:/etc/postfix# cat generic
@my.example.de @example.de
klappte nicht.

Aber wenigstens eine Transport Map sollte gehen (siehe https://help.univention.com/t/kopano-mehrere-e-mail-adressen-fur-einen-benutzer/4851):

root@ucs-XXX:/etc/postfix# cat transport
user1.lokal@my.example.de lmtp:127.0.0.1:2003
user1.lokal@my.example.de lmtp:127.0.0.1:2003
info@example.de smtp:[smtp.strato.de] <-- dieses ist ein interner Alias, der zu Testzwecken aber relayed werden sollte
@my.example.de lmtp:127.0.0.1:2003
@example.de smtp:[smtp.strato.de] <-- ob mit oder ohne Portangabe; keiner Ergebnisänderung

Mails an info@example.de wurden weiterhin nur über den lokalen SMTP host zugestellt.

Genauso wenig wurden Mails an @example.de relayed
“550 5.1.1 inf5o@example.de: Recipient address rejected: User unknown in virtual mailbox table”
(wobei auch dieser Thread nicht weiterhalf --> https://help.univention.com/t/smtp-relay-per-recipient-unknown-in-virtual-mailbox-table/2823).

Die UCR Variable “mail/postfix/transport/ldap/enabled” ist auf “true” bzw. “yes” gesetzt.

Da überhaupt keine Umschreibungen (canonical…) von Postfix vorgenommen wurden, habe ich es zuletzt mit einer “/etc/postfix/smtp_header_checks” probiert:

root@ucs-XXXX:/etc/postfix# cat smtp_header_checks
/^From:(.)@my.example.de(.)/i REPLACE From: $1@example.de

Zuvor durchgeführter Test des Codings:

root@ucs-XXXX:/etc/postfix# postmap -q “From: User2 Lokal user2.lokal@my.example.de” regexp:/etc/postfix/smtp_header_checks
führt zum gewünschten Ergebnis:

REPLACE From: < User2 Lokal user2.lokal@example.de

Aber nicht einmal damit wurden die Mailadressen umgeschrieben !
Haben meine Probleme vielleicht nur etwas mit der Kombi UCS+Kopano zu tun oder liegt der Hund woanders begraben ?

Welche Schritte sind notwendig, um zu einen lauffähigen Mailsystem zu kommen, dass den erstgenannten Zielen entspricht ?


#2

Hallo @Knappe,

generell sind das eher Themen für den MTA Stack spricht Postfix (im Falle von Univention), Kopano selbst berührt dies recht wenig.

Ich habe deinen Post nicht in Gänze gelesen (der ist mir zu lang um dies einfach mal so nachzuvollziehen zu wollen), ich würde aber immer empfehlen eher eine eigene Domain zu erwerben und diese zum Mailen zu verwenden anstatt zu versuchen die Postfix Konfiguration zu verbiegen, damit man seine gmx.de Adresse weiterverwenden kann.

Eventuell hilfreiche Links:
https://wiki.z-hub.io/display/K4U/Setting+up+Univention+to+allow+multiple+e-mail+addresses+per+user
http://www.postfix.org/ADDRESS_REWRITING_README.html