Netz-Weise Logo

Weisheiten - der Netz-Weise Blog

Hier finden Sie Tipps und Tricks für vor, während und nach der Schulung.

Windows 10 Übermittlungsoptimierung (Delivery Optimization) erklärt

Dies ist ein Auschnitt aus der Neuauflage meines Gruppenrichtlinien-Buchs "Gruppenrichtlinien in Windows Server 2019 und Windows 10, das vermutlich im Oktober 2018 erscheinen wird

Übermittlungsoptimierung oder Delivery Optimiziation (DO) ist ein neues Feature, das Microsoft mit Windows 10 eingeführt hat, und das die Menge an Daten, die von Windows Update und dem Windows Store heruntergeladen werden, massiv reduziert. Das Verfahren basiert auf Peer To Peer Technologie, Clients teilen bereits heruntergeladene Daten also mit anderen Clients (Peers) im gleichen Netzwerk (oder auch über das Internet). Dafür werden Dateien in Blöcke aufgeteilt, gehashed (es wird eine eindeutige ID erzeugt), und dann Blockweise verteilt anstatt als Monolithische Datei. Damit ein Client tatsächlich nur Original-Daten erhält, sind die Dateien digital signiert, der Client kann also nach Empfang der kompletten Datei prüfen, ob er ein unverändertes Update erhalten hat.

Wenn ein Client ein Update von einem Update-Server herunterladen möchte und die Übermittlungsoptimierung aktiviert ist, erhält er vom Update-Service über die URL *.do.dsp.mp.microsoft.com eine Liste von Rechnern, die bereits Blöcke der Update-Datei bezogen haben. Auf Windows 10 Pro und Enterprise ist die Einstellung dabei standardmäßig so konfiguriert, dass ein PC Daten nur von Peers aus seinem eigenen lokalen Netzwerk empfängt (s. Bild 1.2). Der Update-Service ermittelt über die IP des sich verbindenden Rechners (normalerweise die öffentliche IP des Routers oder Proxys, über den der Client sich verbindet), mit welchen Peers er Daten austauschen darf. Zusätzlich greift der Dienst auf die AD-Standortdaten zurück oder, wenn diese nicht verfügbar sind, auf die Domäne. Man kann diese automatische Gruppierung aber auch überschreiben und manuell festlegen, welche Clients miteinander Daten austauschen dürfen, indem man eine Group-ID festlegt. Die Group-ID wird dann als einziges Kriterium verwendet, um zu ermitteln, welche Clients Daten austauschen dürfen. Das ist wichtig, wenn man bereits mit IPv6 arbeitet (alle Clients haben eine öffentliche IP-Adresse) oder der Zugriff nach außen über Proxy-Arrays oder Load-Balancing stattfindet, so dass ein Standort nicht über eine eindeutige ID verfügt. Die Group-ID ist eine GUID (Globally Unique Identifier), die man z.B. mit dem Powershell-Cmdlet New-GUID zufällig generieren kann.

Die Übermittlungsoptimierung arbeitet höchst effizient und teilt Daten deutlich schneller als die Alternative Branchcache. Sind die Daten erst einmal im lokalen Netzwerk, dauert es nur Sekunden, bis Clients lokale Peers als Quelle verwenden können. Die Daten werden dann mit voller lokaler Netzwerkgeschwindigkeit geteilt. Der Übermittlungsoptimierungsdienst verwendet hierfür Port 7680 im lokalen Netzwerk, für den Datentausch mit Internet-Peers Port 3544 (Teredo-Protokoll, eine IPv6-Übergangstechnologie).

Übermittlungsoptimierung ist vor allem für große Dateien effektiv und kostet außerdem Client-Ressourcen, weshalb Branch-Cache standardmäßig erst aktiviert wird, wenn der Client mindestens über 4 GB RAM und 32 GB freien Speicherplatz auf dem Cache-Laufwerk verfügt. Alle diesen Daten können über Gruppenrichtlinien angepasst werden, die Sie in der Computerkonfiguration unter ADMINISTRATIVE VORLAGEN - WINDOWS-KOMPONENTEN - WINDOWS UPDATE - ÜBERMITTLUNGSOPTIMIERUNG finden.

Weiterlesen
  8139 Aufrufe

Windows Apps von Windows entfernen - vor und nach der Installation

