jay2k1
Goto Top

Postfix-Mailrelay - wie von etc-aliases auf MySQL umstelllen?

Ich möchte ein Mailrelay, was Mails an zwei Mailserver weiterleitet, sich um Verteilerlisten kümmert und Spam filtert, von /etc/aliases auf MySQL umstellen.

Hallo,

folgende Ausgangssituation:
Wir haben ein Debian-Mailrelay als primären MX und zwei Mailserver dahinter:
  • relay.firma.de (Prio 10)
  • mail1.firma.de (Prio 20)
  • mail2.firma.de (Prio 30)

Auf dem Relay ist Postfix installiert.
Die /etc/aliases sieht in etwa so aus:

# weiterleitungen z.b. info@firma.de nach empfang@firma.de
buchhaltung: meyer
info: empfang
mail: empfang

# verteilerlisten z.b. alle@firma.de
alle: meyer, mueller, schmidt, empfang
verwaltung: meyer, schmidt, externer_mitarbeiter@anderefirma.de
team1: mueller, empfang

# userdefinitionen
meyer: meyer@mail1.firma.de
mueller: mueller@mail2.firma.de
schmidt: schmidt@mail1.firma.de
empfang: empfang@mail2.firma.de

Wenn nun ein neuer Mitarbeiter anfängt, muss man (z.B. in vim) durch die mittlerweile 868 Zeilen lange /etc/aliases scrollen, den Mitarbeitern bei 2-8 Verteilerlisten eintragen und ihn am Ende natürlich definieren, damit das Relay weiß, zu welchem der beiden Mailserver er Mails für den Mitarbeiter weiterleiten soll. Hinterher natürlich "newaliases" nicht vergessen.

Früher hat das mal funktioniert, aber mittlerweile ist die Firma größer und die Mitarbeiterfluktuation ebenso, so dass es mittlerweile echt keinen Spaß mehr macht, sich durch die Datei zu wühlen. Daher würde ich gerne umstellen auf MySQL. Davon erhoffe ich mir, dass ich mir ein kleines, nettes Webinterface in PHP baue und somit die User einfacher verwalten kann. Beziehungsweise, ich habe bereits ein Webinterface für "neuen User erstellen", was mir für neue Mitarbeiter automatisiert Accounts auf unseren Servern erstellen kann - sei es Mailserver, Ticketsystem, CRM-Datenbank etc. und ich würde gerne das Relay mit einbauen. Leider wäre die Umsetzung per Script, was mit sed o.ä. in die /etc/aliases schreibt oder daraus löscht etwas fummelig und mir auch ehrlichgesagt zu unsicher, MySQL wäre viel eleganter.

Nun meine Frage: Wie geht'n das? ;)
Sprich: Was muss ich in meiner bestehenden Postfix-Konfiguration ändern? Wie sollte der Tabellenaufbau sein? Wie bringe ich Postfix bei, bitte auf localhost in die Datenbank xyz zu schauen, und wie muss das Tabellenlayout sein, damit Postfix all das erkennt?

Hat das eventuell schonmal jemand gemacht und hat ein paar Tipps für mich? Ich finde mit den gängigen Suchmaschinen leider erschreckend wenig hilfreiches dazu im Netz.

Vielen Dank!

Gruß, der Jay

Content-Key: 153457

Url: https://administrator.de/contentid/153457

Printed on: April 19, 2024 at 23:04 o'clock

Member: Der-Phil
Der-Phil Oct 20, 2010 at 11:52:27 (UTC)
Goto Top
Hallo,

hier ein paar Ansätze:

main.cf
alias_maps = mysql:/etc/postfix/mysql-aliases.cf

/etc/postfix/mysql-aliases.cf
  1. The user name and password to log into the mysql server.
user = root
password = password
hosts = 127.0.0.1
dbname = datenbankname
  1. For Postfix 2.2 and later The SQL query template.
  2. See mysql_table(5) for details.
query = select value from objectproperty where objectid=(select objectid from objectproperty where value='%s' limit 1) and propname='loginname';

Gruß
Phil