Scripts

    PowerShell Remoting über HTTPS mit einem selbstsignierten SSL-Zertifikat

    PowerShell-Remoting über HTTPS konfigurierenVerbindungen, die man über Enter-PSSession und Invoke-Command aufbaut, kommu­nizieren stan­dard­mäßig über HTTP. Aller­dings ver­schlüsselt dabei WinRM die über­tragenen Daten. Zusätz­liche Sicher­heit erlangt man speziell in Work­groups durch HTTPS, wobei ein selbst­sig­nierten SSL-Zertifikat in der Regel reicht.

    Group-Object: Daten nach Eigenschaften gruppieren mit PowerShell

    Daten gruppieren in PowerShellSQL kann bekannt­lich mit dem Befehl GROUP BY das Ergebnis einer Ab­frage nach den Wer­ten in einer oder mehreren Spalten grup­pieren. Aber auch Power­Shell ist dazu in der Lage, wenn man an Group-Object tabel­larische Daten über­gibt, wie sie von vielen Cmdlets erzeugt werden.

    Kostenloses Shared Storage für Hyper-V und ESXi mit StarWind Virtual SAN Free

    StarWind Virtual SAN FreeStarWind VSAN fasst ähnlich wie Storage Spaces Direct oder VMware vSAN lokale Lauf­werke eines Server-Clusters zu einem hoch­verfüg­baren (HA) "Pool" zusammen. Dieser dient Virtua­lisierungs-Hosts oder Anwen­dungen als Shared Storage. Die Free Edition bietet fast alle Features der Voll­version und darf pro­duktiv eingesetzt werden.*

    New-SelfSignedCertificate: Selbstsignierte Zertifikate ausstellen mit PowerShell

    Zertifikate mit PowerShell verwaltenWährend man früher Tools wie makecert.exe benö­tigte, um selbst­signierte Zerti­fikate aus­zustellen, kann Power­Shell diese Auf­gabe seit Windows 8 und Server 2012 mit New-SelfSignedCertificate über­nehmen. Sie lassen sich etwa für die Client- und Server-Authenti­fizierung oder die Code-Signierung ver­wenden.

    Reguläre Ausdrücke (RegEx) in PowerShell verwenden

    Reguläre Ausdrücke in PowerShellDie Unterstützung für reguläre Ausdrücke gehört zum Pflichtprogramm für eine moderne Script-Sprache. PowerShell bietet mehrere Sprach­kon­strukte, die eine Verwendung von RegEx zu­lassen. Bei der syntaktischen Umsetzung orien­tierte sich Microsoft - anders als etwa bei Word - weitgehend an Perl, so dass für die meisten RegEx-erfahrenen Anwender der Lernaufwand gering bleibt.

    JEA: Rollenfunktionen definieren und einer PowerShell Session Configuration zuordnen

    Role Capabilty File im JEA Helper Tool bearbeitenMit Just Enough Administration (JEA) kön­nen Benutzer ohne admini­strative Berech­tigungen Manage­ment-Aufgaben über­nehmen. Die Grund­lage für JEA bilden Session-Konfi­gurationen, die bestim­men, wer Zugriff bekommt. Role Capabilities definieren dann die Mittel, welche in PowerShell zur Ver­fügung stehen.

    Ablaufdatum von AD-Passwörtern in PowerShell auslesen

    Kennwort ändern in RemotedesktopMit Hilfe des Modules ActiveDirectory ist PowerShell in der Lage, die meisten Informa­tionen von AD-Objekten auszulesen oder zu än­dern. Dazu gehören auch die verschie­denen Ein­stellungen für Passwörter von Benutzer­konten, etwa deren Ablauf­datum oder der Zeitpunkt ihrer letzten Änderung.

    Zertifikate mit PowerShell analysieren: ThumbPrint, Ablaufdatum, Aussteller, Private Key, Hash-Algorithmus

    Zertifikate mit PowerShell verwaltenZertif­ikate sind zweifel­los eine kri­tische Kompo­nente der IT-Infra­struktur. Laufen sie ab, dann kann dies zum Aus­fall von Diensten führen. Wurden sie mit einem schwachen Hash-Algo­rithmus signiert, stellen sie ein Sicher­heits­risiko dar. Diese und andere Infor­ma­tionen lassen sich mit PowerShell effizient aus­lesen.

    JEA Session Configuration: Remote-Sitzungen in PowerShell für Standardbenutzer erlauben, Funktionen beschränken

    PowerShell RemotingMöchten sich User ohne admini­strative Privi­legien mit einem Remote-PC ver­binden, dann scheitert das an man­geln­den Rechten. Diese Limi­tierung lässt sich mit Hilfe von Session-Konfigurationen be­seitigen. Dabei muss man einem Standard­benutzer nicht Zugriff auf alle Funktionen von PowerShell ge­währen.

    Ausführungsrichtlinien (Execution Policy) für PowerShell-Scripts über GPO setzen

    PowerShell SecurityDie Ausführung von PowerShell-Scripts lässt sich über Richt­linien ein­schränken, standard­mäßig wird sie blockiert. Während die vom Admin interaktiv gesetzte Execution Policy von jedem User aufge­hoben werden kann, ist die Konfi­guration per GPO nach­haltiger. Sicher­heit gegen bös­willige User bietet sie aber trotz­dem nicht.

    Dateidatum in PowerShell ändern: Unix-Kommando touch nachbilden

    Das Unix-Dienstprogramm touch erfüllt zwei Aufgaben: Wendet man es auf existierende Dateien an, dann ändert es deren Zeitstempel. Sind die als Parameter angegeben Dateien nicht vorhanden, dann legt es sie mit einer Größe von 0 Byte an. PowerShell kennt kein Cmdlet mit exakt dieser Funktion, aber man kann sie relativ einfach nachbilden.

    Seiten