Verständnisfrage: postfix kann Kopano LMTP-Agent nicht über localhost erreichen

Debian macht sich hervorragend als Web- und Mailserver. Schau auch in den " Tipps und Tricks"-Bereich.
Antworten
altmetaller
Beiträge: 108
Registriert: 03.02.2017 12:28:41

Verständnisfrage: postfix kann Kopano LMTP-Agent nicht über localhost erreichen

Beitrag von altmetaller » 06.12.2017 11:43:51

Hallo,

ich möchte in meinem Postfix eine Domain via lmtp auf einen (lokalen) Kopano-Server schieben. Der Postfix läuft auf dem gleichen Host auf dem auch Kopano läuft.

In der /etc/kopano/dagent.cfg binde ich den LMTP-Agent an alle Netzwerkschnittstellen:

Code: Alles auswählen

##############################################################
# DAGENT LMTP SETTINGS
#  start dagent with -d to create an lmtp daemon of the kopano-dagent

# binding address for LMTP daemon
# change to the empty string if you require connections on other addresses
#server_bind =
# Limit connections to address of interface (IPv6),
# or route path interface (IPv4). Leave empty for to indicate "all".
#server_bind_intf =

# LMTP port to listen on for LMTP connections
lmtp_port = 2003
In der /etc/postfix/main.cf spreche ich mit "localhost"...

Code: Alles auswählen

virtual_transport = lmtp:localhost:2003
...und erhalte beim Versand einer Test-E-Mail folgende Fehlermeldung in der /var/log/mail.log:

Code: Alles auswählen

postfix/lmtp[7228]: A6659A0449: to=<root@meinetestdomain.de>, relay=none, delay=0.03, delays=0.03/0/0/0, dsn=5.4.4, status=bounced (Host or domain name not found. Name service error for name=localhost type=AAAA: Host not found)
Jetzt ändere ich in der /etc/postfix/main.cf den Eintrag für den lmtp_port wie folgt...

Code: Alles auswählen

virtual_transport = lmtp:127.0.0.1:2003
...und es funktioniert genau so, wie es soll.

Mein Testsystem hat noch eine Besonderheit: Ich habe in der Datei /etc/domainame den Domainnamen stehen und setze den in der /etc/rc.local mit

Code: Alles auswählen

domainname -F /etc/domainname
Hier noch ein paar dazugehörige Spielereien:

Code: Alles auswählen

root@ko:/var/log# hostname
ko
root@ko:/var/log# domainname
meinetestdomain.de
root@ko:/var/log# hostname -f
ko.meinetestdomain.de
root@ko:/var/log# cat /etc/hosts
127.0.0.1       localhost
127.0.1.1       ko.meinetestdomain.de     ko

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
root@ko:/var/log#
Ich fuchse mich gerade in die Materie rein, insofern muss ich verstehen, warum es nur via 127.0.0.1 funktioniert und bitte gleichzeitig um entsprechende Geduld und zielführende Hinweise! :-)

Gruß,
Jörg

Benutzeravatar
bluestar
Beiträge: 2334
Registriert: 26.10.2004 11:16:34
Wohnort: Rhein-Main-Gebiet

Re: Verständnisfrage: postfix kann Kopano LMTP-Agent nicht über localhost erreichen

Beitrag von bluestar » 07.12.2017 07:20:34

altmetaller hat geschrieben: ↑ zum Beitrag ↑
06.12.2017 11:43:51
In der /etc/postfix/main.cf spreche ich mit "localhost"...

Code: Alles auswählen

virtual_transport = lmtp:localhost:2003
...und erhalte beim Versand einer Test-E-Mail folgende Fehlermeldung in der /var/log/mail.log:

Code: Alles auswählen

postfix/lmtp[7228]: A6659A0449: to=<root@meinetestdomain.de>, relay=none, delay=0.03, delays=0.03/0/0/0, dsn=5.4.4, status=bounced (Host or domain name not found. Name service error for name=localhost type=AAAA: Host not found)
versuch mal ein

Code: Alles auswählen

ping6 localhost[/quote]

Ich bin kein Postfix-Experte, aber läuft das bei dir ggfs. in einer ChangeRoot-Umgebung? Dann müsstest du mal die hosts Datei eben innerhalb der ChangeRoot Umgebung checken.

Bevor du dich auf die Problemsuche machst, lauscht dein LMTP-Dienst auf IPv6?

altmetaller
Beiträge: 108
Registriert: 03.02.2017 12:28:41

Re: Verständnisfrage: postfix kann Kopano LMTP-Agent nicht über localhost erreichen

Beitrag von altmetaller » 07.12.2017 09:51:59

