• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] PHP und Postfix

Status
Für weitere Antworten geschlossen.
Weiss jemand wie man die php.ini konfigurieren muss, wenn man postfix als Mailserver unter SUSE Linux 10.1 installiert hat?

Zur Zeit mailt mein PHPKit leider nicht...


Gruß Sid1968 :)
 
Sid1968 schrieb:
Weiss jemand wie man die php.ini konfigurieren muss, wenn man postfix als Mailserver unter SUSE Linux 10.1 installiert hat?

Zur Zeit mailt mein PHPKit leider nicht...

Gibts da denn großartig was einzustellen? IMHO kann da doch nur der Pfad zum sendmail-Programm festgelegt werden.

Funktioniert denn der Postfix, d.h. kannst du eine Mail von der Konsole schicken, z.B. per

echo "kaputt" | mail -s "test" user@host.de

guck dabei am besten gleich per "tail -f /var/log/mail" nach, was sich beim Mailer tut (falls eventuelle Bounces aus irgendwelchen Gründen nicht ankommen).

Grüsse!!
 
Ich dank Dir für die Antwort:

Also wenn ich in die php.ini eintrage:

sendmail_path = /usr/sbin/postfix

dann sagt das phpkit, dass die Mail nicht erfolgreich gesendet werden konnte.


Trage ich folgendes ein:

sendmail_path = sendmail -t

Dann sagt das phpkit, dass die Mail erfolgreich gesendet wurde. Es kommt nur nichts an.

Mit dem Befehl: "tail -f /var/log/mail" bekomme ich folgendes:

---------------------------------------------------------------------------------------------------------------------------------------------
Jun 16 14:55:46 amd2000 postfix/smtp[17068]: 2FD276E6B2: to=<dddim100@gmx.de>, r elay=smtp.1und1.de[212.227.15.167], delay=2, status=deferred (host smtp.1und1.de [212.227.15.167] said: 421 dns lookup failed for sender domain (in reply to MAIL FROM command))
Jun 16 14:59:06 amd2000 postfix/scache[17069]: statistics: start interval Jun 16 14:54:48
Jun 16 14:59:06 amd2000 postfix/scache[17069]: statistics: domain lookup hits=0 miss=4 success=0%
Jun 16 14:59:06 amd2000 postfix/scache[17069]: statistics: address lookup hits=0 miss=8 success=0%
Jun 16 14:59:06 amd2000 postfix/scache[17069]: statistics: max simultaneous domains=1 addresses=2 connection=4
----------------------------------------------------------------------------------------------------------------------------------------------

Ich möchte dazu anmerken, dass ich meinen Server Zuhause über xampp 1.5.3a laufen lasse. Mein Provider ist 1&1 und ich benutze einen dyndns.org Account.

Gruß Sid1968
:)
 
Das dein postfixeintrag nicht ging ist klar: sendmail ist das Programm zum Senden. Deine Version wird aber aus dem Postfixpaket kommen.
Laut dem Log kann er die Domain nicht auflösen und folgend dann auch nicht den Host. Von daher die Frage: Wie löst Du Domainnamen auf?
 
Sid1968 schrieb:
-----------------------------------------------------------------------------
Jun 16 14:55:46 amd2000 postfix/smtp[17068]: 2FD276E6B2: to=<dddim100@gmx.de>, r elay=smtp.1und1.de[212.227.15.167], delay=2, status=deferred (host smtp.1und1.de [212.227.15.167] said: 421 dns lookup failed for sender domain (in reply to MAIL FROM command))

smtp.1und1.de mag deine Mail nicht haben, er sagt da "dns lookup failed for sender domain". Das deutet darauf hin, dass er nur Mail von bekannten MTAs haben will, also z.B. solchen, die über einen richtigen MX-Eintrag verfügen.
Wahrscheinlich solltest du am ehesten SMTP-Auth zum versenden benutzen, wenn das angeboten wird (ist nicht so schwierig, benutze mal die Suchfunktion; bei einem einfachen Setup reicht sogar Yast).
Beachte dabei aber, dass du dann SMTP-Auth für den smtp-Teil anstellst (der schickt die Mail zum Upstream-Server), nicht für den smtpd (der mag lieber lokale Mails engegennehmen)!

