Standalone Server absichern

Gestern Abend habe ich mein LABOR neu installiert und dann war sie wieder die Frage: „Uff, was/wo muss ich jetzt überall konfigurieren, um den Server bestmöglich abzusichern?!“
Hier will ich einen kleinen Überblick geben, was ich in meinem Umfeld hier als sinnvoll & ausreichend erachte.

  1. Hostbased-Firewall
    1. Allgemein
    2. Inbound (eingehend)
    3. Outbound (ausgehend)
  2. Lokale Accounts
  3. Windows Security Center
  4. Per GPO Privilegien einschränken
  5. Windows Updates

1. Hostbased-Firewall

Allgemein

Noch bevor der Server ans Netzwerk geht, habe ich die Firewall eingestellt. Standardmäßig werden Inbound-Verbindungen großteils geblockt und Outbound-Verbindungen alle zugelassen. Hier habe ich das so eingestellt, dass auch Outbound-Verbindungen geblockt werden. Das kann man ganz einfach in der Übersicht machen, indem man auf „Windows Defender Firewall Properties“ klickt und dann für jedes Profil bei „Outbound connections“ auf „Block“ stellt.

Optional kann man noch im Bereich „Settings“ auf „Customize“ klicken und die Benachrichtigung aktivieren. Zudem kann man im Bereich „Logging“ noch für jedes Profil eine eigene Log-Datei einstellen, sowie deren maximale Größe (und damit Historisierung) festlegen, sowie dass abgewiesene Verbindungen ebenfalls protokolliert werden sollen.

Als nächstes folgen die einzelnen Firewall-Richtungen. Hier habe ich erstmal grob eingeschränkt, man kann das Ganze natürlich noch viel genauer einstellen.

Inbound (eingehend)

Die Inbound-Regeln habe ich auf die notwendigsten beschränkt:

Die unterste (blau markierte) Regel habe ich manuell angelegt; sie dient dazu, dass ich aus meinem lokalen Netzwerk per RDP auf dem Server anmelden kann. Das kann man natürlich bei Bedarf weiter einschränken (bspw. von welchem meiner Clients das gehen soll oder zu welcher IP-Adresse / Netzwerkadapter auf dem Server das gehen soll).

Optional kann man die „mDNS“-Regeln auch aktivieren. In meinem Netzwerk benötige ich sie erstmal nicht. Was mDNS ist, wird hier gut erklärt: mDNS – Wie funktioniert Multicast DNS? – IONOS

Outbound (ausgehend)

Die Outbound-Regeln habe ich auf die notwendigsten beschränkt:

Die unterste (blau markierte) Regel habe ich manuell angelegt; sie dient dazu, dass man auf Webseiten (Port 80 & 443) kommt. Das ist u.a. notwendig für Windows Update Service.

2. Lokale Accounts

Per Default sind die Accounts „Administrator“, „Guest“ (Deaktiviert), „DefaultAccount“ (Deaktiviert)“ und „WDAGUtilityAccount“ (Deaktiviert) vorhanden.
Im ersten Schritt habe ich mir drei separate Accounts angelegt:

AccountVerwendungszweckLokale GruppeAnmeldung
Voller AdminErsetzt den Standard-Administrator, dieser wird deaktiviert und & umbenanntAdministratorsNur Lokal
HyperV AdminDieser Account darf alle Tätigkeiten des HyperV-Dienstes steuern (VMs anlegen usw.)Hyper-V AdministratorsNur Lokal
RDP UserMit diesem Account kann man sich nur per RDP auf den Server verbinden, Programme starten aber nichts ändern/installierenRemote Desktop UsersNur RDP

3. Einstellungen im Windows Security Center

Hier gibt es ein paar Dinge, die standardmäßig deaktiviert sind, die man aber ggfs. aktivieren sollte:

  • Im „Virus & thread protection“-Bereich auf „Manage Controlled folder access“ klicken und den Schalt auf „On“ stellen.
  • Im „App & browser control“-Bereich von „Warn“ auf „Block“ stellen. Das ist ein Server, hier wollen wir eigentlich gar nicht rumsurfen und Dinge downloaden 😉
  • Im „Device security“-Bereich bei der „Core isolation“ auf den blauen „… details“-Text klicken und dort dann den Schalter auf „On“ stellen. ⚠ Anschließend ist ein Neustart notwendig.

