Update auf Windows 11 verhindern und bei Windows 10 bleiben
Hat man versehentlich das Update zu Windows 11 vollzogen, wo möglich durch ungeschicktes vorgehen, oder man wollte einfach ein Blick auf Windows 11 wagen, um sich danach zu entscheiden, wird man nach dem zurücksetzen zu Windows 10 feststellen, das mit dem nächsten Start sich Windows 11 wieder zurückmeldet.
Es kann nun versucht werden, mit Updatepause den Weg zu Windows 11 vorübergehend auszusetzen und zu verhindern, oder das Upgrade auf Windows 11 mit den Gruppenrichtlinien oder über die Registry dauerhaft zu stoppen, bis die Update Fortsetzung wieder geändert wird.
Microsoft bietet seit Windows 10 1803 die Möglichkeit per Gruppenrichtlinien den Funktionsupdate zur nächsten Version zu verhindern. Nur Updates innerhalb des Funktionsupdate werden bis zur nächsten Version installiert, die Aktualisierung auf Windows 11 wird ausgesetzt.
Bei Windows 10 21H1 bleiben
Die Gruppenrichtlinien für Windows 10 Pro und Enterprise. Mit + Rgpedit.mscausführen. Richtlinien für Lokaler Computer -> Computerkofiguration -> Administrative Vorlagen -> Windows-Komponenten -> Windows Update -> Windows Update für Unternehmen Doppel-Klick auf Zielversion des Funktionsupdates auswählen Klick auf Aktiviert und im Feld 21H1 eintragen.
Zu guter Letzt sind es immer Registry Einträge. Mit öffnen einer Eingabeaufforderung als Administrator werden folgende zwei Schlüssel in die Registry eingefügt.
Für den Funktionsupdate 21H2 gibt es zwei Versionen, einmal für Windows 10 und einmal für Windows 11.
Richtlinien für Lokaler Computer -> Computerkofiguration -> Administrative Vorlagen -> Windows-Komponenten -> Windows Update -> Windows Update für Unternehmen Doppel-Klick auf Zielversion des Funktionsupdates auswählen als Produktversion Windows 10 und darunter 21H2 eintragen.
Die Taste drücken und cmd eingeben.
Registry Schlüssel in Eingabeaufforderung als Administrator einfügen:
Mehr Sicherheit mit GeoIP iptables Regeln in Debian und Ubuntu
In diesem Turorial wird die Bereitstellung und Konfiguration von GeoIP mit der iptables Firewall von Debian 10 (buster), Debian 11 (bullseye) oder Ubuntu 20.04 LTS angewandt. Neben TLS-Verbindungen und 2FA Authentifizierung ist ein weiteres Bindeglied eine Firewall, die den erlaubten Datenverkehr regulieren kann. Anhand der öffentlichen IP-Adresse kann recht gut ermittelt werden aus welcher Stadt oder aus welcher Region der Zugriff gerade stattfindet.
Dabei sollten überlegungen gemacht werden, ob die Erreichbarkeit der Websites und Dienste aus Ländern fernab hiesiger Sprachen überhaupt zweckmässig ist, auch werden möglicherweise zu fernen Regionen keine Beziehungen gepflegt, so beispielsweise in den Südpazifik. Wenn gleich bei der Verfolgung von Brute-Force und DDoS Angriffe, die Quellen häufig in Fernost und Russland zu finden sind.
Geolokationssystem GeoIP iptables in Debian
Ein Geolokationssystem mit GeoIP wird benutzt um den Standort von Systemen zu ermitteln. Im Internet kann eine IP-Adresse einem Land, einer Stadt oder einer Organisation zugeordnet werden, um anschließend den Standort zu bestimmten.
Installation
Die Installation der benötigten Dienste und Bibliotheken mit iptables für GeoIP auf Debian und Ubuntu erfolgt als root mit „su -“ oder „sudo su -„.
Hinweis: Wenn man Abbruch E: Package iptables-dev has no installation sieht, überspringe den nächsten Schritt „MaxMind GeoLite2“ und geh zu Update.
MaxMind GeoLite2
Die GeoIP Datenbank muss von der MaxMind Website heruntergeladen werden, mit folgender URL: https://www.maxmind.com. MaxMind ist ein in Massachusetts ansässiges Unternehmen für digitale Kartierung, das Standortdaten für IP-Adressen bereitstellt.
MaxMind verlangt das man sich für den Free Account mit einer gültigen Email registriert. Nach dem anmelden gehts zu My Account und Download Databases.
Unter GeoIP2 and GeoIP Legacy Databases – GeoLite2-Country-CSV Format mit Download ZIP die Datei herunterladen.
Möchte man den Download mittels Permalink durchführen, braucht es ein Lizenz Key, diesen man unter „My Account – Manage License Keys“ generieren kann, der Download hat hier zu diesem Zeitpunkt nicht funktioniert (401 Unauthorized).
Der Inhalt der ZIP-Datei GeoLite2-Country-CSV_20220125.zip
Auf dem Debian ein neues Verzeichnis erstellen und zu diesem wechseln.
$ mkdir -p /usr/share/xt_geoip/
$ cd /usr/share/xt_geoip
Die heruntergeladene Datei Country-CSV_20220125.zip auf den Debian oder Ubuntu Server hochladen mit ftp oder scp, in den Verzeichnispfad /usr/share/xt_geoip und anschissend entpacken.
Die CSV-Daten werden konvertiert, mit dem Konverter für MaxMind CSV-Datenbank zu Binär für xt_geoip. Es erscheint die Ausgabe in etwa wie die folgende, hier in verkürzter Form.
729578 entries total
0 IPv6 ranges for
16 IPv4 ranges for
362309 IPv6 ranges for 0 0
365215 IPv4 ranges for 0 0
0 IPv6 ranges for 1 0
28 IPv4 ranges for 1 0
0 IPv6 ranges for AD Andorra
8 IPv4 ranges for AD Andorra
...
Das Modul xt_geoip in den Speicher laden mit anschließender Prüfung.
$ modprobe xt_geoip
$ lsmod | grep ^xt_geoip
Die Ausgabe sollte ähnlich wie hier sein.
xt_geoip 16384 34
GeoIP mit iptables Regeln in Debian
Die GeoIP Integration für iptable auf Debian ode Ubuntu ist nun abgeschlossen, es können jetzt Befehle mit folgender Syntax ausgeführt werden.
Die iptables Ausgabe auf dem Debian mit GeoIP könnte in etwa wie die folgende aussehen.
Chain INPUT (policy DROP 259 packets, 13704 bytes)
num pkts bytes target prot opt in out source destination
1 68011 14M f2b-apache-auth tcp -- * * 0.0.0.0/0 0.0.0.0/0 multiport dports 80,443
2 155K 41M f2b-sshd tcp -- * * 0.0.0.0/0 0.0.0.0/0 multiport dports 22
3 272K 12M ufw-reject-input all -- * * 0.0.0.0/0 0.0.0.0/0
4 0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 -m geoip --source-country RU,CN
5 0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 -m geoip --source-country BY,CY
In diesem Beispiel wird Zeile 5 gelöscht.
$ iptables -D INPUT 5
ISO Country Code einer GeoIP Adresse abfragen.
$ apt install geoip-bin
Beispiel GeoIP Abfrage mit geoiplookup.
$ geoiplookup 61.219.11.151
GeoIP Country Edition: TW, Taiwan
Beispiel mit iptables und GeoIP
Ein Beispiel mit iptables und ISO Codes für Länder die als obskur oder als bekannte Sicherheitsrisikohäfen eingestuft werden und explizit gesperrt werden. Die ISO Codes der DACH Länder sollen zugelassen werden.
$ iptables -P INPUT DROP
$ iptables -A INPUT -m geoip --src-cc AT,CH,DE -j ACCEPT
$ iptables -N DROP_GEOIP
$ iptables -A DROP_GEOIP -m geoip --src-cc ID -j DROP
$ iptables -A DROP_GEOIP -m geoip --src-cc KP -j DROP
$ iptables -A DROP_GEOIP -m geoip --src-cc TJ -j DROP
$ iptables -A DROP_GEOIP -m geoip --src-cc TM -j DROP
$ iptables -A DROP_GEOIP -m geoip --src-cc TR -j DROP
$ iptables -A DROP_GEOIP -m geoip --src-cc UA -j DROP
$ iptables -A DROP_GEOIP -m geoip ! --src-cc AT,CH,DE -j DROP
$ iptables -A INPUT -j DROP_GEOIP
Das Argument (!) invertiert die übergebenen Werte, hierdurch die ISO (AT,CH,DE) von Sprung zu DROP ausgeschlossen werden.
Die iptables INPUT Chain überprüfen mit line-numbers, die Ausgabe wie folgt zu diesem Beispiel.
$ iptables -L INPUT --line-numbers -vn
Chain INPUT (policy DROP 0 packets, 0 bytes)
num pkts bytes target prot opt in out source destination
1 273K 12M ufw-after-logging-input all -- * * 0.0.0.0/0 0.0.0.0/0
2 273K 12M ufw-reject-input all -- * * 0.0.0.0/0 0.0.0.0/0
3 273K 12M ufw-track-input all -- * * 0.0.0.0/0 0.0.0.0/0
4 0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 -m geoip --source-country RU,CN
5 0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 -m geoip --source-country BY,CY
6 0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 -m geoip --source-country HK,KP
7 0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 -m geoip --source-country KG,KZ
8 0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 -m geoip --source-country UA,VN
9 0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 -m geoip --source-country MD,GE
10 0 0 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 -m geoip --source-country TW,TM
11 102 5329 DROP_GEOIP all -- * * 0.0.0.0/0 0.0.0.0/0
12 90 4827 DROP all -- * * 0.0.0.0/0 0.0.0.0/0 -m geoip ! --source-country AT,CH,DE
iptables-persistent
Die iptables Chains wird nach einem Neustart reaktiviert, dazu iptables-persistent installieren.
$ apt install iptables-persistent
Bestätige mit yes um die iptables während der installation zu sichern.
Die iptables Chains können mit iptables-save gesichert werden um sie zu einem späteren Zeitpunkt wiederherstellen zu können.
Später wurde festgestellt, dass die Bibliothek iptables-dev unter Debian 11 nicht mehr verfügbar ist, und durch libxtables-dev ersetzt wurde.
Erwartet wird von xt_geoip_build nun das DBIP-Format als input. Maxmind wird rausgeworfen. Wahrscheinlich, weil das neue „Build-Script“xt_geoip_buildden Download der CSV-Datei von db-ip.com erfordert, statt von MaxMind.
Führe die folgenden Befehle aus, um libxtables-dev zu installieren. Lade anschließend die Country Lite-Datenbank im DBIP-Format von db-ip.com herunter, entpacke dann die GZ Datei und konvertiere die CSV mit dem Script xt_geoip_build.