Windows 10 kennt zwei verschiedene Anwendungstypen - die klassischen Anwendungen und Apps. Apps gibt es seit Windows 8, und sie sind vom App-Konzept von Apple und Google übernommen. Apps unterscheiden sich in einigen grundlegenden Dingen von Anwendungen:

 

Zumindest der letzte Punkt könnte sich ändern, denn Microsoft hat ein neues Format für die automatische Installation entwickelt, nämlich msix. Trotzdem möchte nicht jeder Administrator Apps in seiner Umgebung bereitstellen. Um die bereits mit Windows mitgelieferten Apps loszuwerden, muß man allerdings einige konzeptuelle Dinge verstehen:

Grundsätzlich werden Apps pro Benutzer installiert. Man spricht von Appx-Paketen. Um Appx-Pakete zu verwalten, können Sie Powershell-Cmdlets verwenden:

 

Weiterlesen
  6701 Aufrufe

Ein niedrig priveligiertes Konto zum Entsperren von Domänenbenutzern anlegen und damit Benutzer-Sperren retten

Das Sperren von Benutzerkonten ist ein bewährtes Mittel, um Brute-Force-Attacken gegen Kennwörter im Unternehmen zu verhindern. Allerdings empfehlen sowohl Microsoft als auch das BSI inzwischen, Kontosperrungen nicht zu verwenden, da eine Malware oder ein Hacker durch das Sperren sämtlicher Benutzerkonten ein Netzwerk komplett lahm lagen kann - man spricht auch von einem denial of Service.

Die alternative Empfehlung lautet, lange Kennwörter in Form von Passphrases und am Besten Multifaktor-Authentifizierung einzusetzen. Grundsätzlich ist das ein vernünftiger Ansatz, aber leider scheitert er in vielen Netzwerken immer noch an der Praxis. Zum einen muß man den Benutzern erklären, dass Sie jetzt lange komplexe Kennwort-Sätze verwenden sollen, zum Anderen muß man mit dieser Variante auch für eine ordentliche Anmeldungs-Überwachung sorgen, da ein großangelegter Angriff auf die Benutzerkennwörter sonst gar nicht auffällt. Mit aktivierter Kennwortsperrung merkt man normalerweise sehr schnell, dass etwas nicht stimmt.

Mein pragmatischer alternativer Ansatz, um die Kontosperrungen weiterhin nutzen zu können, arbeitet mit automatisierten Prozessen und Powershell. Denn mit Powershell ist es sehr schnell und einfach möglich, Benutzerkonten zu entsperren. Verwenden Sie dafür die Cmdlets Search-ADAccount und Unlock-ADAccount. Search-ADAccount kann mit dem Parameter -Lockedout alle gesperrten Benutzerkonten in einem Rutsch auflisten, Unlock-ADAccount kann sie  direkt entsperren. Mit Hilfe des Cmdlets Out-Gridview können Sie sich auch gleich noch eine grafische Benutzeroberfläche einrichten, um nur ausgewählte Benutzer zu entsperren.

Search-ADAccount -Lockedout | Out-Gridview -Passthru | Unlock-ADAccount

Damit wird das Entsperren nach einem Denial of Service zu einem Kinderspiel. Allerdings muß noch ein zweites Problem gelöst werden. Wenn Sie nämlich das Standard-Administratorkonto auf der Domäne deaktivieren, haben Sie eventuell gar keine Möglichkeit mehr, die Domäne zu entsperren, weil Ihr Administrator auch gesperrt ist. Deswegen legen Sie sich nun ein niedrig privilegiertes Konto an, dass neben dem Entsperren von Benutzern in der Domäne nichts kann, aber nicht gesperrt wird.

Weiterlesen
  7177 Aufrufe

Computerkennwörter, der Secure Channel und die Fehlermeldung „Die Vertrauensstellung zwischen dieser Arbeitsstation und der primären Domäne konnte nicht hergestellt werden”

