Windows SBE remotewebaccess.com Update schlägt fehlt

Mit dem Beginn dieser Woche (KW11/2021) waren einige meiner auf Windows Server 2012R2 basierenden Small Business Essential Server nicht mehr in der Lage ihre für den Anywhere-Access notwendige Sub-Domain unter remotewebaccess.com zu aktualisieren. Genau genommen betrifft das Problem alle SBE, aber manche haben eine statische IP-Adresse und was sich nicht ändert, muss man auch nicht aktualisieren. Die Problem-Kandidaten waren also Kunden (Telekom- und 1&1 ) die täglich eine neue dynamische IPv4-Adresse vom Provider bekommen.
image

Damit klappte natürlich auch der Zugang auf https://sbe.remotewebaccess.com/remote nicht mehr. Da hinter dem Zugang über remotewebaccess.com ein Zertifikat steckt, hat auch ein Zugang über “nur” die IP nicht gut funktioniert.

Das Fehlerbild war dubios, bis ich die Idee hatte das möglicher Weise der auf dem SBE laufende Update Client ein Problem mit der Verschlüsselung haben könnte. Stichwort TLS 1.0, TLS 1.1 Deaktivierung durch Microsoft.

Wenn man einen Blick auf die Release Documentation for Windows Server Essentials wirft, findet man zum eine Aktualisierung von 10.03.2021 …

image

… und dazu den folgenden Absatz.

image

Auch der Windows Server Essentials soll TLS 1.2 nutzen, Nach diesem Absatz dachte ich, OK – das ist es nicht, der Windows Server 2012R2 und neuer verwenden automatisch TLS.

image

Diese Aussage trifft zwar auf den Windows Server selbst zu, aber für das .Net Framework war dennoch ein wenig Nacharbeit notwendig und damit war ich auch auf die Lösung des Problems gestoßen.

Für beide auf dem Server installierten .Net Versionen (v2.0.50727 und v4.0.30319) mussten die folgenden Einträge in die Registry zusätzlich eingetragen werden.

# 64-bit OS
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v2.0.50727]
"SystemDefaultTlsVersions" = dword:00000001
"SchUseStrongCrypto" = dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319]
"SystemDefaultTlsVersions" = dword:00000001
"SchUseStrongCrypto" = dword:00000001
# 32-bit Applications running on 64-bit OS
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v2.0.50727]
"SystemDefaultTlsVersions" = dword:00000001
"SchUseStrongCrypto" = dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v4.0.30319]
"SystemDefaultTlsVersions" = dword:00000001
"SchUseStrongCrypto" = dword:00000001

Mit PowerShell geht das sehr einfach die Befehle müssen als Administrator in PowerShell (elevated Session) ausgeführt werden.

# PowerShell
New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v2.0.50727" -Name "SystemDefaultTlsVersions" -Value 1 -PropertyType DWORD -Force
New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v2.0.50727" -Name "SchUseStrongCrypto" -Value 1 -PropertyType DWORD -Force
New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v4.0.30319" -Name "SystemDefaultTlsVersions" -Value 1 -PropertyType DWORD -Force
New-ItemProperty -Path "HKLM:\SOFTWARE\WOW6432Node\Microsoft\.NETFramework\v4.0.30319" -Name "SchUseStrongCrypto" -Value 1 -PropertyType DWORD -Force

New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\.NETFramework\v2.0.50727" -Name "SystemDefaultTlsVersions" -Value 1 -PropertyType DWORD -Force
New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\.NETFramework\v2.0.50727" -Name "SchUseStrongCrypto" -Value 1 -PropertyType DWORD -Force
New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\.NETFramework\v4.0.30319" -Name "SystemDefaultTlsVersions" -Value 1 -PropertyType DWORD -Force
New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\.NETFramework\v4.0.30319" -Name "SchUseStrongCrypto" -Value 1 -PropertyType DWORD -Force

Danach noch den Server neu starten (Restart-Computer).

