Nice 2 Know IT

In der Aufgabendefinition wird ein veraltetes Feature verwendet

Sinnvolle Features einfach entfernt.


Dieser Fehler wird ausgegeben, wenn über den Aufgabenplaner eine Aufgabe / Task angelegt wird, indem als Aktion eine E-Mail versendet oder eine Meldung ausgegeben werden soll.

 

Was ist da los?

Es war einfach zu schön, dass man ab Windows Vista eine primitive Möglichkeit hatte, sein System zu überwachen und bei auftretenden Problemen eine Email versenden zu lassen. Großartiges Scripting knowhow war nicht notwendig, eine geniale Erleichterung, auch für Administratoren.

In der Aufgabendefinition wurde ein veraltetes Feature verwendet

 

Doch in Windows Server 2012 und Windows 8 wurde dieses Feature entfernt. In den Auswahloptionen beim erstellen einer Aufgabe werden diese Option mit dem Hinweis „veraltet“ angeboten. Wer diesen Hinweis ignoriert wird beim Abschluss der Aufgabe mit dem netten Hinweis „In der Aufgabendefinition wird ein veraltetes Feature verwendet“ konfrontiert.

In der Aufgabendefinition wurde ein veraltetes Feature verwendet

 

Warum das Ganze?

Bitte fragt mich das nicht. Im Technet von Microsoft kann man zwar eine Liste von veralteten Features nachlesen, die Begründung dazu, ist bei einigen Punkten aber etwas karg. Nun ja, ändern kann ich es nicht, ärgern tut es mich derweil trotzdem, da ich jetzt wieder auf irgendwelche Utilities oder doch Powershell zurückgreifen muss. In beiden Fällen muss man wieder etwas mehr Hirnschmalz investieren.

 

Was kann ich tun?

