Port in der Windows Firewall freigeben
Um einen Port auf einem Windows-VPS freizugeben, arbeiten Sie direkt in der Firewall von Windows Server, der Windows Defender Firewall: Der Kundenbereich von OuiHeberg hat keine Netzwerk-Firewall für VPS. Diese Anleitung zeigt, wie Sie die Firewall prüfen, einen Port über die GUI oder mit PowerShell freigeben, Remotedesktop auf Ihre Adresse beschränken und die Protokolle lesen. Führen Sie die Befehle in PowerShell als Administrator in einer RDP-Sitzung aus.
Den Status der Windows-Server-Firewall prüfen
Windows wendet je nach Netzwerk eines von drei Profilen an. Auf einem VPS ist es meist das Profil Public.
| Profil | Wann es gilt |
|---|---|
| Domain | Maschine ist Mitglied einer Active-Directory-Domäne |
| Private | Als vertrauenswürdig eingestuftes Netzwerk |
| Public | Unbekanntes Netzwerk, der Fall eines VPS im Internet |
Zeigen Sie den Status der drei Profile und ihre Standardaktion an.
Get-NetFirewallProfile | Select Name, Enabled, DefaultInboundAction, DefaultOutboundAction
Jedes Profil sollte Enabled auf True zeigen. Steht eines auf False, schalten Sie die Firewall für alle drei wieder ein.
Set-NetFirewallProfile -Profile Domain,Private,Public -Enabled True
Der richtige Ausgangspunkt: allen eingehenden Verkehr blockieren, außer dem, was Sie erlauben, und ausgehenden Verkehr durchlassen.
Set-NetFirewallProfile -Profile Domain,Private,Public `
-DefaultInboundAction Block `
-DefaultOutboundAction Allow
Die Bezeichnungen von Windows stehen hier auf Englisch, in der Sprache des gelieferten Systems. Die Firewall-Konsole öffnet sich mit wf.msc. Ihre Startseite fasst die drei Profile zusammen und zeigt das aktive an.

Einen Port über die GUI freigeben
Drücken Sie die Windows-Taste, tippen Sie
wf.mscund bestätigen Sie mit Enter.Klicken Sie mit der rechten Maustaste auf Inbound Rules und dann auf New Rule….
Wählen Sie im Schritt Rule Type die Option Port und klicken Sie auf Next.
Wählen Sie TCP oder UDP und tragen Sie den Port unter Specific local ports ein, zum Beispiel
443.Behalten Sie Allow the connection bei.
Lassen Sie die drei Profile angehakt.
Geben Sie der Regel einen eindeutigen Namen, zum Beispiel
Allow-HTTPS-443-Inbound, und klicken Sie auf Finish.
Die Regel gilt sofort, ohne Neustart.

Der Schritt Rule Type bietet vier Regeltypen.
| Typ | Verwendung |
|---|---|
| Program | Eine ausführbare Datei (.exe) erlauben oder blockieren |
| Port | Einen TCP- oder UDP-Port öffnen oder blockieren |
| Predefined | Eine von Windows mitgelieferte Regelgruppe aktivieren (Remotedesktop, Dateifreigabe…) |
| Custom | Port, Programm und Quell- oder Ziel-IP-Adressen kombinieren |
Eine ausgehende Regel legen Sie genauso unter Outbound Rules an. Sie dient vor allem dazu, ein Programm oder den Server daran zu hindern, eine bestimmte Adresse oder einen bestimmten Port zu erreichen.