Update 20.03.2021
Für den Windows Server 2012 (OHNE R2) sind neben den oben beschriebenen Einträgen noch die folgenden Keys in der Registry zu setzen

# PowerShell
New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp" -Name "DefaultSecureProtocols" -Value '0xAA0' -PropertyType DWORD -Force
New-ItemProperty -Path "HKLM:\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp" -Name "DefaultSecureProtocols" -Value '0xAA0' -PropertyType DWORD -Force

Microsoft bietet hier auch ein eigene Lösung an um den Fix zu installieren. Dazu gibt es weitere Infos hier.

Update 22.03.2021
Das Problem tritt natürlich auch auf dem Windows Server 2016 SBE auf, und kann mit den gleichen Einträgen in der Registry wie für Windows Server 2012R2 behoben werden.

image

Die Abbildung oben zeigt den Fehler des Update-Mechanismus auch im Windows Eventlog unter Microsoft-Windows-ServerEssentials/Admin.

Enjoy it, b!

SQL Server Configuration Manager [0x80041010]

Nachdem ich auf einem Microsoft SQL Server eine Instanz deinstalliert hatte, wurde Start des SQL Server Configuration Manager, mit der folgenden Fehlermeldung quittiert und ich eine Konfiguration war nicht mehr möglich.

image

Microsoft selbst beschreibt in diesem Artikel sehr gut, wie das Problem gelöst werden kann. Da bei mir die Datei sqlmgmproviderxpsp2up.mof  fehlte, kam ich um eine Reparatur des SQL Server nicht umhin.

image

Dazu ist im übrigen das SQL Server Installationsmedium notwendig (bei mir lag das ISO-File noch im Verzeichnis c:\temp\sql2019).

Nach der Reparatur und einem Neustart, funktioniert auch der Sql Server Configuration Manager wieder.

image

Enjoy it, b!

Windows 10 KB5000802 Update 03/2021

Neben den schon mehrfach publizierten Problemen mit dem März-Update (KB5000802), konnte ich auf zwei PCs ein “Hängen” des Windows Explorers feststellen.

image

Der Explorer selbst oder auch das Startmenü haben nach der Installation des Updates ihren Dienst komplett oder Teilweise eingestellt. Eine Deinstallation des Updates hat das Problem dann wieder behoben.

Da beide PCs eine ähnliche Ausstattung an Hard- und Software hatten (Lenovo L14 AMD), kann ich natürlich nicht zu 100% die Schuld bei dem Update suchen. Es könnte auch ein spezifisches Problem zwischen dieses Notebooks und dem Patch sein.

# Deinstallation ohne Neustart
wusa /uninstall /kb:5000802 /quiet /norestart

# Deinstallation mit Neustart
wusa /uninstall /kb:5000802 /quiet /forcerestart

Da der Windows Explorer nicht richtig mehr funktionierte, aber der Taskmanager noch zu starten war, habe ich von diesem aus eine cmd.exe oder PowerShell.exe mit Administratoren-Rechten gestartet um den Befehl oben auszuführen.

Enjoy it, b!

BlueScreen / Stopp, Windows 10 CSC reset

Nach dem Update auf Windows 10 Version 20H2, der Herbstversion 2020 hatte ich auf einer Reihe von Lenovo Notebooks und auf zwei Microsoft Surface Pro Tablets das Problem, dass sich im Verlauf der Anmeldung das Betriebssystem mit einem Bluescreen (BSOD, Stopp-Fehler) verabschiedete.

IMG-20201209-WA0000_ON1_Cloud

Für alle die hier nicht mehr weiterlesen wollen, könnte das Setzen des folgenden Parameters in der Registry von Windows 10 und ein damit verbundener Neustart das Problem beheben.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CSC\Parameters]
"FormatDatabase"=dword:00000001

Neustart nicht vergessen Smile

Alle Interessierten dürfen gerne den Rest des Beitrags lesen.

Fehlerbild(er)

Eine Reihe mir zugesandter Screenshots die von den Anwendern mit dem Smartphone erstellt wurden, zeigten ein diffuses Fehlerbild.

