Kayako Email Pipe mit Postfix ?!

solidius

Registered User
Hallo liebe leute,

Hier erstmal mein System
Debian 4.0 Etch mit PHP 5.2, Apache 2, Confixx 3.3.1, Postfix

Hier nun mein Problem

ich versuche nun schon seit Stunden meinen Postfix dazu zu kriegen mails die an support@domain.de geschickt werden direkt auf das CLI PIPE Script von Kayako zu leiten. Dafür habe ich in der /etc/aliases folgenden Einträge versucht:

support@domain.de: "|/var/www/web8/html/cli/index.php"
support@domain.de: /var/www/web8/html/cli/index.php

Danach habe ich "/etc/init.d/postfix restart" und "postalias /etc/aliases" ausgeführt, wo bei ich beim ausführen von "postalias /etc/aliases" folgende Fehlermeldung bekomme:

"postalias: warning: /etc/aliases, line 4: name must be local"

Wenn ich versuche eine Mail an den User zu senden bekomme ich ein "Recipient address rejected: User unknown in virtual alias table"

In der main.cf habe ich folgende Parameter erweitert:

allow_mail_to_commands = alias,forward,include
allow_mail_to_files = alias,forward,include

Nun meine Frage ! Kann mir vielleicht jemand helfen und sagen was ich hier falsch mache ?

Vielen dank

Gruß

Solidius
 
Folgende Version sollte richtig sein:
Code:
support@domain.de: "| php /var/www/web8/html/cli/index.php"

Die php-Datei kannst Du natürlich nicht einfach so aus der shell heraus ausführen, da Du dafür einen Interpreter brauchst -- somit musst Du diesen auch angeben.

Ein einfaches "postalias /etc/aliases" sollte reichen, das Restarten kannst Du Dir sparen.

Viele Grüße,
LinuxAdmin
 
Hallo und danke für die Schnelle Antwort,

leider bekomme ich immer noch die Fehlermeldung:

"postalias: warning: /etc/aliases, line 4: name must be local"

Woran kann dies liegen ?

Gruß

Solidius
 
"postalias: warning: /etc/aliases, line 4: name must be local"

Aliase funktionieren nur für die lokale Domain (->mydestination). Daher darfst Du auf der linken Seite des Alias kein "support@domain.de" eintragen, sondern nur "support". Wenn domain.de nicht in mydestination steht, sondern als virtueller Host eingetragen ist, must Du eben für "support@domain.de" eine Weiterleitung einrichten, die auf einen Namen zeigt, der in mydestination steht (z.B. support_domain.de@myserver.de) und dann den alias in /etc/aliases eben "support_domain.de" nennen.
 
Hallo !

Vielen dank für den Tip das hat geholfen ! Nun bekomme ich eine andere Fehlermeldung.

Code:
Command died with status 1: " php
    /var/www/web8/html/cli/index.php". Command output: Could not open input
    file: /var/www/web8/html/cli/index.php

Dies erhalten ich in einer "Undelivered Mail Returned to Sender" Antwort Mail

Kann mir da noch mal bitte jemand helfen.

Vielen dank

Gruß

Solidius
 
Der Aufruf des Scripts erfolgt mit dem Benutzer "postfix". Daher müssen alle Verzeichnisse "auf dem Weg" zum PHP-Script die "r-x"-Bits für alle Benutzer gesetzt haben und das Script selber muss für alle lesbar sein. Das Gleiche gilt für evtl. eingebundene andere Dateien.

Versuche das Script als nicht-privilegierter Benutzer ("su nobody" oder "su postfix") aufzurufen. Das muss vorher funktionieren, bevor Du versuchst, es via dem alias aufzurufen.
Da es wahrscheinlich eine Mail als Eingabe erwartet, musst Du es folgendermaßen aufrufen:
Code:
php /var/www/web8/html/cli/index.php < /tmp/test.mail
, wobei in /tmp/test.mail eine einzelne Mail inclusive aller Header und der entsprechenden Doppel-Leerzeilen stehen sollte. Am besten schickst Du eine Mail an einen lokalen Benutzer (ohne IMAP-Postfac, etc) und kopierst dann /var/mail/benutzer nach /tmp/test.mail (/var/mail/benutzer darf vorher nicht existieren oder muss 0 Bytes groß sein).
 
Ich brauche dafür nochmal deine Hilfe wie kann ich jetzt das verzeichnis für den user Postfix zugänglich machen !

Danke

Solidius
 
Hallo

könnte mir bitte nochmal jemand helfen ?

Ich habe es leider immer noch nicht hinbekommen dem User ebenfalls zugriff auf die Pipe Datei zu geben !

Könnte mir einer sagen wie die Syntax aussehen würde ?

Vielen dank

Gruß

Björn
 
Back
Top