Zwei Postfix Server und eine MySQL Userdatenbank

Postfix, QMail, Sendmail, Dovecot, Cyrus, Courier, Anti-Spam
schnurpel
Posts: 9
Joined: 2008-01-25 17:17
 

Zwei Postfix Server und eine MySQL Userdatenbank

Post by schnurpel »

Guten Tag,

leider bin ich nicht DER Postfix Experte soll es aber innerhalb kurzer Zeit werden.
Wir haben in unserer Firma einen Postfix Mailserver mit einer nicht öffentlichen IP Nummer stehen, der
1. firmenintern IMAP Server ist
2. interner SMTP Server ist.
Seine Benutzerdaten bekommt er aus einer MySQL Datenbank.

Dieser leitet Mails an einen extern gehosteten SMTP Server weiter. Der externe Mailserver ist auch als mx Server für die Domain eingetragen und leitet im Augenblick mit qmail per smtprouting alle eingehenden Mails an den internen (per dyndns erreichbaren) Mailserver weiter.
Der externe dient also nur als Mailgateway. Leider macht der keine Userauthentifizierung und nimmt somit jede Mail für die Domain an, schickt sie weiter an den internen Mailserver (der mit Postfix drauf) und erst der erkennt, dass es sich evtl. um Spam handelt und schickt die Mail wieder zurück zum externen Mailserver (der mit qmail drauf). Somit gibt es ziemlich viel Ärger und mitunter viele Bouncemails.

Was ich jetzt machen will ist folgendes:
Der externe bekommt auch ein Postfix und Zugriff auf die Datenbank des internen Servers, damit der draussen schon weiss, was für User es intern gibt.
Damit kann der externe gleich prüfen ob es den User überhaupt gibt und dann die Mail nach intern weitergeben oder eben ablehnen.

Hat jemand eine Idee, wie ich das mit Postfix bewerkstelligen kann? Stichwörter nach denen ich suchen sollte, gute Howtos, Auszüge aus Configfiles...

Ich danke schonmal herzlich fürs lesen...
User avatar
daemotron
Administrator
Administrator
Posts: 2641
Joined: 2004-01-21 17:44
 

Re: Zwei Postfix Server und eine MySQL Userdatenbank

Post by daemotron »

Für den Zugriff auf die interne Datenbank von "außen" musst Du relativ großen Aufwand treiben (Stichwort: VPN). Einfacher wäre es, per Cron-Job aus den Datenbank-Einträgen eine Postmap-Datei mit (virtuellen) Usern zu erzeugen und die per SCP auf den Mailgateway zu übertragen. Ist dann bei Änderungen an der Datenbank zwar kein Echtzeit, aber viel leichter zu realisieren.

Hilfe zu Postfix:
http://www.gentoo.org/doc/de/virt-mail-howto.xml
http://www.arschkrebs.de/postfix/
schnurpel
Posts: 9
Joined: 2008-01-25 17:17
 

Re: Zwei Postfix Server und eine MySQL Userdatenbank

Post by schnurpel »

Vielen dank schonmal,
da ist mir noch eine Frage eingefallen: An welcher Stelle sag ich dem Postfix bei einer eingehenden Verbindung: "Guck bitte in die Tabelle ob es den User gibt und wenn ja, dann bitte die Mail weitergeben an den internen Mailserver (abcde.dyndns.org)?

Danke und einen schönen Abend...
User avatar
daemotron
Administrator
Administrator
Posts: 2641
Joined: 2004-01-21 17:44
 

Re: Zwei Postfix Server und eine MySQL Userdatenbank

Post by daemotron »

Kleines Beispiel:

Code: Select all

smtpd_recipient_restrictions = check_recipient_access hash:/etc/postfix/access,
                               reject_unauth_destination,
                               permit
Für ein umfangreicheres Konfigurationsbeispiel schau Dir mal die beiden Links an, bzw. wirf mal einen Blick ins RootForum-Wiki.
schnurpel
Posts: 9
Joined: 2008-01-25 17:17
 

Re: Zwei Postfix Server und eine MySQL Userdatenbank

Post by schnurpel »

Super, nachdem ich ein bisschen die MySQL Tabellen bearbeitet habe, funktioniert das erwünschte relayen jetzt ganz gut. Postfix guckt in die MySQL Tabelle und prüft ob es einen Empfänger gibt, bevor die Mail an den internen Mailserver weitergeleitet wird.
Aber wo stell ich ein, dass Postfix die Mail erst gar nicht annimmt und gleich zurückweist?

Hui, einen schönen Abend!
Schnurpel
User avatar
Joe User
Project Manager
Project Manager
Posts: 11185
Joined: 2003-02-27 01:00
Location: Hamburg
 

Re: Zwei Postfix Server und eine MySQL Userdatenbank

Post by Joe User »

PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.