Im Netz kursieren viele Anleitungen und Tipps zu diesem Problem. Unweigerlich stößt man dabei auf kleine Tools wie Blat (Blat ist ein Windows Command Line (CLI) Utility welches Email über SMTP versendet) oder die Verwendwung von Powershell. Wer Powershell nicht mag oder noch nicht bereit ist, sich wieder mit einer neuen Syntax vertraut zu machen für den ist Blat genau das Richtige. Willst du Blat, dann guckst du hier (http://www.blat.net) wenn nicht, dann les weiter.

 

Powershell, der Alleskönner

Viele werden es kennen und nun vermissen. Ein bestimmtes Ereignis wurde Protokolliert und damit eine erneute Protokollierung sofort auffällt, hängt man eine Aufgabe an das Ereignis, welche eine Emailbenachrichtigung sendet. Der Drops ist gelutscht, jetzt musst du auf Powershell umsteigen.

 

Was ist bei Powershell zu beachten

Der Name Powershell klingt sehr mächtig und ist es auch. Mit Powershell ist alles möglich (siehe Windows Server Core Installation). Was in der Computerwelt mächtig ist, reizt natürlich auch das Interesse von unerlaubten Eindringlingen. Aus diesem Grund ist Powershell von Haus aus soweit abgesichert, dass es keine unsignierten Scripte ausführt. Um eigene Powershellscripte ausführen zu können gibt es nun 2 Möglichkeiten.

 

Signieren von eigenen Powershellscripten

Diese Funktion ist nur in einer PKI (Public Key Infrastruktur) möglich. Für eine eigene CA (Certificate Authority) brauchst du eine Stammzertifizierungsstelle (Serverrolle). Auf reinen Clientbetriebssystemen die nicht Mitglied einer Domäne sind, fällt das schon mal aus, sei denn du möchtest mehrere Hundert Euro ausgeben (das halte ich für quatsch). Powershell kann in folgenden Sicherheitsstufen ausgeführt werden:

Restricted:
Powershell kann nur interaktiv verwendet werden, keine Scriptausführung möglich.
AllSigned:
Vollständig signiert, nur von einem vertrauenswürdigen Autor erstellte Scripte können ausgeführt werden
RemoteSigned:
Heruntergeladene Scripte müssen von einem vertrauenswürdigen Autor erst signiert werden, bevor sie ausgeführt werden können
Unrestricted:
Keine Einschränkungen

 

Powershell Sicherheitspolicy ändern

Innerhalb der Powershell muss folgender Befehl ausgführt und bestätigt werden. Set-ExecutionPolicy RemoteSigned. Bitte achtet unbedingt darauf, diesen Befehl als Administrator auszuühren, sonst wird das nüscht.

In der Aufgabendefinition wurde ein veraltetes Feature verwendet

 

Empfehlung

Das Herabsetzen von Sicherheitsrichtlinien birgt das Risiko, dass schadhafter Code ausgeführt werden kann. Daher würde ich an deiner Stelle die Sicherheitsstufe maximal auf RemoteSigned herabsetzen. Dies sorgt dafür, dass alle Powershellscripte, welche du selbst erstellt hast auch ausgeführt werden können. Heruntergeladene Scripte hingegen werden nicht ausgeführt. Zu dem solltest du auch darauf achten, dass wenn du die Sicherheitsrichtlinie lockerst, kein anderer außer dir selbst den PC verwendet.

 

Powershellscript Email mit SMPT-Auth, Event-Tigger, Attachment

Das Powershellscript welches ich auch als Download gerne zur Verfügung stelle kann von euch nach Belieben angepasst werden. Ich verwende das Script folgendermaßen:

Eine Batchdatei erstellt nach seiner getanen Arbeit ein Ereignis im Eventlog (Eventcreate). An dieses Ereignis ist die Ausführung des Powershellscript als Aufgabe angehangen. Das Script sendet eine Email an die festgelegten Empfänger, liest das Ereignis, welches erstellt wurde aus und verpackte es in den Emailbody. Oben drauf gibt es die Logdatei als Emailanhang, welche der vorangegangene Batchscript erstellt hat und fertig ist der Salat.

In der Aufgabendefinition wurde ein veraltetes Feature verwendet

 

Anleitung Event per Mail benachrichtigen

Ich denke, dass klar sein sollte, wie man an das Ereignisprotokoll kommt.

In der Aufgabendefinition wurde ein veraltetes Feature verwendet

 

 

Hier einfach eindeutige Informationen angeben, damit du hinterher weißt, worum es geht.

In der Aufgabendefinition wurde ein veraltetes Feature verwendet

 

 

In der Aufgabendefinition wurde ein veraltetes Feature verwendet

 

 

In der Aufgabendefinition wurde ein veraltetes Feature verwendet

 

 

In der Aufgabendefinition wurde ein veraltetes Feature verwendet

 

 

In der Aufgabendefinition wurde ein veraltetes Feature verwendet

 

 

Da der Task mit den höchsten Privilegien ausgeführt wird, muss natürlich auch das Kennwort des Administrators hinterlegt werde.

In der Aufgabendefinition wurde ein veraltetes Feature verwendet

 

 

Wenn das Ereignis protokolliert wird, wird das Powershellscript ausgeführt. Die Email hat dann folgenden Inhalt.

In der Aufgabendefinition wurde ein veraltetes Feature verwendet

 

 

Bitte beachtet, dass ihr in dem Script welches hier (powershell_eventtigger_smtp_auth.zip) erhältlich ist, noch anpassen müsst. Die Anpassungen beschräken sich auf die Mailempfänger, den SMTP-Server, die SMTP-Authentifizierung, die EventId, den Dateipfad zu eurem Anhang und den Absender. Für den Fall, dass ihr euch vor dem Emailversand am Mailserver authentifizieren müsst, solltet ihr unbedingt darauf achten, dass das Script an einem Ort gespeichert wird, wo kein normaler Anwender Zugriff hat.

 Bewerte den Beitrag
1 1 1 1 1 1 1 1 1 1 (11 Votes)

Kommentare

 
0 #5 Marcel 2014-05-13 20:06
zitiere darth vader:
Dude.....Überschrift email script sollte smtp sein oder?


Sollte es, aber stört doch keinen. Dann siehst du eben gleich, wofür ich es verwende :)
 
 
0 #4 Marcel 2014-05-13 20:02
hey darth,
das ist mein Lösungsansatz, wie ich ihn umsetzen würde. Du darfst natürlich gerne eine andere Lösung vorschlagen auch wenn du lieber etwas über Obst lesen würdest. Alles Banane? :lol:
 
 
0 #3 darth vader 2014-05-06 22:40
Dude.....Übersc hrift email script sollte smtp sein oder? und seit wann lösen wir probleme mit ps? als nächstes gibts ein artikel über die obst-te****iste n.
 
 
0 #2 Marcel 2014-05-06 21:56
:lol: Thx for your feedback about this topic. If this post / Script was helpful for you, enjoy it and get a realy big smile in your face. I will not stop to shake my head when I come back over stupid "microcode". :D have a nice day :P
 
 
+1 #1 towing software 2014-05-06 17:43
This is the perfect site for anyone who hopes to find out
about this topic. You realize so much its almost tough
to argue with you (not that I really would
want to…HaHa). You definitely put a new spin on a subject that has
been discussed for a long time. Wonderful stuff, just
wonderful!
 

Das Kommentar wurde entfernt.

Copyright © 2017. All Rights Reserved.