Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
Linux/UNIX Linuxverfechter finden hier Weggefährten.

PHP mail() schickt keine Mails - sendmail config?!

Diskussion: PHP mail() schickt keine Mails - sendmail config?! im Forum Linux/UNIX, in der Kategorie Operating Systems; Anzeige Servus! Nachdem ich jetzt jede Menge Tutorials/Anleitung/Troubleshootings durchforstet habe wie man sendmail zum laufen bringt bin ich mit meinem ...

Like Tree1Likes

Antwort
Alt 25.09.11, 22:03   #1 (permalink)
 
Registriert seit: 11.07.05
RemoteC Leistung: Facit NTK
RemoteC eine Nachricht über ICQ schicken
Likes: 0
Standard PHP mail() schickt keine Mails - sendmail config?!

Anzeige

Servus!

Nachdem ich jetzt jede Menge Tutorials/Anleitung/Troubleshootings durchforstet habe wie man sendmail zum laufen bringt bin ich mit meinem Latein am Ende und hoffe, dass ihr mir helfen könnt.

PHP macht mir bei mail() keine Fehlermeldung, auch nicht in den logs.

In /var/log/mail steht für jedes mal wenn ich das PHP-Testskript aufrufe etwas in der Art (zur Anonymisierung habe ich meine Domain entfernt, E-Mail sollte an eine GMX-Adresse gehen)

Zitat:
Zitat von var/log/mail
Sep 25 21:18:15 webserver postfix/pickup[32488]: 479C26224: uid=30 from=<website@mydomain.at>
Sep 25 21:18:15 webserver postfix/cleanup[1611]: 479C26224: message-id=<20110925191815.479C26224@webserver.mydomain.LOCAL>
Sep 25 21:18:15 webserver postfix/qmgr[3962]: 479C26224: from=<website@mydomain.at>, size=369, nrcpt=1 (queue active)
Sep 25 21:18:15 webserver postfix/smtp[1476]: connect to mx1.gmx.net[213.165.64.102]: Network is unreachable (port 25)
Sep 25 21:18:15 webserver postfix/smtp[1476]: connect to mx0.gmx.net[213.165.64.100]: Network is unreachable (port 25)
Sep 25 21:18:15 webserver postfix/smtp[1476]: 479C26224: to=<adresse-existiert@gmx.at>, relay=none, delay=0.06, delays=0.06/0/0/0, dsn=4.4.1, status=deferred (connect to mx0.gmx.net[213.165.64.100]: Network is unreachable)
Zur Info: webserver.mydomain.LOCAL ist der lokale Servername

Also habe ich mich einmal umgeschaut ob es am Port 25 liegt, im Log der Firewall ist nichts zu sehen und ein telnet localhost 25 bringt folgendes Ergebnis
Zitat:
Zitat von telnet
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 webserver.mydomain.LOCAL ESMTP Postfix
Sollte da nicht eigentlich "ESMTP sendmail ..." stehen? Brauche ich das überhaupt, ich will ja keine E-Mails empfangen sondern nur senden.

php.ini ist wie folgt konfiguriert
Zitat:
Zitat von php.ini
sendmail_path = /usr/sbin/sendmail -t -i -F website@mydomain.at -f website@mydomain.at
sendmail_from = website@mydomain.at
Diese Konfiguration habe ich vom PHP-Manual (direkter Link) - Das entspricht meiner Situation: Postfix (lt. logs & telnet) und der Server steht 'hinter' einem ISA-Server als Firewall. Oder ist (wieder mal ...) der ISA-Server an allem Schuld und der Linux-Webserver ohnehin richtig konfiguriert? Wie könnte ich das Testen bzw. was wäre am ISA-Server zu ändern?

lg
RemoteC ist offline   Mit Zitat antworten
Alt 25.09.11, 22:35   #2 (permalink)
Moderator
 
Benutzerbild von bitmuncher
 
Registriert seit: 30.09.06
bitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcore
Likes: 442
Standard

Zum Senden mit der mail()-Funktion brauchst du auf jeden Fall einen SMTP-Server. Bei dir läuft aber offenbar nicht sendmail sondern Postfix. Die Meldung

Code:
Network is unreachable
weist darauf hin, dass der Mailserver mxN.gmx.net nicht erreichen kann. Sofern daran keiner Firewall Schuld ist, würde ich darauf tippen, dass dein Postfix-Server nur auf dem Loopback-Device lauscht. Von dort kann er natürlich keine Daten an einen externen Host senden. Um das zu ändern solltest du 'inet_interfaces' auf 'all' setzen und mit der Firewall den eingehenden Traffic auf Port 25 blocken, so dass du kein offenes Mailrelay eröffnest.