4. Per lokaler GPO Privilegien einschränken

Da es sich um einen Standalone-Server handelt, der nicht Mitglied in einer Domäne ist, müssen wir hier lokale Gruppenrichtlinien einstellen.

  • In „Computer Configuration > Windows Settings > Security Settings > Account Policies > Password Policy“ die Passwortrichtlinien anpassen
  • In „Computer Configuration > Windows Settings > Security Settings > Account Policies > Account Lockout Policy“ die Aussperrzeit bei X fehlerhaften Logins anpassen
  • In „Computer Configuration > Windows Settings > Security Settings > Local Policies > Audit Policy“ die gewünschten Audit-Möglichkeiten aktivieren („Success“ & „Failure“). Ich habe bei mir alle aktiviert.
  • In „Computer Configuration > Windows Settings > Security Settings > Local Policies > User Rights Assignment“ sehe ich folgende vier als notwendig an (rot = rausgenommen // grün = eingetragen):
    • Allow logon locally: Administrators, Users, Backup Operators
    • Allow logon through RDS: Administrators, Remote Desktop Users
    • Deny logon locally: Remote Desktop Users
    • Deny logon through RDS: Administrators, Hyper-V Administrators
    • Force shutdown from a remote system: Administrators, Voller Admin
    • Shutdown the system: Administrators, Backup Operators, Voller Admin
  • In „Computer Configuration > Windows Settings > Security Settings > Local Policies > Security Options“ sehe ich folgende Optionen als wichtig an:
PolicyStandard-WertNeuer Wert
Accounts: Administrator account statusEnabledDisabled
Accounts: Block Microsoft accountsNot definedUsers can’t add or log on with Microsoft accounts
Accounts: Guest account statusDisabledDisabled
Accounts: Rename administrator account„Administrator“„local.admin.block“
Accounts: Rename guest account„Guest“„local.guest.block“
Interactive logon: Display user information when the session is lockedNot defined„User display name, domain and user names“
oder
„Do not display user information“
Interactive logon: Don’t display last signed-inDisabledEnabled
Interactive logon: Don’t display username at sign-inNot definedEnabled
Interactive logon: Machine inactivity limit.Not definedEnabled; 1800 Sekunden = 30 Minuten
Interactive logon: Prompt user to change password before expiration„5 days“„30 days“
User Account Control: Use Admin Approval Mode for the built-in Administrator accountNot definedEnabled
Optional:
Interactive logon: Message title for users attempting to log on„leer“„Titel deiner Wahl“
Interactive logon: Message text for users attempting to log on„leer“„Text deiner Wahl“
Die „Interactive logon message“

5. Windows Updates

Auch LABOR-Systeme sollte man möglichst aktuell halten. Da ich hier keinen manuellen Aufwand haben möchte, stelle ich das so ein, dass die Updates recht häufig automatisch gesucht & installiert werden. Bei Bedarf dann eben auch inkl. des Neustarts.
In „Computer Configuration > Administrative Templates > Windows Components > Windows Updates“ sehe ich folgende Optionen als gut an:

PolicyEinstellung
Automatic Updates detection frequency2 Stunden
Configure Automatic Updates4 – Auto download and schedule the install
0 – Every day
10:00
✔ Every Week
✔ Install updates for other Microsoft products
Display options for update notificationsEnabled
1 – Disable all notifications, excluding for restart warnings
Remove access to „Pause updates“ featureEnabled
Reschedule Automatic Updates scheduled installationsEnabled; 15 Minuten
Specifiy deadline before auto-restart for update-installationEnabled
Quality updates: 2 days
Feature updates: 2 days
Specify deadlines before automatic updates and restarts Enabled
Quality updates: 2 days
Feature updates: 7 days (default)

Hier die „Enabled“-Policies als Screenshot:

Ronny Böttcher

Systemadministrator seit 2007 und seit 2012 als Application Administrator bei 1&1 in Deutschland am Standort Karlsruhe. Weitere Interessen in: Storage Spaces (Direct), HCI / HyperV.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.