Blat
Wenn Sie PowerShell nutzen, dann ist "Send-Mailmessage" Bestandteil von PowerShell. Siehe auch PowerShell und Mail
Als Administrator mit intensivem Einsatz von Batchfiles sollten Sie Blat unbedingt können. Blat ist zwar nur ein Programm, um eine Mail per SMTP zu senden aber richtig eingesetzt, wird es bald zu einem unersetzlichen Werkzeug, um Informationen über Prozesse in ihrem Netzwerk zu erhalten. Jeder Administrator nutzt Skripte, geplante Tasks und andere regelmäßig automatisch ablaufende Programme, über deren Erfolg oder Misserfolg er oder die entsprechenden Verantwortlichen informiert werden sollten. Und nichts ist einfacher als eine Mail mit BLAT zu senden. Jeder Exchange 2000/2003 Server aber auch ein Exchange 5.x Server mit SMTP-Connector nimmt Mails per SMTP an und stellt diese an jeden Empfänger innerhalb ihrer Exchange Organisation zu. Damit eignet sich BLAT ganz optimal für jede Automatisierung.
Sie müssen heute nicht mehr eine EXE starten. Sowohl per VBScript als auch PowerShell ist es relativ einfach eine Mail zu versenden. Siehe auch:
Gerade PowerShell ist hier von Hause aus sehr leistungsfähig: Seit PowerShell V2 werden die Mails sogar mit dem gerade angemeldeten Benutzer authentifiziert versendet.
- Send-MailMessage
http://technet.microsoft.com/de-de/library/dd347693.aspx - Run PowerShell Script using
Windows Server 2008 “Task
Scheduler”
http://blog.pointbeyond.com/2010/04/23/run-PowerShell-script-using-windows-server-2008-task-scheduler/
Blat Download
Blat wird auf SourceForce entwickelt und hat einie eigene Homepage mit Downloadlinks zu den 32bit und 64bit EXE-Dateien
Blat Kommandozeile
BLAT wird komplett per Kommandozeile gesteuert. Die Hilfe ist mit der Option "-h" erreichbar. Die einfachste Funktion zum Versand einer Mail mit "Blat <filename> -to <recipient>" funktioniert aber nur, wenn die erforderlichen Parameter wie Mailserver und Absenderadresse vorab schon in der Registrierung hinterlegt wurden. Da ich als Administrator davon besser nicht ausgehe, ist eine längere Kommandozeile erforderlich.
blat.exe body.txt -server mailserver -to ziel@firma.de -f sender@firma.de -s Betreff
Diese einfache Zeile versendet eine Mail wobei der Inhalte der Datei "body.txt" die Nachricht darstellt. Dies ist z.B. geeignet, um eine Protokolldatei einzufügen. Wenn Sie eine Datei als Anlage beifügen möchten, dann ist die Option "-attach" einzusetzen.
Allerdings muss immer eine Quelle für die Nachricht (body) angegeben werden. Wenn Sie daher keine Platzhalterdatei anlegen möchten, dann kann Blat auch die Daten von STDIN einlesen. So kann einfach mit Hilfe von ECHO eine Mail versendet werden:
echo Testmail | blat.exe - -server mailserver -to ziel@firma.de -f sender@firma.de -s Betreff
Der einzeln stehende Bindestrich signalisiert Blat, dass die Daten von STDIN kommt. Übrigens können Sie so auch einfach manuell eine Nachricht eingeben. Das Ende der Eingabe wird durch CTRL-Z signalisiert. Zur Fehlersuche gibt es gleich mehrere optionale Parameter:
- -debug
Gibt die gesendeten und empfangenen Daten auf dem Bildschirm aus. - -superdebug
Ausgabe der übertragenen Daten in hexadezimaler Darstellung - -superdebugT
Ausgabe der übertragenen Daten im ASCII-Format
Insofern sollte es auch ihnen gelingen, eine Mail per Kommandozeile zu senden.
Anwendungsfälle
Um den Einsatz einer solchen Software etwas zu verdeutlichen, führe ich einige Beispiele auf, bei denen ich schon Blat eingesetzt habe.
- Kontrolle von automatischen Jobs
Ich kopiere jede nach bestimmte wichtige Dateien auf einen anderen Server. Blat sendet mir bei Erfolg und Misserfolg eine Mail. - Backup
Wenn Sie mit NTBACKUP ihren Server sichern, dann kann Blat am Ende das Auftragsprotokoll an Sie versenden. - Testmails
Wie in SMTPStress beschrieben ist Blat natürlich ein geniales Testtool - CGI-Script
Es gibt sicher elegantere Möglichkeiten von einem Webserver aus eine Mail zu senden, aber mit einem CGI-Skript kann auch BLAT eingesetzt werden, wenn Sie nicht extra ASP, PHP, PERL oder andere Lösungen installieren möchten. - Gruppenrichtlinien
Da SMTP meist keine Anmeldung erfordert, kann Blat auch sehr einfach in beschränken Umgebungen aufgerufen werden. Nicht immer hat ein Anwender oder das Programm Rechte auf eine Freigabe oder auf eine MAPI-Mailbox zuzugreifen. SMTP geht einfach immer.
Es bietet sich zur einfacheren Konfiguration bei solchen Skripten natürlich an, keine IP-Adressen oder echte Servernamen zu verwenden, sondern im DNS einen Alias (CNAME) einzutragen und diesen zu verwenden. Das macht es später einfacher, einen anderen Mailserver zum Empfang zu verwenden.
Weitere Links
- PowerShell und Mail
-
CMail - Windows EXE um Mails zu senden. Unterstützt auch StartTLS
https://www.inveigle.net/ - WSH - Mail per CDO Senden
- FILE - Pickup Verzeichnis
- RRDTool
- http://www.blat.net Projekthomepage
- Einsatz von BLAT in eigenen Projekten
Tools: SMTPStress Massenmail und Testmails
Produkte: PDF2SMTP PDF-Dateien per SMTP versenden -
http://www.geocities.com/toby_korn/blat/
Blat als DLL - Weiteres Tool zum Versand von SMTP per Kommandozeile
http://www.codestone.co.uk/software/docs/cssmtp/cssmtp.html -
Verschiedene Wege eine Mail zu
versenden
http://www.MSExchange.org/articles/Sending-Email-without-Client.html