Unterschiedlich war dabei immer die Fehlerursache, dabei tauchten verschiedene Komponenten des Betriebssystems auf:

  • mrxsmb20.sys (7x), mountmgr.sys (1x) und auch der volume.sys (1x)
  • Lenovo L460, L470 und T14L
  • Surface Pro 4 und Surface Pro 7

Gleich waren auf allen Windows 10 Systemen die folgenden Parameter

  • Der BSOD tauchte immer während der Anmeldung auf
  • Windows 10 Version 20H2
  • kürzlich auf die Version 20H2 aktualisiert
  • Nach dem Update lief der Computer im Netzwerk (Firma) stabil!
  • Der Computer ist Mitglied einer Domäne, aber die Anmeldung erfolgte ohne Verbindung zum Domain Controller im HomeOffice
  • Konfiguriertes OneDrive for Business

Workarounds

Eine schnelle Lösung brachte die Verwendung eines lokalen Benutzers auf den Endgeräten. Der Computer war zwar nach wie vor Mitglied der Domäne, aber von Benutzer wurde im HomeOffice ein lokales Konto verwendet. Dieses hatte ich entweder im Vorfeld schon angelegt, konnte es über Teamviewer “nachrüsten” oder der Anwender war dazu selbst in der Lage.

Damit war ein Zugang per RDP auf den eigentlichen PC innerhalb der Firma möglich und der Druck erst einmal weg.

Darüber hinaus brachte das Zurücksetzen von Windows auf die vorherige Version bei allen Surface Geräten Abhilfe. Der BSOD war verschwunden! Ich muss aber gestehen, dass ich das auf den Lenovo Notebooks nicht in Betracht ziehen wollte.

Zusammenfassend konnte das Problem schnell mit den beiden folgenden Ansätzen gelöst werden.

  1. Verwenden eines lokalen Benutzers (den ich inzwischen generell immer anlege, zusätzlich zu einem lokalen Admin) und auch einrichte (Outlook, OneDrive, …)
  2. Rückkehr auf die vorherige Version von Windows 10

Zufrieden war ich aber mit beiden Lösungen nicht. Zum einen führen lokale Benutzerprofile dazu, dass irgendwann Daten darin verschwinden und nicht mehr auf dem Server gespeichert werden. Eine Rückkehr auf die vorherige Version von Windows kann nur temporär eine Lösung sein, das nächste Update kommt bestimmt. Also musste dafür eine ordentliche Lösung gefunden werden und kein Workaround. Durch die Workarounds konnten alle Anwender zunächst einmal arbeiten.

Die eigentliche Lösung

Durch das Auftauchen von Komponenten die mit dem Speicher (Festplatte) und Cache von Windows zu tun hatten, dachte ich zuerst an einen Defekt des Notebooks. Da der BSOD aber nach der Verwendung des lokalen Benutzer-Kontos nicht mehr auftrat, konnte ich diesen Verdacht beiseitelegen und außerdem hatte ich inzwischen das Problem auf mehreren Geräten.

Geblieben waren aber der mrxsmb20.sys und das der STOPP-Fehler der generell bei einer Anmeldung ohne Domain Controller erfolgte.

Das zeigte mir auch ein Blick in den memory.dmp (PROCESS_NAME: winlogon.exe ist der Anmelde-Prozess von Windows)image

Dazu bekommen wir gleich zu Beginn der Analyse den Hinweis, dass etwas beim Zugriff auf das Dateisystem schief gegangen ist, nämlich als eine RDR (ReDirection) stattgefunden hat.

image

Das ist der Fall, wenn ein Computer sich Offline anmeldet. Inzwischen konnte ich nachvollziehen, dass die Anmeldung direkt im Firmennetzwerk ohne Probleme funktioniert und lediglich im HomeOffice der BSOD auftritt.

