Ein von mir aufgesetzter CentOS 5.5 Server mit sendmail-8.13.8-8.el5
arbeitet als Mailrelay zur Spam- und Virenabwehr zwischen dem
Mailrelay des Providers und dem internen Mailserver (Lotus Notes).
Zur Erkennung ungültiger Empfängeradressen am Perimeter wird die
Methode "LDAP Routing ohne LDAP" eingesetzt, also in sendmail.mc:
FEATURE(`ldap_routing',
`hash /etc/mail/mailhost', `hash /etc/mail/mailroute', `bounce')dnl
und in /etc/mail/mailhost für jeden Empfänger ein Eintrag der Form:
user(a)my.example.com notesserver.example.com
Das funktioniert auch alles sehr gut. Nun wünscht allerdings der
Provider, dass die Mail bei ihm zukünftig nicht mehr über Port 25,
sondern über Port 587 eingeliefert wird. Die Standardlösung:
define(`RELAY_MAILER_ARGS', `TCP $h 587')
führt leider dazu, dass auch die Weiterleitung an den internen
Mailserver auf Port 587 geht, was natürlich nicht funktioniert.
In der Sendmail-Doku findet sich dazu der trockene Hinweis, man
solle halt sicherstellen, dass der "relay"-Mailer nirgends anders
verwendet wird.
Offenbar verwendet also FEATURE(`ldap_routing') den Mailer "relay",
und die Lösung meines Problems bestünde darin, das auf "esmtp"
umzustellen.
Frage: Wie mache ich das?
Ich habe versucht, den Quellcode von FEATURE(`ldap_routing') zu
lesen, muss aber gestehen, dass ich nicht verstehe, wie bzw. an
welcher Stelle da der Mailer ausgewählt wird, geschweige denn,
wie ich diese Wahl beeinflussen könnte.
Schon mal danke für alle Tipps.
--
Tilman Schmidt
Phoenix Software GmbH
Bonn, Germany