mailfetcher mit SPF, DKIM und DMARC statt E-Mail-Weiterleitung

Für Modifikationen in und um KeyHelp.
Post Reply
User avatar
Tobi
Community Moderator
Posts: 3444
Joined: Thu 5. Jan 2017, 13:24

mailfetcher mit SPF, DKIM und DMARC statt E-Mail-Weiterleitung

Post by Tobi »

Hi Zusammen,

da "echte" E-Mail-Weiterleitungen in Zeiten von SPF, DKIM und DMARC nur noch bedingt funktionieren, habe ich ein kleines Skript geschrieben welches beliebige IMAP-Postfächer abruft und die enthaltenen E-Mails an neue Empfänger sendet.

Es handelt sich somit um eine erweiterte Weiterleitung welche unter eigener E-Mail-Adresse die eintreffenden E-Mails beliebiger Postfächer weiterleitet. Für jedes Weiterleitungspostfach kann separat definiert werden an welche Empfänger die E-Mails weitergelitet werden sollen. Man kann einen Absender für alle E-Mails nehmen oder auch für jedes Postfach einen separaten Absender definieren.
Zusätzlich werden alle Weiterleitungen in einem Logfile festgehalten.

Beim ersten Aufruf richtet sich das Skript selbst ein. Die Unterordner "logs" und "config" werden angelegt und mittels composer wird der phpmailer eingerichtet. Auf einem Standard-KeyHelp System ist composer vorinstalliert.

Nach der Installation liegen im Ordner "config" zwei Beispiel-Dateien.
In der "global.txt" sind die Standard-Verbindungsdaten hinterlegt.
Die "example.txt" ist ein Beispiel für eine Weiterleitung. Die Datei "example.txt" wird bei Skriptausführung nicht berücksichtigt.

Damit eure Weiterleitung funktioniert muss die TXT Datei einen beliebigen Namen haben, im Ordner "config" liegen und auf "txt" enden. Idealerweise benennt ihr die TXT Datei einfach wie die entsprechende E-Mail-Adresse. Das Skript kann wahlweise als User oder als root ausgeführt werden. Empfohlen ist die Ausführung als User. Dann kann man auch die einzelnen Config Files ganz leicht im Datei-Manager bearbeiten.

Skript in mailfetch.php umbenennen und mit dem Datei-Manager in ein beliebiges Verzeichnis auf dem Server laden.
Zum Starten des Skriptes wechselt ihr auf der Konsole in das entsprechende Verzeichnis und startet das Skript mit:

Code: Select all

keyhelp-php83 mailfetch.php


Vorraussetzungen
  • User muss SSH freigeschaltet haben.
  • User darf den PHP Befehl "system" ausführen.
  • Nicht die interne PHP Version des OS nehmen.
  • Die Absendeadresse muss natürlich über gültigen SPF, DKIM und DMARC verfügen.
Sobald ihr alles erfolgreich getestet habt könnt ihr abschließend den Skriptaufruf per Cronjob automatisieren.

Ich freue mich auf eure Ideen, Wünsche und Rückmeldungen generell.


DOWNLOAD
mailfetch.php.txt
(9.96 KiB) Downloaded 13 times
Gruß,
Tobi


-----------------------------
wewoco.de
Das Forum für Reseller, Digital-Agenturen, Bildschirmarbeiter und Mäuseschubser
Post Reply