Grüsse!!
 
Vielen Dank für die schnelle Antwort:

zu youdonotexist:
Ich hatte die ganze Geschichte schon mal unter WindowsXP laufen. Da musste ich für das PHPKit auch das Programm SMTPAuth benutzen. Doch wie mach ich das unter Linux. Bin Linux Anfänger. Die Funktion SMTP-Auth ist bereits aktiviert und zwar wie 1&1 es beschreibt: http://faq.1und1.de/hosting/mail_ums/clients/4.html



zu Geier0815:
Wie stelle ich fest wie ich den Domainnamen auflöse? Ich bin halt Anfänger.


Freue mich auf Eure Antwort.

Euer Sid1968 :D
 
Sid1968 schrieb:
Ich hatte die ganze Geschichte schon mal unter WindowsXP laufen. Da musste ich für das PHPKit auch SMTPAuth benutzen. Doch wie mach ich das unter Linux. Bin Linux Anfänger.

Das ist zwar bestimmt ne FAQ, aber:

- yast/yast2 starten.
- Netzwerkdienste -> Mail Transfer Agent

- Verbindungsart ist Permanent [weiter]
- Ausgehender Mailserver: smtp.1und1.de
- Klick auf [Authentifizierung] und gib die Daten (Server, Benutzername, Passwort) an.
- Nach [OK] und [Weiter] kommt noch ein Dialog, wo es um den Empfang von Mail geht, das bezieht sich auf Fetchmail. Wenn deine Kiste nicht Mailserver für das Intranet spielt, solltest du "entfernte SMTP-Verbindungen akzeptieren" ausschalten.
- Nun noch auf [Beenden], das wars.

Und da du ja was lernen willst:

Unter der Haube passiert folgendes:
Yast erstellt eine Datei /etc/postfix/sasl_passwd und schreibt rein:
Code:
[Server] [Benutzername]:[Passwort]
Das wird abgespeichert und mit "postmap" in ein Datenbankformat überführt, dabei entsteht eine Datei sasl_auth.db (und die passenden Berechtigungen werden auch gleich gesetzt).
Nun nimmt sich Yast die /etc/postfix/main.cf vor und schreibt einige neue Zeilen rein:
Code:
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
und vielleicht noch
Code:
smtp_sasl_security_options = noanonymous
Mit dem ersten wird SASL-Auth aktiviert, im zweiten Eintrag steht, wo die Passworte herkommen, und mit den smtp_sasl_security_options können noch einige Feinheiten eingestellt werden.
Nun startet Yast noch den Postfix neu, und du freust dich, dass alles funktioniert.

So oder so ähnlich funktioniert das übrigens mit fast allen Sachen, die man per Yast einstellt.

Beim Testen und Einrichten ist es meist praktisch, wenn man in einem Terminalfenster nebenher "tail -f /var/log/mail" und/oder "tail -f /var/log/messages" laufen lässt, da sieht man immer gleich, was Sache ist.

Auch die Meldungen, die Postfix bei einem beherzten "rcpostfix restart" von sich gibt, können ganz aufschlussreich sein.

Grüsse!!
 
Danke für Deine Anleitung. So wie Du das beschreibst, war das einfacher als das, was ich vorher per Hand gemacht hatte. Ich hab meinen postfix-Server nach der HOW-TO Anleitung dieses Forums erstellt. Wie gesagt, das was Du mir geraten hast war schon alles so eingestellt.

Der Befehl "tail -f /var/log/mail" ergab wieder:

------------------------------------------------------------------------------------------------------------------------------------------------
Jun 16 18:14:26 amd2000 postfix/smtp[6870]: CB8AF6E06C: to=<dddim100@gmx.de>, re lay=smtp.1und1.de[212.227.15.167], delay=2, status=deferred (host smtp.1und1.de[ 212.227.15.167] said: 421 dns lookup failed for sender domain (in reply to MAIL FROM command))
------------------------------------------------------------------------------------------------------------------------------------------------

