IIS und IIS/ARR HTTP Authentifizierung funktioniert nicht auf localhost und lokalen Servern

In vielen Szenarien möchte man auf dem localhost die HTTP-Authentifizierung verwenden. Das gilt für alle lokalen URLs, wie zum Beispiel

  • http://localhost
  • http://127.0.0.1
  • http://SERVERNAME
  • http://SERVENAME.FQDN.TEST

Lokale Webserver-Software auf einem Terminalserver, Test- und Dev- Systeme, Reverse-Proxys und ähnliches. Vor allem SharePoint mit seinen zahlreichen Scripts und automatismen benötigt gerne „logged on“ Zustand (auf dem SP-Server).

In der Standardkonfiguration erlaubt Windows Server seit 2008R2 das nicht mehr, alle Loopback-Authentifizierungen schlagen fehl und man sieht die Kennwort-Eingabeauffordeung wieder und wieder (und eine 403er Antwort im Log).

Lösung

Man muss die Loopback-Prüfung deaktivieren – oder zumindest anpassen. Diese verhindert by design Reflection-Attacken und ist grade bei teurer schlechter Software sinnvoll.

In Produktivumgebungen kann man einfach den vom Client verwendeten Hostnamen anpassen, zum Testen reicht es in der Regel die Prüfung komplett zu deaktivieren.

Prüfung deaktivieren

In die Registry eintragen, ist sofort (ohne Neustart) aktiv:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa]
"DisableLoopbackCheck"=dword:00000001

Erlaubte Hostnamen eintragen

In die Registry eintragen, ist erst nach einem Neustart aktiv. Das ist eine „mehrteilige Zeichenfolge“ (oder „Multi-String Value“) die beim Export in Hex-Werte umgewandelt werden. Das hier ist ein Beispiel mit „SERVERNAME“ und „LOCALHOST“ darin:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0]

"BackConnectionHostNames"=hex(7):53,00,45,00,52,00,56,00,45,00,52,00,4e,00,41,\
  00,4d,00,45,00,00,00,4c,00,4f,00,43,00,41,00,4c,00,48,00,4f,00,53,00,54,00,\
  00,00,00,00

Windows Client mehr als 2 SSTP-VPN-Verbindungen

Problem

Als Dienstleister bewegen wir uns ständig in Kunden-VPNs und nutzen sehr gern den Windows-Integrierten SSTP VPN-Client. Leider lässt dieser standardmäßig nur 2 gleichzeitige Verbindungen zu.

Versucht man eine weitere Verbindung herzustellen bekommt man direkt eine Fehlermeldung:

Verbindung mit VPN nicht möglich. Das Modem (oder ein anderes Gerät) wird bereits verwendet oder ist nicht richtig konfiguriert.

Lösung

Die Anzahl der Miniports kann mittels netsh erhöht werden. Dazu an einer administrativen shell einfach folgendes netsh-Command ausführen:

netsh ras set wanports device="WAN Miniport (SSTP)" maxports=3

Eine Erhöhung auf mehr als 3 Ports ist mittels netsh aber leider auch nicht möglich. (Der Wert für den Parameter „maxports“ ist ungültig.)

Wenn Admins mit Etikette den Etikettendrucker etikettieren

Traditionell ist das erste Etikett aus jedem neuen Etikettendrucker das Etikett „Etikettendrucker“ zur eindeutigen Etikettierung des neuen Ettikettiergerätes.

Doch was geschieht wenn da ein Etikettiertippfehler passiert? Auf GAR KEINEN FALL kann hierfür ein neues Etikett gedruckt werden! Es wird hingegen nach alter Admin-Etikette eine immerwärende Warnung an alle zukünftigen etikettierenden Admins zum Etikett hinzugefügt, die Schmach und Scham fehlerhafter Erstetikettierung für Generationen erhält.

Im Bild: Speziell dieses Etikett konnte ohne selbiges Kennzeichen viele Jahre unentdeckt auf dem Etikettendruckertransportkoffer existieren. Doch jüngste wurde der Fehler entdeckt und reiht sich nun stilgerecht in die mahnende Reihe der Etikettiertetiketenetikette ein.

Dell/EMC DS-6505 (5500 und 300B) Series FC-Switch Password reset und Factory Reset

Manchmal gehen Kennwörter oder die Mensche die diese wussten verloren. Dann sollte ein gute Admin trotzdem den Zugriff auf die Hardware sicherstellen – manchmal auch mit „Gewalt“.

Leider hat DELL zwischenzeitlich beschlossen, eine ganze Menge KB-Artikel mit einer Paywall zu blockieren („Dieser Artikel ist berechtigungsbasiert. Suchen Sie einen anderen Artikel.“), so auch die „offiziellen“ Anleitungen 🤬