Einen Port mit PowerShell freigeben
PowerShell ist schneller und lässt sich auf einem anderen Server unverändert wiederholen. Eine Zeile genügt, um einen TCP-Port zu öffnen. Ersetzen Sie 8080 durch Ihren Port.
New-NetFirewallRule -DisplayName "Allow-Port-8080" -Direction Inbound -Protocol TCP -LocalPort 8080 -Action Allow -Profile Any
Für eine ausgehende Regel ersetzen Sie Inbound durch Outbound. Zum Blockieren ersetzen Sie Allow durch Block. Hier derselbe Befehl über mehrere Zeilen, für die Webports 80 und 443.
New-NetFirewallRule `
-DisplayName "Allow-HTTP-HTTPS-Inbound" `
-Direction Inbound `
-Protocol TCP `
-LocalPort @(80, 443) `
-Action Allow `
-Profile Any
Einen Port auf bestimmte Adressen beschränken
Ein Verwaltungsdienst oder eine Datenbank sollte nicht für das ganze Internet offen sein. Der Parameter -RemoteAddress beschränkt die Regel auf eine Adresse oder einen Bereich. Beispiel: SQL Server (Port 1433) nur aus einem Subnetz, dann WinRM (5985 und 5986) nur von einer Verwaltungsadresse.
# SQL Server, nur aus einem Subnetz
New-NetFirewallRule `
-DisplayName "Allow-SQLServer-LAN" `
-Direction Inbound `
-Protocol TCP `
-LocalPort 1433 `
-RemoteAddress "10.0.0.0/24" `
-Action Allow `
-Profile Any
# WinRM HTTP (5985) und HTTPS (5986), nur von einer Adresse
New-NetFirewallRule `
-DisplayName "Allow-WinRM-Management" `
-Direction Inbound `
-Protocol TCP `
-LocalPort @(5985, 5986) `
-RemoteAddress "203.0.113.10" `
-Action Allow `
-Profile Any
Um Ihre VPS untereinander ohne Umweg über das Internet zu verbinden, erklärt die Anleitung Zwei VPS über ein privates Netzwerk verbinden, wie Sie das private Netzwerk aktivieren.
Remotedesktop auf Ihre IP-Adresse beschränken
Port 3389 wird ständig von Bots abgesucht. Hat Ihr Anschluss eine feste Adresse, reservieren Sie Remotedesktop für sie.
Legen Sie eine Regel an, die Port 3389 von Ihrer Adresse erlaubt. Ersetzen Sie
203.0.113.10durch Ihre Adresse.New-NetFirewallRule ` -DisplayName "Allow-RDP-MyIP" ` -Direction Inbound ` -Protocol TCP ` -LocalPort 3389 ` -RemoteAddress "203.0.113.10" ` -Action Allow ` -Profile AnyÖffnen Sie eine zweite RDP-Sitzung, um zu prüfen, dass Sie weiterhin hineinkommen. Lassen Sie die erste offen.
Deaktivieren Sie die ursprünglichen Remotedesktop-Regeln, die jede Adresse zulassen.
Disable-NetFirewallRule -DisplayGroup "Remote Desktop"
Da eingehender Verkehr standardmäßig blockiert ist, kommt jetzt nur noch Ihre Adresse durch.
Legen Sie keine
Block-Regel auf Port 3389 an. In Windows hat eine Blockierregel Vorrang vor einer Zulassungsregel und würde auch Ihre Adresse aussperren. Haben Sie den Zugang verloren, öffnen Sie die Konsole über die VPS-Seite im Kundenbereich und korrigieren Sie die Regel.
Ändert sich Ihre Adresse oft, gehen Sie über ein VPN und erlauben Sie dessen Bereich. Um den Remotedesktop-Port zu ändern, folgen Sie der Anleitung RDP-Port auf einem Windows Server VPS ändern.
Einen Port oder eine IP-Adresse blockieren
# Eingehenden Port blockieren
New-NetFirewallRule `
-DisplayName "Block-Port-8080-Inbound" `
-Direction Inbound `
-Protocol TCP `
-LocalPort 8080 `
-Action Block `
-Profile Any
# Quelladresse blockieren (eingehend)
New-NetFirewallRule `
-DisplayName "Block-IP-Suspect" `
-Direction Inbound `
-RemoteAddress "198.51.100.42" `
-Action Block `
-Profile Any
# Ausgehende Verbindungen zu einer Adresse blockieren
New-NetFirewallRule `
-DisplayName "Block-Outbound-IP" `
-Direction Outbound `
-RemoteAddress "198.51.100.42" `
-Action Block `
-Profile Any
Eine Blockierregel hat Vorrang vor allen Zulassungsregeln für denselben Verkehr.
Vordefinierte Windows-Regeln aktivieren
Windows Server bringt fertige Regelgruppen mit. Aktivieren Sie sie gruppenweise statt einzeln.
| Gruppe | Verwendung |
|---|---|
| Remote Desktop | Remotedesktop-Verbindungen |
| File and Printer Sharing | SMB-Dateifreigabe |
| Windows Management Instrumentation (WMI) | WMI-Fernverwaltung |
| Windows Remote Management | PowerShell-Remoting (WinRM) |
| Core Networking | Grundlegender Netzwerkverkehr (DNS, DHCP, ICMP) |
| Network Discovery | Netzwerkerkennung |
Mit netsh oder mit PowerShell, ganz wie Sie möchten.
netsh advfirewall firewall set rule group="remote desktop" new enable=Yes
netsh advfirewall firewall set rule group="Windows Remote Management" new enable=Yes
netsh advfirewall firewall set rule group="File and Printer Sharing" new enable=Yes
Enable-NetFirewallRule -DisplayGroup "Remote Desktop"
Enable-NetFirewallRule -DisplayGroup "Windows Remote Management"
Um Ping zu erlauben, beschreibt die Anleitung Ping in der Windows Firewall erlauben die ICMP-Regeln.
Blockierten Verkehr protokollieren
Das Firewall-Protokoll zeigt, welche Verbindung abgewiesen wurde, und macht Portscans sichtbar. Aktivieren Sie es für alle drei Profile.
Set-NetFirewallProfile -Profile Domain,Private,Public `
-LogFileName "%SystemRoot%\System32\LogFiles\Firewall\pfirewall.log" `
-LogMaxSizeKilobytes 4096 `
-LogAllowed True `
-LogBlocked True
Dieselbe Einstellung geht auch mit netsh.
netsh advfirewall set allprofiles logging filename "%SystemRoot%\System32\LogFiles\Firewall\pfirewall.log"
netsh advfirewall set allprofiles logging maxfilesize 4096
netsh advfirewall set allprofiles logging droppedconnections enable
netsh advfirewall set allprofiles logging allowedconnections enable
Das Protokoll liegt unter C:\Windows\System32\LogFiles\Firewall\pfirewall.log. Das sind seine nützlichen Spalten.
| Spalte | Inhalt |
|---|---|
| date, time | Datum und Uhrzeit des Ereignisses |
| action | ALLOW oder DROP |
| src-ip, dst-ip | Quell- und Zieladresse |
| src-port, dst-port | Quell- und Zielport |
| path | RECEIVE für eingehend, SEND für ausgehend |
Dieser Befehl zeigt die letzten 50 Blockierungen.
Get-Content "C:\Windows\System32\LogFiles\Firewall\pfirewall.log" |
Where-Object { $_ -match "DROP" } |
Select-Object -Last 50
Regeln verwalten und sichern
Listen Sie die aktiven Regeln auf, sortiert nach Richtung.
Get-NetFirewallRule | Where-Object { $_.Enabled -eq "True" } |
Select-Object DisplayName, Direction, Action, Profile |
Sort-Object Direction
Dieselbe Übersicht kann Protokoll und Port jeder Regel anzeigen.
Get-NetFirewallRule | Where-Object { $_.Enabled -eq "True" } |
ForEach-Object {
$rule = $_
$portFilter = $rule | Get-NetFirewallPortFilter
[PSCustomObject]@{
Name = $rule.DisplayName
Direction = $rule.Direction
Action = $rule.Action
Protocol = $portFilter.Protocol
LocalPort = $portFilter.LocalPort
}
} | Format-Table -AutoSize
Deaktivieren Sie eine Regel lieber, statt sie zu löschen. So können Sie sie wieder aktivieren.
# Deaktivieren
Disable-NetFirewallRule -DisplayName "Allow-Port-8080"
# Wieder aktivieren
Enable-NetFirewallRule -DisplayName "Allow-Port-8080"
# Endgültig löschen
Remove-NetFirewallRule -DisplayName "Allow-Port-8080"
Exportieren Sie alle Regeln vor einer größeren Änderung. Der Import stellt die exportierte Konfiguration wieder her.
netsh advfirewall export "C:\Backup\firewall-backup.wfw"
netsh advfirewall import "C:\Backup\firewall-backup.wfw"
Für einen monatlichen Stand der aktiven Regeln exportieren Sie sie als CSV.
Get-NetFirewallRule | Where-Object { $_.Enabled -eq "True" } |
Export-Csv "C:\Audit\firewall-rules-$(Get-Date -Format 'yyyy-MM').csv" -NoTypeInformation
Eine abgewiesene Verbindung untersuchen
Die Regel existiert und ist aktiv, aber die Verbindung scheitert? Prüfen Sie diese Punkte der Reihe nach.
Lauscht der Dienst auf dem Port?
# Auf dem Server: lauscht ein Programm auf Port 443?
Get-NetTCPConnection -LocalPort 443 -State Listen
Test-NetConnection -ComputerName localhost -Port 443
# Von Ihrem Windows-PC aus (Adresse durch die des VPS ersetzen)
Test-NetConnection -ComputerName 203.0.113.50 -Port 443 -InformationLevel Detailed
Ist TcpTestSucceeded auf dem Server True und von Ihrem PC aus False, blockiert die Firewall. Ist es auch auf dem Server False, lauscht der Dienst nicht und das Problem liegt bei der Anwendung.
Hat eine Blockierregel Vorrang?
Eine allgemeinere Block-Regel setzt sich gegen Ihre Allow-Regel durch. Listen Sie die aktiven Blockierregeln auf.
Get-NetFirewallRule -Direction Inbound -Action Block -Enabled True |
Select-Object DisplayName, Profile
Gilt die Regel für das richtige Profil?
Eine Regel für das Profil Private greift nicht, wenn der VPS im Profil Public ist. Zeigen Sie das aktive Profil und den Namen der Schnittstelle an.
Get-NetConnectionProfile | Select-Object Name, InterfaceAlias, NetworkCategory
Am einfachsten erweitern Sie die Regel auf alle Profile. Die Schnittstelle auf das Profil Private umzustellen geht auch, wendet dann aber alle Regeln dieses Profils auf sie an.
# Regel auf alle Profile erweitern
Set-NetFirewallRule -DisplayName "Allow-Port-8080" -Profile Any
# Oder Schnittstelle auf Private umstellen (Name aus InterfaceAlias)
Set-NetConnectionProfile -InterfaceAlias "Ethernet" -NetworkCategory Private
Was sagt das Protokoll?
# Blockierungen auf Port 8080
Get-Content "C:\Windows\System32\LogFiles\Firewall\pfirewall.log" |
Where-Object { $_ -match "DROP" -and $_ -match "8080" }
Die Spalte path bestätigt die Richtung der Blockierung, eingehend oder ausgehend.
Brauchen Sie Hilfe?
Eröffnen Sie ein Ticket über Tickets › Ticket öffnen oder über die Kachel Support kontaktieren unten auf der VPS-Seite. Wählen Sie im Feld Betreffender Dienst den VPS aus, das spart dem Team Zeit. Sie können Ihre Frage auch auf dem Discord von OuiHeberg stellen.
Windows Server 2025 inklusive Lizenz, Remotedesktop-Zugang und Verwaltung im Kundenbereich.
Angebote ansehen →