Der Fehler kommt wohl daher, weil ich einen dyndns.org Account benutze. (Ich habe ja eine dynamische IP, da 1&1 24 stdl. eine Zwangstrennung durchführt. Um dennoch auf meine Website zugreifen zu können, legt man bei dyndns.org einen Account an. Auch unter Windows wollte 1&1 deshalb keine localen Mailserver akzeptieren, die auf einem dyndns-Account liegen.) Ich denke, die Lösung ist das Programm SMTPAuth, da das auch unter Windows die Lösung war. Bekommt man auf http://www.pc-tools.net/unix/ für Linux.

Ich bekomme das Ding wohl kompiliert und nach /usr/sbin kopiert, nur komme ich dann nicht weiter.

PS: Für Windows sieht das so aus:

http://faq.1und1.de/access//internet_profi_faq/email_news/1.html

http://smtpauth.sourceforge.net/forum/

Also warum bin ich dann von Windows auf Linux gewechselt, wenn ich sowohl meinen Onlineshop, wie auch meine Call of Duty Clanseite laufen hatte... Na... das Linuxfieber hat mich gepackt... und über Windows brauch ich ja wohl nicht mehr viel zu sagen...


Gruss Sid1968 :roll:
 
Sid1968 schrieb:
Der Befehl "tail -f /var/log/mail" ergab wieder:
------------------------------------------------------------------------------------------------------------------------------------------------
Jun 16 18:14:26 amd2000 postfix/smtp[6870]: CB8AF6E06C: to=<dddim100@gmx.de>, re lay=smtp.1und1.de[212.227.15.167], delay=2, status=deferred (host smtp.1und1.de[ 212.227.15.167] said: 421 dns lookup failed for sender domain (in reply to MAIL FROM command))
------------------------------------------------------------------------------------------------------------------------------------------------

Offensichtlich verwendet Postfix nicht das von dir eingerichtete SMTP-Auth, sonst gäbs ne andere Fehlermeldung.

Zeige doch mal den relevanten Teil deiner /etc/postfix/main.cf ("grep -v "^#" /etc/postfix/main.cf | grep -v ^$"), sowie die Berechtigungen auf die beteiligten sasl-Dateien ("ls -l /etc/postfix/sasl*").

Sid1968 schrieb:
Ich denke, die Lösung ist das Programm SMTPAuth, da das auch unter Windows die Lösung war. Bekommt man auf http://www.pc-tools.net/unix/ für Linux.
Also, a) kenne ich das nicht und b) kann Postfix das von sich aus. Warum sollte man da noch ne weitere Fehlerquelle dazwischenbasteln?

Grüsse!!
 