Code:
iptables -A INPUT -p tcp --dport 25 -j DROP
__________________
Mein Blog - Mein Job - Diaspora

Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund.

Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+
bitmuncher ist gerade online   Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 26.09.11, 00:20   #3 (permalink)
Themenstarter
 
Registriert seit: 11.07.05
RemoteC Leistung: Facit NTK
RemoteC eine Nachricht über ICQ schicken
Likes: 0
Standard

inet_interfaces war auf localhost (/etc/postfix/main.cf), habe das jetzt auf all geändert und die Firewall mit iptables wie von dir gepostet eingestellt.

Mail wird immer noch nicht verschickt.

In der /var/log/mail steht immer noch Sep 25 23:52:23 webserver postfix/smtp[5130]: connect to mx0.gmx.net[213.165.64.100]: Network is unreachable (port 25)

In der mailq steht auch ein "connect to [..] Network is unreachable" für alle Testmails die ich per PHP-Skript oder Konsole geschrieben habe.

Wenn ich mit mailx eine E-Mail an meine GMX-Adresse schreibe erscheinen nach ca. 40s die selben Fehlmeldungen. Selbes Spiel wenn ich "/usr/lib/sendmail -v adresse@gmx.at < /etc/motd" mache :-\

Ein mailx an root funktioniert aber, zumindest habe ich dann eine E-Mail mit entsprechenden Subject und Text in /var/mail/root (genauso wie Meldungen über die nicht zugestellten E-Mails).

Geändert von RemoteC (26.09.11 um 00:23 Uhr)
RemoteC ist offline   Mit Zitat antworten
Alt 26.09.11, 00:51   #4 (permalink)
Moderator
 
Benutzerbild von bitmuncher
 
Registriert seit: 30.09.06
bitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcore
Likes: 442
Standard

Was sagt denn deine Postfix-Einstellung für 'mynetworks'?
__________________
Mein Blog - Mein Job - Diaspora

Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund.

Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+
bitmuncher ist gerade online   Mit Zitat antworten
Alt 26.09.11, 10:24   #5 (permalink)
 
Registriert seit: 12.08.10
mime Leistung: Pentium Imime Leistung: Pentium I
Likes: 30
Standard

Zitat:
Zitat von bitmuncher Beitrag anzeigen
Code:
Network is unreachable
weist darauf hin, dass der Mailserver mxN.gmx.net nicht erreichen kann. Sofern daran keiner Firewall Schuld ist, würde ich darauf tippen, dass dein Postfix-Server nur auf dem Loopback-Device lauscht. Von dort kann er natürlich keine Daten an einen externen Host senden.
Was?

Code:
kira:/home/mime # netstat -tlnp | grep 25     
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      22287/master
Natürlich kann ich damit Mails an extern schicken (In diesem Fall werden alle Mails an einen Smarthost weiter gegeben). "man route"

@RemoteC
Zitat:
der Server steht 'hinter' einem ISA-Server als Firewall. Oder ist (wieder mal ...) der ISA-Server an allem Schuld
Würde ich als wahrscheinlichste Ursache sehen. Der wird eventuell ausgehenden Traffic auf Port 25 nicht erlauben.

HTH

Micha
__________________
http://www.openvas.org
mime ist offline   Mit Zitat antworten
Alt 26.09.11, 10:29   #6 (permalink)
Moderator
 
Benutzerbild von bitmuncher
 
Registriert seit: 30.09.06
bitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcore
Likes: 442
Standard

@mime: Das ganze über eine Route zu lösen, ist natürlich auch eine Möglichkeit. Viele Wege führen nach Rom.
__________________
Mein Blog - Mein Job - Diaspora

Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund.

Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+
bitmuncher ist gerade online   Mit Zitat antworten
Alt 26.09.11, 10:33   #7 (permalink)
 
Registriert seit: 12.08.10
mime Leistung: Pentium Imime Leistung: Pentium I
Likes: 30
Standard

Zitat:
Zitat von bitmuncher Beitrag anzeigen
@mime: Das ganze über eine Route zu lösen, ist natürlich auch eine Möglichkeit. Viele Wege führen nach Rom.
Du hast mich falsch verstanden. Dazu muss nicht extra eine Route gesetzt werden. Deine default Route gilt auch für das loopback. Auch das schickt Pakete, die nicht in "sein" Netz gehören, an das default Gateway.

Micha
__________________
http://www.openvas.org
mime ist offline   Mit Zitat antworten
Alt 26.09.11, 11:31   #8 (permalink)
Moderator
 
Benutzerbild von bitmuncher
 
