Profile überprüfen und Firewall aktivieren
Die Windows-Firewall verfügt über drei Profile: Domäne / Privat / Öffentlich. Auf VPS ist in der Regel Öffentlich aktiviert. Sichere Basis – eingehend: Blockieren, ausgehend: Zulassen.
GUI: „Windows Defender Firewall mit erweiterter Sicherheit“ → Root-Profilbildschirm.
PowerShell:
Get-NetFirewallProfile | Select Name,Enabled,DefaultInboundAction,DefaultOutboundAction
Set-NetFirewallProfile -Profile Domain,Private,Public -Enabled True
RDP sicher machen (3389/TCP)
RDP ist für die Verwaltung von Windows VPS erforderlich, kann jedoch nicht für „jeden“ geöffnet werden. Die Vorgehensweise ist einfach: Aktivieren Sie vorübergehend die Standardregeln, erstellen Sie Ihre eigene eingeschränkte Regel basierend auf der IP-Quelle und deaktivieren Sie dann die „allgemeinen“ Regeln.
GUI (Assistent für neue Regeln):
1. Eingehende Regeln → Neue Regel… → Port
2. TCP, Spezifische lokale Ports: 3389
Verbindung zulassen
Nachdem Sie es erstellt haben, gehen Sie zu Eigenschaften → Bereich und geben Sie Remote-IP-Adressen (Ihre statische IP/VPN-Subnetz) an. Dies ist für die Sicherheit von entscheidender Bedeutung.
PowerShell:
# When connecting for the first time: enable the standard group
Enable-NetFirewallRule -DisplayGroup "Remote Desktop"
# Strict rule only from your IP
New-NetFirewallRule -DisplayName "RDP inbound (admin IP only)" `
-Direction Inbound -Protocol TCP -LocalPort 3389 -Action Allow `
-RemoteAddress 203.0.113.50 -Profile Any
# After verification, disable “broad” RDP rules.
Disable-NetFirewallRule -DisplayGroup "Remote Desktop"
Wir öffnen nur das, was wirklich notwendig ist
IIS/HTTPS
New-NetFirewallRule -DisplayName "HTTP (80)" -Direction Inbound -Protocol TCP -LocalPort 80 -Action Allow
New-NetFirewallRule -DisplayName "HTTPS (443)" -Direction Inbound -Protocol TCP -LocalPort 443 -Action Allow
MS SQL (falls verwendet)
New-NetFirewallRule -DisplayName "MSSQL (1433)" -Direction Inbound -Protocol TCP -LocalPort 1433 -Action Allow
(Wenn Sie von eingeschränkten Netzwerken aus zugreifen, legen Sie RemoteAddress auch für diese Regeln fest.)
Aktivieren Sie die Protokollierung (dies ist sehr hilfreich für die Fehlersuche).
Zeichnen Sie zulässige und blockierte Verbindungen in pfirewall.log auf.
GUI:
PowerShell:
Set-NetFirewallProfile -Profile Domain,Private,Public `
-LogFileName "C:\Windows\System32\LogFiles\Firewall\pfirewall.log" `
-LogMaxSizeKilobytes 32768 -LogAllowed True -LogBlocked True
Schnellprüfung von außen
Überprüfen Sie vom Client-PC aus, ob die erforderlichen Ports zugänglich sind:
# RDP
Test-NetConnection vps.example.ru -Port 3389
# Веб
Test-NetConnection vps.example.ru -Port 80
Test-NetConnection vps.example.ru -Port 443
# SQL (if necessary)
Test-NetConnection vps.example.ru -Port 1433
TcpTestSucceeded: True – Die Regel funktioniert, der Port ist verfügbar. Wenn False – Überprüfen Sie das Regelprofil, den Geltungsbereich (IP-Quelle) und die externen ACLs beim Anbieter.
Eine kurze Checkliste mit Fehlern
- RDP „für alle offen“ gelassen: Fügen Sie RemoteAddress hinzu und deaktivieren Sie die standardmäßigen allgemeinen Regeln.
- Falsches Profil: Die Regel ist auf „Privat“ gesetzt, aber der Server befindet sich im öffentlichen Bereich.
- Keine Protokolle: Aktivieren Sie die Protokollierung – andernfalls sind „unsichtbare“ Blockierungen schwer zu erkennen.
- Die externe Firewall/SG des Windows-VPS-Anbieters vergessen: Überprüfen Sie diese parallel.