Im ersten Screenshot des Debuggers ist zu sehen, dass es sich um einen ExceptionCode c0000005 handelt und der Zugriff auf den Offline Cache fehl schlägt. Der entsprechende Ordner dafür liegt im Windows Verzeichnis mit dem Namen CSC.

# Windows Client Side Cache Ordner (Offline Files)

%WINDIR%\CSC

Die Berechtigungen auf diesen sind einfach gehalten und mit SYSTEM:F überschaubar. Allerdings lassen sie sich nur im passenden Kontext überprüfen. Ich verwende dazu Psexec.exe von Sysinternals, welches mit dem Parameter –s im Systemkontext gestartet werden kann.

# Start von Psexec.exe unter Local System

C:\Temp> "\Program Files (x86)\Windows Sysinternals Tools\psexec.exe" -s cmd.exe

# Kontrolle der Berechtigungen

C:\Windows> cacls csc /t

image
Nachdem die Berechtigungen richtig angezeigt wurden, erinnerte ich mich an frühere Migrationen von Dateiservern wo im Anschluss der CSC Cache Probleme gemacht hat und zurück gesetzt werden musste. Korrekter Weise dessen Datenbank und ein Upgrade von Windows 10 auf eine höhere Version könnte hier durchaus ebenfalls zu Problemen oder Inkompatibilitäten führen.

Ein Rücksetzen des CSC ist über den folgenden Registry-Eintrag möglich. Natürlich verbunden mit einem notwendigen Neustart des Computers.

image

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CSC\Parameters]
"FormatDatabase"=dword:00000001

Damit war auch eine Anmeldung im HomeOffice möglich und damit die Lösung des Problem gefunden.

Alle nun folgenden Notebooks habe ich gleich im Anschluss nach dem Upgrade ebenfalls mit diesem Eintrag versehen und die CSC Datenbank gelöscht. Das Problem ist danach nicht mehr aufgetreten.

Enjoy it, b!

Windows 10 Upgrade schlägt fehl

Beim Upgrade von zwei Windows 10 PCs wurde ich von der folgenden Fehlermeldung überrascht.

image

Windows kann mithilfe von Setup nicht auf einem USB-Speicherstick installiert werden.

Windows war der Meinung, dass die interne Festplatte (eine SSD) ein USB-Stick wäre. Lösen lässt sich dieses Problem, indem in der Windows Registry der folgende Wert auf 0 gesetzt wird.

image

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control
PortableOperatingSystem = 0

Damit konnte Windows ohne Probleme auf die gerade aktuelle Version 20H2 aktualisiert werden.

Enjoy it, b!

GPO Error "Resource $(string id="Win7Only)‘

Die Fehlermeldung lautet wie folgt und erscheint bei der Anzeige der Settings / Einstellungen einer GPO.

Error "Resource $(string id="Win7Only)' referenced in attribute displayName could not be found" when opening gpedit.msc in Windows

Im GPO-Management wird der Fehler wie folgt angezeigt.

image

Microsoft selbst, kennt den Fehler auch und liefert in diesem KB-Artikel die Lösung, bzw. einen Workaround wie man den Fehler beheben kann.

https://support.microsoft.com/en-us/help/4292332/error-when-you-open-gpedit-msc-in-windows

Der Fehler ist bei mir aufgetreten, nachdem ich eine auf Windows Server 2012 R2 laufende Domain für Windows Hello vorbereiten wollte, dazu gehört auch das Aktualisieren der ADMX-Dateien.

Da ich schon die aktuellen ADMX-Dateien eingespielt hatte, hier geht es zu den Windows 10 ADMX-Dateien für Version 2004, blieb mir nur die Möglichkeit die ADML-Datei zu editieren. Das kann man entweder mit Notepad oder mit Notepad++ machen.

Dazu habe ich die folgenden Schritte durchgeführt.

Erstellen eines Backups für die SearchOCR.adml Datei im folgenden Ordner:

C:\Windows\SYSVOL\domain\Policies\PolicyDefinitions\en-US