Hallo,
Ich bin kein Postfix-Experte, aber läuft das bei dir ggfs. in einer ChangeRoot-Umgebung?
Keine Ahnung, diesbezüglich habe ich im Zweifelsfall die Ideal-Standard-Konfiguration aus dem offiziellen Repository abgehärtet und um die Einträge für die virtuelle Domain ergänzt.

Aber das ist zumindest schon mal ein Tipp, in welche Richtung ich weiterforschen kann. Lieben Dank dafür!

Gruß,
Jörg

altmetaller
Beiträge: 108
Registriert: 03.02.2017 12:28:41

Re: Verständnisfrage: postfix kann Kopano LMTP-Agent nicht über localhost erreichen

Beitrag von altmetaller » 08.12.2017 11:44:42

Hallo,

Ergänzung: Der Postfix läuft tatsächlich in einer chroot Umgebung. Die Hosts-Datei ist in beiden Umgebungen identisch:

Code: Alles auswählen

root@ko:~# cat /etc/hosts
127.0.0.1       localhost
127.0.1.1       ko.meinetestdomain.de     ko

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
root@ko:~# cat /var/spool/postfix/etc/hosts
127.0.0.1       localhost
127.0.1.1       ko.meinetestdomain.de     ko

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
root@ko:~#
Die /etc/resolv.conf bzw. /var/spool/postfix/etc/resolv.conf (beide Dateien sind identisch):

Code: Alles auswählen

root@ko:~# cat /etc/resolv.conf
domain intern
search intern
nameserver 192.168.130.160
root@ko:~#
In beiden nsswitch.conf hat die Hosts-Datei Priorität:

Code: Alles auswählen

root@ko:~# cat /etc/nsswitch.conf
# /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc-reference' and `info' packages installed, try:
# `info libc "Name Service Switch"' for information about this file.

passwd:         compat
group:          compat
shadow:         compat
gshadow:        files

hosts:          files myhostname mdns4_minimal [NOTFOUND=return] dns
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

netgroup:       nis
root@ko:~#
Fairerweise muss ich dazu sagen, dass die den lmtp in der Kopano-Dokumentation ebenfalls über 127.0.0.1 und nicht über localhost ansprechen.

Der lmtp ist definitiv an "localhost" gebunden:

Code: Alles auswählen

root@ko:/var/spool/postfix/etc# telnet localhost 2003
Trying ::1...
Connected to localhost.
Escape character is '^]'.
220 2.1.5 LMTP server is ready
quit
221 2.0.0 Bye
Connection closed by foreign host.
root@ko:/var/spool/postfix/etc#
Es macht mich wahnsinnig "fuchsig", dass das nicht funktioniert. Irgendwie habe ich das Gefühl, dass "ich gar nicht weitermachen muss solange ich diesen Punkt nicht verstanden habe".

Vielleicht habt Ihr noch weitere Tipps?

Gruß,
Jörg

Übrigens: Via ping6 kann ich den localhost problemlos erreichen.

mtheiss
Beiträge: 154
Registriert: 01.04.2005 22:07:26
Lizenz eigener Beiträge: MIT Lizenz

Re: Verständnisfrage: postfix kann Kopano LMTP-Agent nicht über localhost erreichen

Beitrag von mtheiss » 08.12.2017 15:47:39

Nur so aus dem Kopf meine ich, dass Postfix bei lmtp:localhost: noch einen MX lookup macht. Bei lmtp:127.0.0.1 lässt er ihn weg.
Um ohne MX Lookup eine Domain zu verwenden muss man glaube ich lmtp:[localhost]: verwenden.

altmetaller
Beiträge: 108
Registriert: 03.02.2017 12:28:41

Re: Verständnisfrage: postfix kann Kopano LMTP-Agent nicht über localhost erreichen

Beitrag von altmetaller » 11.12.2017 14:06:24

Hallo,

da hast Du Recht - genau das scheint die Ursache zu sein.

Postfix nutzt für lmtp nur Hostnamen, für die er einen MX-Record findet und mit den eckigen Klammern kann man eben genau diese Prüfung deaktivieren.

vielen lieben Dank und Gruss aus Bremen,
Jörg

Benutzeravatar
bluestar
Beiträge: 2334
Registriert: 26.10.2004 11:16:34
Wohnort: Rhein-Main-Gebiet

Re: Verständnisfrage: postfix kann Kopano LMTP-Agent nicht über localhost erreichen

Beitrag von bluestar » 11.12.2017 16:37:58

Versuch mal in der main.cf folgenden Eintrag:

Code: Alles auswählen

smtp_host_lookup = dns,native
Ohne diesen Eintrag fragt Postfix nur den DNS-Server und nicht die /etc/hosts ...

Antworten