Wir hatten hier gleich mehrere (Dell) EMC DS-6505B zurückzusetzen. Daher hier die kompakte Anleitung für schnelle Admins. Ganz ohne Paywall.

Lösung

1. Boot-Console verbinden (Switch ist ausgeschaltet)

PC mit dem seriellen Anschluss (oder Adapter, FTDI FT232RL empfohlen) via Console-Kabel mit dem Serial-Port des Switches verbinden (das ist der port mit der „IOIO“ Beschriftung).

Mit PuTTY oder anderen Serial-Terminal Client den Port öffnen (9600baud, 8 data bits, 1 Stop bit, Parity none, Flow Control Xon/Xoff).

2. Switch einschalten, Recovery Command-Shell booten

Sofort nach dem Einschalten kann man den Boot-Prozess live bewundern. Ein paar Sekunden nach dem Start bei der Meldung „Hit ESC to stop autoboot:“ ESC drücken und mit „3“ die command shell starten.

3. Singele-User mode booten

Wenn es hier ein PROM-Kennwort gibt, einfach das Gerät noch einmal booten und selbiges Kennwort mit dem 2. Punkte „Recover password“ zurückesetzen.

An der boot-Shell kann man dem Bootloader jetzt den Parameter für den Single-User-Mode mitgeben und diesen auch gleich starten. Mit printenv sollte man vorher die Boot-Parameter anschauen (und am besten screenshotten). Möglicherweise werden die später noch gebraucht.

=> printenv

=> setenv OSLoadOptions "single"

=> boot

4. Dateisystem(e) mounten

Natürlich mountet der Singleuser-Mode alle Laufwerke ReadOnly (RO), daher muss das vor den Änderungen natürlich umgestellt werden. Wir brauchen außerdem das Boot-Medium mit dem Flashfilesystem gemountet. Das bekommen wir aus der printenv Ausgabe der Variable OSRootPartition (der erste Wert, meistens /dev/hda2).

sh-2.04# mount -o remount,rw,noatime /

sh-2.04# mount /dev/hda2 /mnt

5. Kennwörter zurücksetzen

Jetzt kann man an der frisch gebooteten (Linux-) Shell die Kennwörter zurücksetzen und den Switch neu starten.

sh-2.04# /sbin/passwddefault

sh-2.04# reboot -f

6. Neu starten und einloggen

Nach dem jetzt ungestörten Neustart kann sich der Benutzer admin wieder mit dem EMC/Brocade Default Passwort password einloggen.

Bonus: Factory Reset (Zurücksetzen auf Werkseinstellungen)

Wenn man schon mal dabei ist und der Switch „leer“ werden soll, kann man das Gerät jetzt noch direkt auf die Werkseinstellung zurücksetzen.

SWITCHNAME:admin> fosconfig --disable vf

SWITCHNAME:admin> switchcfgpersistentdisable

SWITCHNAME:admin> cfgDisable
[mit y bestätigen]

SWITCHNAME:admin> cfgClear
[mit y bestätigen]

SWITCHNAME:admin> cfgSave
[mit y bestätigen]

SWITCHNAME:admin> configDefault
[mit y bestätigen]

SWITCHNAME:admin> userconfig --change root -e yes

SWITCHNAME:admin> rootaccess --set consoleonly

SWITCHNAME:admin> cfgSave
[mit y bestätigen]

SWITCHNAME:admin> fastBoot

Das Default-Kennwort für den Standartmäßig abgeschalteten Benutzer root lautet übrigens fibranne.

Windows Sever IIS reverse Proxy (ARR) verhindert Zugriff auf URLs mit Plus („+“) Zeichen

Der IIS mit ARR verhindert „by Default“ den Zugriff auf Adressen (URLs), die reservierte Zeichen enthalten. Genauer gesagt werden Anfragen mit solchen Zeichen von der IIS-Anfragefilterung blockiert und mit einen Fehler 404 beantwortet.

Die IIS-Anforderungsfilterung prüft standardmäßig auf viele verschiedene Dinge. Das Verhalten wird aber durch die Konfiguration gesteuert und kann (muss) pro Site angepasst werden.

Dazu gehören:

  • Doppelte Escapezeichen (..%25)
  • Prozent-Zeichen „%“-Zeichen
  • Plus „+“-Zeichen (Leerzeichen, also auch „%2b“)
  • Nicht-ASCII-High-Bit-Zeichen (ja, auch Emojies)
  • Punkt im URI-Pfad, wenn eine Anfrage, die einen anderen Punkt als den für die Ressourcenerweiterung enthält, abgelehnt wird (http://foo/a.b/bar.aspx)

Lösung

In der betreffenden web.config die Ausnahme für Double-Escaping hinzufügen:

<system.webServer>

  <security>
    <requestFiltering allowDoubleEscaping="true">
    </requestFiltering>
  </security>

[...]