Registriert seit: 30.09.06
bitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcore
Likes: 442
Standard

Wenn sowas über das Loopback möglich ist, kann man es nicht mehr als vertrauenswürdiges Device einstufen. Wenn bei dir also die Route wirklich so eingestellt ist, solltest du das Loopback genauso behandeln wie jedes andere Netzwerk-Interface. Ich würde sowas jedenfalls bei einem Server als Sicherheitsschwäche einstufen. Der Gateway für localhost sollte immer auf localhost gesetzt sein.

Nachtrag: Hab das mal auf einem Rechner getestet. Ergebnis: Die Default-Route greift nicht für das Loopback-Device.

Code:
root@testmachine4:/home/bitmuncher# route
Kernel-IP-Routentabelle
Ziel            Router          Genmask         Flags Metric Ref    Use Iface
123.123.123.0    *               255.255.255.0   U     0      0        0 eth0
default         123.123.123.1    0.0.0.0         UG    0      0        0 eth0
root@testmachine4:/home/bitmuncher# ping -I lo web.de
PING web.de (213.165.64.75) from 81.169.134.15 lo: 56(84) bytes of data.
^C
--- web.de ping statistics ---
2 packets transmitted, 0 received, 100% packet loss, time 1014ms
root@testmachine4:/home/bitmuncher# ping -I eth0 web.de
PING web.de (213.165.64.75) from 81.169.134.15 eth0: 56(84) bytes of data.
64 bytes from web.de (213.165.64.75): icmp_seq=1 ttl=57 time=15.5 ms
64 bytes from web.de (213.165.64.75): icmp_seq=2 ttl=57 time=15.8 ms
^C
--- web.de ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1003ms
rtt min/avg/max/mdev = 15.569/15.716/15.863/0.147 ms
__________________
Mein Blog - Mein Job - Diaspora

Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund.

Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+
bitmuncher ist gerade online   Mit Zitat antworten
Alt 26.09.11, 12:41   #9 (permalink)
 
Registriert seit: 12.08.10
mime Leistung: Pentium Imime Leistung: Pentium I
Likes: 30
Standard

Zitat:
Zitat von bitmuncher Beitrag anzeigen
Wenn sowas über das Loopback möglich ist, kann man es nicht mehr als vertrauenswürdiges Device einstufen.
Es geht um ausgehenden Traffic.

Zitat:
Ich würde sowas jedenfalls bei einem Server als Sicherheitsschwäche einstufen.
Warum?

Zitat:
Der Gateway für localhost sollte immer auf localhost gesetzt sein.
Ohh...wie denn?

Zitat:
Code:
root@testmachine4:/home/bitmuncher# ping -I lo web.de
Gut...ich lese dir "man ping" mal vor...

Zitat:
Zitat von man ping
-I interface address
Set source address to specified interface address.
Du solltest dich also wirklich nicht wundern, dass du darauf keine Antwort bekommst. Damit setzt du die SRC-Addresse und nicht das ausgehende Interface.

Micha
__________________
http://www.openvas.org
mime ist offline   Mit Zitat antworten
Alt 26.09.11, 16:00   #10 (permalink)
Themenstarter
 
Registriert seit: 11.07.05
RemoteC Leistung: Facit NTK
RemoteC eine Nachricht über ICQ schicken
Likes: 0
Standard

Zitat:
Zitat von bitmuncher Beitrag anzeigen
Was sagt denn deine Postfix-Einstellung für 'mynetworks'?
mynetworks ist auskommentiert, sprich default Einstellung und die ist mynetworks_style = subnet
RemoteC ist offline   Mit Zitat antworten
Alt 26.09.11, 16:02   #11 (permalink)
Moderator
 
Benutzerbild von bitmuncher
 
Registriert seit: 30.09.06
bitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcore
Likes: 442
Standard

Zitat:
Zitat von mime Beitrag anzeigen
Gut...ich lese dir "man ping" mal vor...
Dann lese ich einfach mal weiter...

Code:
       -I interface address
              Set  source  address  to  specified  interface  address. Argument may be numeric IP
              address or name of device. When pinging IPv6  link-local  address  this  option  is
              required.
Zum Warum sollte das Loopback nicht nach aussen connecten können: Es erspart einem die Überwachung von Traffic, der garantiert vertrauenswürdig ist, was je nach IDS und Komplexität der Regelsätze jede Menge Rechenleistung spart. Ausserdem sollte ein an localhost gebundener Service nicht durch einen eingeschleusten Bot missbrauchbar sein (z.B. SMTP-Service).

