ich hab hier nen Problemchen, und zwar geht es um einen Windows Server 2008, der zwar unter virtualisierung läuft, aber das spielt ja eigentlich keine Rolle.
PHP kann ich eigentlich als Fehlerquelle ausschließen, die E-Mails landen im Ordner
C:\inetpub\mailroot\Queue
inkl. E-Mail Header usw, wo Absender, Empfänger usw ersichtlich wird.
Also kann PHP ja schonmal den Sendmail Server persönlich "erwischen"..
Doch das Problem ist, die gehen nicht an die jeweiligen empfänger, in diesem Fall testweise z.b an mir raus, da der Server für den Communitybetrieb dienen soll.
Testweise habe ich die Windows Firewall gänzlich deaktiviert und den Vorgang dann nochmal durchgeführt. Trotzdem bekomme ich keine Mails raus.
Der Server ist öffentlich im Internet erreichbar und 1 GBit/s sind sicher mehr als genug um E-Mails ins Internet zu verschicken.
Hallo,
Vorab, ich benutze den IIS7 Internetinformationsdienste 7 Webserver.
Den eigenen SMTP Server über den Server Manager ebenfalls.
Der Server ist frisch aufgesetzt und es hat seit der Installation noch nicht funktioniert darüber E-Mails zu versenden.
Was PHP einzig und alleine zu meckern hat ist folgendes:
Code:
[06-Mar-2013 17:51:36 Europe/Belgrade] PHP Notice: Undefined variable: header in D:\s1\pages\lostpw.php on line 74
Doch das behindert den E-Mail Versand ja nicht. Sonst hätte ich ja nicht solche ähnlichen E-Mails im Ordner Queue.. und auf einen anderen Server läuft das gleiche (exakt gleiche!) Script und der verschickt wunderbar die Mails.
In diesem Fall wird die Mail Funktion wie man auch evtl erkennt für vergessene Passwörter benutzt, um Usern das Passwort erneut zuzusenden.
Darauf soll auch ein Forum laufen, auf dem man sich per E-Mail immer freischalten muss und da ist dann der Mailversand auch enorm wichtig.
Wenn ich die E-Mails im Ordner Queue per Editor öffne und das dort drin stehende Passwort benutze, komme ich damit auch rein..
Somit kann ich also ausschließen, dass das im Queue Ordner nix altes ist
Hier nen Screen über den Bildschirm des Windows Servers: MOD: Bitte CODE Tags nutzen und Bilder immer als Anhang veröffentlichen. Danke!
Grüße,
EmsBahn
Die SMTP Serverlogs sagen folgendes:
Diese 2 Tage die da aufgezeichnet sind, da hatte ich zunächst natürlich versucht das Problem selbst zu lösen, bevor ich hier mal nachfrage..
Wenn ich die E-Mails im Ordner Queue per Editor öffne und das dort drin stehende Passwort benutze, komme ich damit auch rein..
Somit kann ich also ausschließen, dass das im Queue Ordner nix altes ist
dann verstehe ich das so, das dass E-Mails sind die vom Script an den SMTP zum Versand übergeben werden sollen, korrekt?
Hast du die Firwall nur abgeschaltet oder auch den Dienst deaktiviert? In der Vergangenheit ist es mir schon mal untergekommen das abschalten alleine nicht gerreicht hat.
Ist denn der SMTP Port offen? Von den Log sieht es irgendwie so aus als wenn der Mailversand initiiert wird und dann abgebrochen wird. Einzig bei der 185er IP scheint tatsächlich eine Mail rausgegangen zu sein. Oder ist das die eigene Server IP?
Ich hab den Windows eigenen SMTP Server ehrlich gesagt noch nie verwendet (weil externe Mailserver vorhanden). Allerdings hab ich ein paar mal den hMailer und den Pegasus/MercuryMail Server schon ein paar mal für ein Testsetup hergenommen und das Logging dort ist schon etwas besser.
Ich muss mir mal den Windows eigenen SMTP Dienst mal morgen installieren in meiner VM und mir das Teil näher ansehen. Auch um zu testen was das Teil so alles mitloggt.
dann verstehe ich das so, das dass E-Mails sind die vom Script an den SMTP zum Versand übergeben werden sollen, korrekt?
Genau so isses.
Hast du die Firwall nur abgeschaltet oder auch den Dienst deaktiviert? In der Vergangenheit ist es mir schon mal untergekommen das abschalten alleine nicht gerreicht hat.
[COLOR="Red"]Durch das Abschalten der Firewall wird ja der Server dann ganz ungeschützt. Ich hatte da mit Mysql auch das Problem, dass ich von aussen nicht dran kam. Nach dem Abschalten war der Port dann offen. Beim Aktivieren lediglich neu konfiguriert, dann ging auch 3306 von aussen.
Inwiefern meinst du den Dienst deaktivieren? Unter msconfig auf Dienste?/COLOR]
Ich werd nachher mal schauen, ob sich damit dann was tut. Letzendlich ist es ja egal, ob der windowseigene SMTP Server seinen Dienst macht oder ein externes Programm auf dem Server. PHP kann man im IIS ja dann recht einfach darauf einstellen, diesen zu benutzen.
Ist denn der SMTP Port offen? Von den Log sieht es irgendwie so aus als wenn der Mailversand initiiert wird und dann abgebrochen wird. Einzig bei der 185er IP scheint tatsächlich eine Mail rausgegangen zu sein. Oder ist das die eigene Server IP?
Die 185.5.173.178 ist die Servereigene IP, worunter auch der Webserver errreichbar ist. ich hatte da mit der Konfiguration gespielt.
Laut Firewall ist der Port 25 offen und zudem hatte ich die Firewall über Windows Sicherheit um diese auszuschließen zudem abgestellt.
Ich hab den Windows eigenen SMTP Server ehrlich gesagt noch nie verwendet (weil externe Mailserver vorhanden). Allerdings hab ich ein paar mal den hMailer und den Pegasus/MercuryMail Server schon ein paar mal für ein Testsetup hergenommen und das Logging dort ist schon etwas besser.
Ich werd mir das mal installieren und schauen was das dann für Sachen bringt. (: Danke erstmal für die Tipps.
Ich meld mich dann wieder.
Ich muss mir mal den Windows eigenen SMTP Dienst mal morgen installieren in meiner VM und mir das Teil näher ansehen. Auch um zu testen was das Teil so alles mitloggt.
gruss,
delta544
Huhu,
Antworten von mir sind in Rot,
Grüße,
EmsBahn
Edit: ich habe mir das hMail mal installiert... pMail ist lediglich fürs Abrufen der Mails, hab ich dann gesehen, aber dazu kam ich nicht, weil ich das mit dem Versenden der E-Mails über hMail noch nicht hinkriege. Habe mittlerweile über msconfig zeitweise die Firewall aus den Diensten mit rausgenommen, daran kann es also definitiv dann nicht liegen, da damit definitiv alle Ports offen waren.
Ich hab die Bezweiflung bei der Konfiguration nen Fehler drin zu haben, da ich mich mit der materie e-mail server bisher das erste mal beschäftige.
Sonst hatte ich immer nur mit anderen Sachen zu tun Mysql PHP Server, Gameserver, die aber alle normal laufen, nur das mit den E-Mails leider nicht.
Huhu,
Edit: ich habe mir das hMail mal installiert... pMail ist lediglich fürs Abrufen der Mails, hab ich dann gesehen, aber dazu kam ich nicht, weil ich das mit dem Versenden der E-Mails über hMail noch nicht hinkrie die Lösung zu finden,
EmsBahn
Der Pegasus Mailserver heist Mercury Mailer bzw. Mercury Mail Transport System.
Ich habe hMailer hier in meiner Test-Umgebung installiert und die 2008 Hosts Datei ein wenig bearbeitet um die Mails auf eine ander lokale VM zu leiten.
Komischerweise hab ich bei hMailer trotz Aktiver Logging Funktion keine Logs bekommen, per WireShark trace aber sehr wohl. Hab hier eine freie Forumssoftware auf den IIS+PHP gefrickelt. Das muss ich mir morgen sonst noch mal ansehen. (http://fudforum.org/forum/)
Evtl. sonst einfach mal ein WireShark trace machen.
Mit Abschalten der Firewall war eigentlich gemeint erst per 'wf.msc' die Firewall auf 'Off' stellen um dann anschließend per 'services.msc' den Windows Firewall Service abzuschalten.
Des weiteren bietet der Windows eigene SMTP Server eine Logging Funktion, diese vielleicht mal auch anschalten und schauen was passiert.
Ich kenn mich jetzt nich so super mit PHP aus, aber kann es sein das man die 'Mail' Funktion als Modul aktivieren muss innerhalb der PHP.ini????
Ich habe nun in der PHP.ini den PC Namen anstelle der IP angegeben, bei den Log Protokollen habe ich mal ALLES eingeschaltet, was geht.
Software: Windowseigener SMTP Server:
Laut SMTP Fehlercode kann er nicht verbinden oder was auch immer damit jetzt genau gemeint ist.
Ich bin mir jetzt nicht sicher was ich tun muss, um die Verbindung herstellen zu können..
Ich komme auf dem Server ansich drauf, sonst käme ich ja auch nicht mit dem Remotedesktop dran.. Internet Verbindung hat er auch.. Ich weiss grade ehrlich nicht, was ihm an Einstellungen fehlt, damit das mit den Mails funktioniert..
Dein Server unternimmt nicht mal den Versuch, sich bei ewetel anzumelden.
Hast Du Login und Paßwort korrekt eingetragen?
Bitte nicht "integrierte Windows-Authentifizierung" einschalten, ewetel hat sicherlich keinen Windows-Mailserver.
Dein Server unternimmt nicht mal den Versuch, sich bei ewetel anzumelden.
Hast Du Login und Paßwort korrekt eingetragen?
Bitte nicht "integrierte Windows-Authentifizierung" einschalten, ewetel hat sicherlich keinen Windows-Mailserver.
Ich habe doch nicht vor von ewetel aus zu versenden, das ist der Mailserver, zudem er was schicken soll.. Weil das Postfach auf ewetel / osnatel läuft.
Es geht mir ja darum was daran falsch ist, damit er die E-mails an andere Mailserver ausliefert.
um von einem Windows Server 2008 System SMTP Mails versenden zu können, muss zusätzlich zum IIS 7.5 noch der IIS 6 installiert sein. Im IIS >= 7 wird die SMTP-Funktionalität nicht mehr direkt unterstützt.
1. In IIS 7.5: SMTP E-mail konfigurieren:
Deliver e-mail to SMTP server: localhost
Port: 25
Authentication settings: not required
2. In IIS 6: SMTP Virtual Server starten
Properties → Access → Relay → „Only the list below“ → 127.0.0.1 Granted,
„Allow all computers...“ unchecked
(Dies dient der Absicherung, so dass nur Mails von lokal versendet werden können.)
3. Start → Computer Management → Services: Simple Mail Transfer Protocol Service auf Automatic stellen (sonst steht nach Reboot kein SMTP zur Verfügung)
4. dem verwendeten Applicationpool ggf. Schreibrechte im Verzeichnis \inetpub\mailroot\Pickup\ gewähren
5. ins Mailversandscript (*aspx) folgendes aufnehmen: SmtpMail.SmtpServer = "localhost"
Habe das Problem behoben, habe jetzt einen meiner FreeBSD Server geschnappt und da Sendmail so eingestellt, dass er den Windows-Server auch erlaubt E-Mails zu verschicken.
Trotzdem möchte ich die Beteiligung von Serversupportforum Mitgliedern nicht unbedankt lassen und mich dafür bedanken.
Grüße,
EmsBahn
Zitat:
Zitat von Stephen8
Ich hab mir ergänzend noch diese Notizen gemacht:
1. In IIS 7.5: SMTP E-mail konfigurieren:
Deliver e-mail to SMTP server: localhost
Port: 25
Authentication settings: not required Exakt so eingestellt.
2. In IIS 6: SMTP Virtual Server starten
Properties → Access → Relay → „Only the list below“ → 127.0.0.1 Granted,
„Allow all computers...“ unchecked
(Dies dient der Absicherung, so dass nur Mails von lokal versendet werden können.) ist ebenfalls so eingestellt
Der Webserver sitzt lokal und auch der SMTP auf dem gleichen Host.
3. Start → Computer Management → Services: Simple Mail Transfer Protocol Service auf Automatic stellen (sonst steht nach Reboot kein SMTP zur Verfügung) Unrelevant wenn man es noch nicht korrekt am laufen hat. Wenns läuft wichtig, damit wie schon gesagt beim neustart das Ding wieder läuft.
4. dem verwendeten Applicationpool ggf. Schreibrechte im Verzeichnis \inetpub\mailroot\Pickup\ gewähren
Wird mit Administrator ausgeführt.
5. ins Mailversandscript (*aspx) folgendes aufnehmen: SmtpMail.SmtpServer = "localhost"
Sorry aber ich bin nicht allwissend. Was ist damit jetzt gemeint?
Viel Erfolg!
SMTP Server wie oben beschrieben über den Servermanager ist installiert.
Am beigelegten Screenshot hab ichs mal gezeigt, so hab ichs nun verstanden, dass ich den brauche sowie den IIS7 der eben Webserver usw übernimmt.
Ich hab hier noch ein Logfile frisch ausgegraben:
Mir wird da was verweigert, aber wo harkts da genau? Die Konfiguration, dass ich selber als Host den SMTP Server connecten kann ist ja eingestellt..
Die empfänger und absenderadressen hab ich zensiert.