Wenn ein Domänen-Computer gestartet wird, sucht er im Netzwerk zuerst nach einem Domänen-Controller, indem der den DNS-Server nach den LDAP-Service-Records seiner Domäne fragt. Anschließend versucht er, mit dem Domänencontroller einen Secure Channel, also eine verschlüsselte, sichere Datenverbindung aufzubauen. Dies geschieht über einen RPC Netlogon. RPC ist ein Challenge-Response-Protokoll, bei dem der Client und der Server sich gegenseitig einen zufälligen 64 Bit-Zufallswert, den Client- bzw. Server Challenge, zuschicken, aus denen mit Hilfe des Computerkennworts (wegen gegenseitige Authentifizierung sowohl auf dem Client als auch auf dem Server) ein Session-Key berechnet wird. Das funktioniert, weil sowohl der Client als auch der Domänencontroller über das Computerkennwort des Clients verfügen. Wenn der Domänencontroller und der Client nicht das gleiche Kennwort gespeichert haben, schlägt die Erstellung des Secure Channels allerdings fehl und dem Client wird die Verbindung zum Domänencontroller verweigert. Stattdessen wird eine Fehlermeldung angezeigt, die vermutlich jeder Administrator schon einmal gesehen hat: „The trust relationship between this workstation and the primary domain failed” bzw. "Die Vertrauensstellung zwischen dieser Arbeitsstation und der primären Domäne konnte nicht hergestellt werden".

Wie und wo wird das Computerkennwort verwaltet

Der Client generiert beim Aufnehmen in die Domäne ein komplexes Kennwort, dass er ab Windows 2000 alle 30 Tage automatisch ändert. Da Computerkonten sind von den Kennwortrichtlinien der Domäne ausgenommen sind, können Sie auch nicht gesperrt werden, wenn sie länger offline sind.
Die Kennwortänderung führt der Client zuerst zuerst lokal aus. Danach ändert er sein Kennwort im AD. Schlägt die Aktualisierung im AD fehl, setzt er wieder das alte Kennwort. Das aktuelle Kennwort und sein Vorgänger werden im geschützten Kennwortschlüssel HKLM\SECURITY\Policy\Secrets\$machine.ACC gespeichert. Im AD sind die Kennwörter in den Attributen unicodepwd und lmpwdHistory abgelegt.
Ob und wie oft der Client sein Kennwort ändert, kann in der Systemregistrierung unter HKLM\SYSTEM\CurrentControlSet\Services\NetLogon\Parameters konfiguriert werden. Für die Konfiguration sind drei Schlüssel verantwortlich:

MaximumPasswordAge: Der Eintrag MaximumPasswordAge legt fest, nach welchem Zeitraum der Netlogon-Dienst versucht, das Kennwort zu ändern. Der Standardwert ist 30 (Tage).

ScavengeInterval: Das Scavengeinterval legt fest, wie häufig der Computer prüfen soll, ob das maximale Kennwortalter erreicht ist. Der Standardwert beträgt 900 (Sekunden), also 15 Minuten. Der Eintrag ist nicht in der Registry hinterlegt, kann hier aber geändert werden. Der Typ des Eintrags ist REG_DWORD.

DisablePasswordChange: Sie können die Kennwortänderung des Computers mit diesem Schlüssel auch komplett deaktivieren, indem Sie den Wert auf 1 setzen.

Weiterlesen
  14774 Aufrufe

Office 365 - Email Weiterleitung einrichten

Um unter Office 365 eine Email-Weiterleitung einzurichten, melden Sie sich unter Outlook.office365.com mit Ihrem mail-Konto an. Klicken Sie oben rechts auf das kleine Zahnrad-Symbol, um in die Einstellungen zu kommen. Wählen Sie "Optionen" aus, und im folgenden Fenster im rechten Bereich "Ihre emails weiterleiten".

  2947 Aufrufe

Laufzeit der Gruppenrichtlinien-Ausführung bestimmen

Wenn eine Windows-Anmeldung lange dauert, könnte dies an den abzuarbeitenden Gruppenrichltinien liegen. Lesen Sie hier, wie sie die Laufzeit der Gruppenrichtlinien bestimmen können. Die Anmeldung eines Clients kann mitunter sehr, sehr lange dauern. Eine der möglichen Ursachen für eine verzögerte Anmeldung bilden die Windows Gruppenrichtlinien.  Grundsätzliche Kandidaten für verzögerte Anmeldungen sind:

 

Um die Abarbeitungszeit von Gruppenrichtlinien zu bestimmen, gibt es zum einen von Daren Mar-Elia (dem gpo-guy) das Kommandozeilenprogramm gptime.exe, dass die für die letzte Gruppenrichtlinienverarbeitung benötigte Zeit pro gpo anzeigt. Für eine ausführliche Analyse bietet Microsoft das Performance Toolkit im Windows ADK (Assessment and Deployment Kit) an. Das ADK kann man bei Microsoft herunter laden. Eine gute Einführung in die Analyse des Startvorgangs mit dem ADK bietet die Aufzeichnung der Teched-Session How many coffess can you drink while Windows 7 boots?   

  6857 Aufrufe