grep -v "^#" /etc/postfix/main.cf | grep -v ^$
--------------------------------------------------------------------------------------------------------------------------------------------
command_directory = /usr/sbin
daemon_directory = /usr/lib/postfix
unknown_local_recipient_reject_code = 550
debug_peer_level = 2
debugger_command =
PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
xxgdb = $daemon_directory/$process_name $process_id & sleep 5
sendmail_path = /usr/sbin/sendmail
newaliases_path = /usr/bin/newaliases
mailq_path = /usr/bin/mailq
setgid_group = maildrop
html_directory = /usr/share/doc/packages/postfix/html
manpage_directory = /usr/share/man
sample_directory = /usr/share/doc/packages/postfix/samples
readme_directory = /usr/share/doc/packages/postfix/README_FILES
biff = no
mail_spool_directory = /var/mail
canonical_maps = hash:/etc/postfix/canonical
virtual_maps = hash:/etc/postfix/virtual
relocated_maps = hash:/etc/postfix/relocated
transport_maps = hash:/etc/postfix/transport
sender_canonical_maps = hash:/etc/postfix/sender_canonical
masquerade_classes = envelope_sender, header_sender, header_recipient
myhostname = amd2000
mydomain = ihme-handel.de
mydestination = $myhostname,$mydomain, localhost, localhost.$mydomain
mynetworks = 192.168.178.20/24, 127.0.0.1/8
smtpd_banner = $myhostname ESMTP
proxy_interfaces = 192.168.178.1
program_directory = /usr/lib/postfix
inet_interfaces = all
masquerade_domains = $mydomain
masquerade_exceptions = root
defer_transports =
disable_dns_lookups = no
relayhost = smtp.1und1.de
mailbox_command =
mailbox_transport =
strict_rfc821_envelopes = no
smtp_use_tls = no
smtp_sasl_auth_enable = yes
smtp_sasl_security_options = noanonymous
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtpd_sasl_auth_enable = yes
smtpd_tls_auth_only = no
smtpd_client_restrictions =
smtpd_helo_required = no
smtpd_helo_restrictions =
smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination
smtpd_use_tls = no
broken_sasl_auth_clients = yes
smtpd_junk_command_limit = 100
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $myhostname
smtpd_recipient_limit = 50
smtpd_timeout = 300s
alias_maps = hash:/etc/aliases
bounce_size_limit = 100000
message_size_limit = 10000000
mailbox_size_limit = 200000000
queue_minfree = 100000000
append_dot_mydomain = no
queue_directory = /var/spool/postfix
mail_owner = postfix
double_bounce_sender = 3394-927@online.de
empty_address_recipient = 3394-927@online.de
relay_domains = $mydestination
relay_domains_reject_code = 554
------------------------------------------------------------------------------------------------------------------------------------------


ls -l /etc/postfix/sasl*
------------------------------------------------------------------------------------------------------------------------------------------
ls -l /etc/postfix/sasl*
-rw------- 1 root root 204 2006-06-16 18:12 /etc/postfix/sasl_passwd
-rw------- 1 root root 12288 2006-06-16 18:12 /etc/postfix/sasl_passwd.db
-rw------- 1 root root 204 2006-05-24 09:11 /etc/postfix/sasl_passwd.YaST2.save
------------------------------------------------------------------------------------------------------------------------------------------

Kannst Du damit was anfangen?

Gruß Sid1968 :p
 
Sid1968 schrieb:
Kannst Du damit was anfangen?

Diese Einstellungen und die Berechtigungen auf die Passwort-Dateien sehen soweit gut aus (Verwendest du wirklich auch SMTP-Auth, um Clients zu authentifizieren?).

Da auf der 1und1-Einrichtungsseite andere Paketnamen genannt werden:

"rpm -qa | grep sasl" sollte ergeben:
Code:
cyrus-sasl-digestmd5-2.1.21-18
cyrus-sasl-saslauthd-2.1.21-18.3
cyrus-sasl-2.1.21-18
cyrus-sasl-crammd5-2.1.21-18
cyrus-sasl-plain-2.1.21-18

Du hast den Postfix ja schon mal neu gestartet, oder? Ansonsten kann man nur noch hoffen, dass Postfix beim Starten irgendwelche sinnvolle Meldungen ins Log hustet.

Grüsse!!
 
rpm -qa | grep sasl
-------------------------------------------------------
cyrus-sasl-2.1.21-18
cyrus-sasl-crammd5-2.1.21-18
cyrus-sasl-devel-2.1.21-18
cyrus-sasl-saslauthd-2.1.21-18.3
cyrus-sasl-plain-2.1.21-18
cyrus-sasl-digestmd5-2.1.21-18
-------------------------------------------------------

Du schreibst: Verwendest du wirklich auch SMTP-Auth, um Clients zu authentifizieren?

Wie stell ich das fest?

Gruß Sid1968
 
Hallo meine Lieben!

Ich konnte das Problem in einem anderen Thread lösen:

http://www.linux-club.de/ftopic62718.html


Gruß
Euer Sid1968 :D
 
Status
Für weitere Antworten geschlossen.
Oben