Das geht am einfachsten in einer Eingabeaufforderung oder in PowerShell mit xcopy, wobei beide Sitzungen mit erweiterten Adminrechten gestartet werden müssen.

C:\Windows\SYSVOL\domain\Policies\PolicyDefinitions\en-US
# Wechsel in der Verzeichnis mit den PolicyDefinitions der jeweiligen Sprache
C:\Windows\SYSVOL\domain\Policies\PolicyDefinitions\en-US
# Sichern der alten Datei mit dem Namen searchocr.adml durch xcopy
xcopy searchocr.adml \temp

Dann wird mit dem Editor eine Leerzeile in Zeile 26 eingefügt, und in diese leere Zeile der folgende String kopiert.

# Einfügen des folgenden Strings in Zeile 26"
Microsoft Windows 7 or later

Im Editor sieht das dann wie folgt aus.

image

Danach ist die Fehlermeldung verschwunden und die GPO-Einstellungen werden korrekt angezeigt.

Enjoy it, b!

Supermicro X11SCH-F “other devices”

Nach der Installation von Windows Server 2019 wird für das Supermicro X11SCH-F Motherboard eine Reihe von unbekannten Geräten (other devices) angezeigt, für die kein Treiber installiert werden wurde.

image

Würden wir uns auf einem Windows Server ohne GUI (Desktop Experience) befinden, dann wäre DevManView von Nirsoft die erste Wahl um die korrekte Installation von Treibern und Geräten zu kontrollieren. Das Tool ist kostenfrei und gehört nach meiner Meinung auf jeden Windows Server Core, aber das nur nebenbei.

Die Lösung dieses Problems, habe ich in Teilen in diesem Blog beschreiben. Interessanter Weise hat aber die Installation des aktuellsten Intel Chipset INF Utility nicht alle Geräte korrekt mit Treibern versorgt.

image

Übrig geblieben sind zwei Geräte mit der Bezeichnung PCI Simple Communications Controller

image

Windows Update wollte für die beiden Geräte ebenfalls keine Treiber bereitstellen und so war etwas Recherche notwendig, um hier eine Lösung zu finden. Für mich interessant war, dass Supermicro ebenfalls auf seiner Webseite einen Intel Chipsatz Treiber anbietet, der nicht ganz der aktuellen Version von Intel entspricht, dass Problem aber behoben hat.

image

Dabei gab es aber noch ein kleineres Problem zu lösen. Wenn nun schon das aktuelle Intel Chipset INF Utility installiert wurde, bemerkt das der Installer infinst_autol.exe und bietet ein Downgrade an, was natürlich eine Option sein könnte. Eine Alternative ist aber, explizit mit einem rechten Mausklick und Update driver, den Pfad für den Treiber mit anzugeben.

image

Die Installation muss explizit für jedes Gerät erfolgen:

  1. Rechtklick und Auswahl von Update driver
  2. Auswahl von Browse my computer for driver software
  3. Über die Option Browse den Pfad zum Treiber für Windows 10-x64 angeben und den Treiber installieren

    C:\Users\Administrator\Downloads\Chipset_v10.1.17861.8101\DriverFiles\production\Windows10-x64

Beide Geräte wurden damit erfolgreich erkannt.

image

image

Da es sich um Treiber für die Intel Management Engine handelt, wäre möglicher Weise eine Suche nach einen passenden Treiberpaket dafür ebenfalls von Erfolg gekrönt gewesen. Letztendlich hat es aber so auch funktioniert.

Enjoy it, b!

Zeitumstellung und die Windows Server Essentials Status Mails

Aus gegebenem Anlass, falls der Windows Server Essentials keine Status Mails mehr verwenden will. Wir hatten wieder eine Zeitumstellung und damit kommt der Management-Service nicht zurecht.

image

Der Fehler tritt auf, egal ob wir einen Windows Server 2012 R2 oder Windows server 2016 Small Business Esentials betreiben und die Lösung ist immer noch die gleiche wie vor 2 Jahren Winking smile

net stop "Windows Server Essentials Management Service" && net start "Windows Server Essentials Management Service"