@RemoteC: mynetworks sollte immer auf die IPs gesetzt sein, von denen "trusted clients" kommen. Also empfiehlt es sich hier localhost (soweit ich mich erinnere ist das der Default-Wert) sowie die IP-Adressen der Netzwerk-Interface einzutragen.
__________________
Mein Blog - Mein Job - Diaspora

Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund.

Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+
bitmuncher ist gerade online   Mit Zitat antworten
Alt 26.09.11, 17:04   #12 (permalink)
Themenstarter
 
Registriert seit: 11.07.05
RemoteC Leistung: Facit NTK
RemoteC eine Nachricht über ICQ schicken
Likes: 0
Standard

Schön langsam steig ich aus, könnte auch daran liegen dass nach stundenlanger Fehlersuche meine Motivation noch weiter zu recherchieren schwindet.

1.) War nun das
iptables -A INPUT -p tcp --dport 25 -j DROP
unnötig?

2.) Meinst du mit Netzwerk-Interfaces den ISA-Server? Das ist ja der einzige Server mit dem der Webserver über SMTP kommunizieren soll.

3.) Muss die E-Mail Adresse, die ich als "from" angebe überhaupt existieren? Wenn ja: Muss die am Webserver konfiguriert sein oder kann das eine x-beliebige E-Mail Adresse sein?

4.) Ich glaub immer mehr, dass der ISA-Server einfach keine Kommunikation des Webservers auf Port 25 zulässt, es gibt in dem Netzwerk auch einen eigenen Mailserver und der wird wohl der einzige sein, dem Port 25 geöffnet ist.
RemoteC ist offline   Mit Zitat antworten
Alt 26.09.11, 17:18   #13 (permalink)
 
Registriert seit: 12.08.10
mime Leistung: Pentium Imime Leistung: Pentium I
Likes: 30
Standard

Zitat:
Zitat von bitmuncher Beitrag anzeigen
Dann lese ich einfach mal weiter...

Code:
       -I interface address
              Set  source  address  to  specified  interface  address. Argument may be numeric IP
              address or name of device. When pinging IPv6  link-local  address  this  option  is
              required.
Ja, wenn du ein device angibst, dann holt er sich die Addresse vom device. ping benutzt nicht das mit "-I" angegebene als "outgoing device" sondern als SRC-Address.

Zitat:
Zum Warum sollte das Loopback nicht nach aussen connecten können: Es erspart einem die Überwachung von Traffic, der garantiert vertrauenswürdig ist
Das Loopback conneted nicht nach draußen. Der Traffic wird lokal auf das entsprechende, für diese route zuständige, device "geroutet".

Micha
__________________
http://www.openvas.org
mime ist offline   Mit Zitat antworten
Alt 26.09.11, 17:22   #14 (permalink)
 
Registriert seit: 12.08.10
mime Leistung: Pentium Imime Leistung: Pentium I
Likes: 30
Standard

Zitat:
Zitat von RemoteC Beitrag anzeigen
4.) Ich glaub immer mehr, dass der ISA-Server einfach keine Kommunikation des Webservers auf Port 25 zulässt, es gibt in dem Netzwerk auch einen eigenen Mailserver und der wird wohl der einzige sein, dem Port 25 geöffnet ist.
Code:
mime@null:~% telnet mx0.gmx.net 25
Trying 213.165.64.100...
Connected to mx0.gmx.net.
Escape character is '^]'.
220 mx0.gmx.net GMX Mailservices ESMTP {mx084}
und bei dir?

http://blog.devnull.ch/2009/05/12/po...uthentication/

Micha
__________________
http://www.openvas.org
mime ist offline   Mit Zitat antworten
Alt 26.09.11, 22:18   #15 (permalink)
Themenstarter
 
Registriert seit: 11.07.05
RemoteC Leistung: Facit NTK
RemoteC eine Nachricht über ICQ schicken
Likes: 0
Standard

Code:
Trying 213.165.64.100...
telnet: connect to address 213.165.64.100: Network is unreachable
Als Smarthost soll ich den (Windows) Mail-Server einstellen? Von dem hab ich leider keine Zugangsdaten, andere Baustelle
RemoteC ist offline   Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Operating Systems » Linux/UNIX » PHP mail() schickt keine Mails - sendmail config?!
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Thunderbird lädt keine mails und hängt sich auf! black3agle Die Problemzone 1 15.01.08 09:24
sendmail mit parametern WhiteDragon Linux/UNIX 6 26.12.04 19:35
sendmail Xploit Stromer Code Kitchen 4 04.09.04 11:23
sendmail exploit Stromer (In)security allgemein 4 14.02.04 21:28
E-mailschutz defekt=Keine mails mehr empfangen?? MrSwissi (In)security allgemein 7 04.12.01 09:05


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61