SQL-Server Fehleranalyse mit sp_blitz

Der SQL-Server MVP Brent Ozar hat ein eine gespeicherte Prozedur names sp_blitz zur Verfügung gestellt, mit der ein SQL-Server im Schnelldurchgang auf gängige Probleme überprüft werden kann. SP_Blitz ist kostenlos, kann direkt auf dem SQL-Server implementiert oder über ein kleines Programm aus dem Internet heruntergeladen und ohne Installation ausgeführt werden. Verwenden sie das aufführbare Tool, wird auch gleich ein pdf generiert. Die Dokumentation mit Problembeschreibungen und die möglichen Schritte zur Behebung finden Sie ebenfalls Brent Ozars Website. Ebenfalls auf der Website finden Sie auch sp_blitzIndex zur Analyse von Indexen. 

  2858 Aufrufe

Unix/MySQL Timestamp in Datumswerte mit Powershell umwandeln

In Unix und MySQL werden Datumswerte oft als Timestamps angegeben. Ein Timestamp ist eigentlich ein Datums/Zeitwerte, der aber als Integer gespeichert ist und die Sekunden ab dem 1.01.1970 angibt. Diese Zeitzählung wird auch als "Epoch date" bezeichnet.

Die Umwandlung in einen Datumswert in Powershell ist eigentlich recht einfach, da uns Powershell alle zur Umrechung notwendigen Funktionen zur Verfügung stellt. Das Datum des 1.1.1970 liefert uns get-Date:

Get-Date '1/1/1970'

Get-Date liefert ein Objekt vom Type Datetime zurück. Alle Objekte vom Typ Datetime besitzen eine Reihe von Methoden für die Datumsmanipulation. Wir benötigen hier die Methode AddSeconds() zum Aufaddieren von Sekunden:

$Timestamp = 1464257993
(Get-Date '1/1/1970').AddSeconds($Timestamp)

Weiterlesen
  11104 Aufrufe

SQL Server Diagnostic Information Queries

Eine Reihe von Standard-Abfragen, um SQL-Server Problemen auf die Schliche zu kommenMan kann sich SQL-Server Scripte zur Performance Analyse selber schreiben. Oder man kann auf Standard-Scripte zurück greifen. Glen Berry hat mit SQL-Server 2005 angefangen, die wichtigsten Performance-Daten in einem Script zusammen zu fassen. Seitdem werden diese Scripte für alle Versionen von SQL-Server ab Version 2005 regelmässig aktualisiert. Die Version von August 2013 ist derzeit die aktuellste. Mitch Wheat hat für das Script eine GUI gebaut, die einem das einfügen in die von Glen Berry vorgesehenen Excel-Vorlagen abnimmt. Startet man die GUI, braucht man nur den Pfad zu den Diagnostic Information Queries angeben, und die GUI erzeugt für alle Datenbanken, die man angibt, einen Report, und das ganze im Excel Format.Glen Berrys SQL Server Performance BlogGlen Berrys BlogMitch Wheats Blog

  2408 Aufrufe

Enhanced Session Mode -> Verbinden per RDP mit Hyper-V VMs

Mit Windows Server 2012 R2 kommt endlich ein Feature, das vermutlich schon viele von uns schmerzlich vermisst haben. Der enhanced Session mode erlaubt es, auch ohne aktive Netzwerkverbindung Virutelle Maschinen vom Host-Server aus per RDP zu steuern. Dafür hat Microsoft eine Anpassung am VMBus vorgenommen, der die Kommunikation des Hosts mit der Maschine durchführt. Welche Vorteile bringt das?

 

Während das Fehlen dieser Features auf dem Server noch zu verkraften ist, ist das bei Windows 8 schon als Virtualisierungs-Host schon deutlich störender. Um den Enhanded Session Mode zu nutzen, wird als Host und als Gast-Betriebssystem(!) Windows 8.1 und Windows Server 2012 R2 benötigt - ältere Betriebssysteme werden nicht unterstützt! Unter Windows 8.1 ist der Enhanced Session Mode auf dem Hyper-V Host standardmäßig aktiv, unter Windows Server 2012 muss er in den Hyper-V-Einstellungen des Hosts (Hyper-V Einstellungen -> Erweiterter Sitzungsmodus) aktiviert werden. Eine ausführliche Beschreibung finden Sie bei IT Central Station.

  3400 Aufrufe