Der Windows Server Essentials wäre damit auch ein Produkt, welches von der Abschaffung der Zeitumstellung profitieren würde.

Enjoy it, b!

Supermicro X11SCH-F BIOS Update mit der UEFI Shell

Für das Server-Motherboard Supermicro X11SCH-F, ist kein Update des BIOS über einen mit DOS präparierten USB-Stick vorgesehen. Der Hersteller verweist hier auf die UEFI Shell, was wenn man das mal gemacht hat, sehr einfach geht. Die dazu notwendigen Schritte werde ich hier beschreiben.

Als BIOS kam die folgende Version zum Einsatz.

image

Für das Update habe ich den Server erst einmal mit der UEFI: Built-in EFI Shell gestartet.

image

Die Möglichkeit diese als Boot Device zu verwenden, muss aber erst einmal im BIOS des Servers eingestellt werden. Dazu beim Start die Taste DEL bzw. ENTF drücken.

Dieser Server hatte diese Option noch nicht konfiguriert, wie im Folgenden zu sehen ist.

image

Um diese Möglichkeit zu aktivieren, habe ich unter UEFI Boot Option #2 die [UEFI USB Hard Disk] gegen die UEFI: Built-in EFI Shell getauscht.

image

Das Abspeichern der Änderung hier mit F4 nicht vergessen. Die Möglichkeit die UEFI: Built-in EFI Shell auszuwählen erscheint, wenn die Taste F11 beim Start des Servers gedrückt wird.

image

Danach befinden wir uns in UEFI Shell Smile

Sinnvoll ist es hier, dass alle USB-Devices vom Server entfernt werden, mit Ausnahme dem welches das BIOS enthält.image

Gemäß der Anleitung habe ich die folgenden Schritte ausgeführt und habe dabei gleich festgestellt, dass mein Stick auf fs1: zu finden war.

  1. fs1:
  2. fs1:\> cd bios
  3. fs1:\> cd x11sch
  4. fs1:\> flash.nsh X11SCH0.526

image

Mit einem Return (Taste) startet der Flashvorgang und damit das Update des BIOS …

image

… was ein wenig dauern kann, bei mir waren es 5 Minuten. Danach sieht die Sache wie folgt aus und der Server kann neu gestartet werden.

image

Ich schalte nach erfolgreichem Update den Server ganz aus, damit er beim nächsten Neustart sich vollständig initialisiert, dass mag aber Geschmacksacke sein.

Sollte der Server im BIOS auf Boot mode select [UEFI] stehen, so wird dieser Wert durch das Update auf [DUAL] geändert und der Windows Boot Manager kann das Betriebssystem nicht mehr laden. Dann einfach nochmals ins BIOS gehen und die Option auf [UEFI] ändern, was den Windows Boot Manager an seiner ehemaligen Position wieder einblendet.

image

Dann klappt es auch wieder mit dem Start des Betriebssystems.

Enjoy it, b!

Ändern der Standard-Ordner in Outlook Teil 1

Outlook verwendet für die Standard-Ordner die Sprache, in der es installiert wurde. Wird also eine Office365 Mailbox auf einem englischem Outlook zum ersten Mal initialisiert, dann erscheinen die Ordner mit englischen Namen.

image

Wird die Mailbox nun mit einem in deutscher Sprache installierten Outlook betrieben, können diese Namen entsprechend zurückgesetzt werden.

:: Zurücksetzen der Anzeigesprache für Outlook Standard-Ordner
outlook.exe /resetfoldernames

In welchem Ordner sich die Outlook.exe befindet, lässt sich recht einfach mit einem Aufruf in der Eingabeaufforderung herausfinden. In diesen muss dann vor der Ausführung des obigen Befehls gewechselt werden.

image

:: Wechsel in das Outlook-Verzeichnis
cd /d "c:\Program Files\Microsoft Office\root\Office16"

Nun werden die Ordner in der passenden Anzeigesprache dargestellt.

Enjoy it, b!