Tutorial: Remote Desktop (RDP) über PowerShell aktivieren und deaktivieren
Hier ist ein ausführliches Tutorial, wie du den Remote Desktop (RDP) mithilfe der PowerShell unter Windows aktivieren und deaktivieren kannst.
Die Verwaltung von Remote-Desktop-Verbindungen über die PowerShell ist besonders nützlich für Administratoren, die Systeme aus der Ferne konfigurieren oder Aufgaben automatisieren möchten.
Voraussetzungen
- Administratorrechte: Die PowerShell muss zwingend als Administrator ausgeführt werden.
- Windows-Version: Funktioniert auf Windows 10/11 Pro/Enterprise und Windows Server. (Die Home-Edition unterstützt kein RDP-Hosting).
Teil 1: Remote Desktop aktivieren
Um RDP vollständig zu aktivieren, müssen zwei Schritte durchgeführt werden: Den Registry-Eintrag ändern und die Firewall-Regel zulassen.
Schritt 1: Registry-Eintrag ändern
Standardmäßig blockiert Windows eingehende Verbindungen. Mit diesem Befehl erlaubst du sie:
Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server' -Name "fDenyTSConnections" -Value 0
Schritt 2: Firewall-Regel freischalten
Damit der Datenverkehr durch die Windows-Firewall fließen kann, muss die entsprechende Regelgruppe aktiviert werden:
Enable-NetFirewallRule -DisplayGroup "Remotedesktop"
Hinweis: Falls dein System auf Englisch eingestellt ist, verwende den Gruppennamen "Remote Desktop".
Schritt 3: Authentifizierung auf Netzwerkkonfiguration (NLA) (Empfohlen)
Für mehr Sicherheit solltest du NLA aktivieren. Dies erzwingt eine Authentifizierung, bevor die Sitzung aufgebaut wird:
Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -Name "UserAuthentication" -Value 1
Teil 2: Remote Desktop deaktivieren
Wenn du den Fernzugriff wieder sperren möchtest, kehrst du die obigen Schritte einfach um.
Schritt 1: Registry-Eintrag ändern
Setze den Wert wieder auf 1, um Verbindungen zu verweigern:
Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server' -Name "fDenyTSConnections" -Value 1
Schritt 2: Firewall-Regel blockieren
Deaktiviere die Ausnahme in der Firewall:
Disable-NetFirewallRule -DisplayGroup "Remotedesktop"
Teil 3: Status überprüfen
Du kannst jederzeit prüfen, ob RDP aktuell erlaubt oder verboten ist, indem du den Registry-Wert abfragst:
$rdpStatus = Get-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server' -Name "fDenyTSConnections"
if ($rdpStatus.fDenyTSConnections -eq 0) {
Write-Host "Remote Desktop ist AKTIVIERT" -ForegroundColor Green
} else {
Write-Host "Remote Desktop ist DEAKTIVIERT" -ForegroundColor Red
}
Zusammenfassung für den Schnelleinsatz (Cheat Sheet)
| Aktion | PowerShell Befehl |
|---|---|
| Aktivieren | Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server' -Name "fDenyTSConnections" -Value 0 |
| Firewall öffnen | Enable-NetFirewallRule -DisplayGroup "Remotedesktop" |
| Deaktivieren | Set-ItemProperty -Path 'HKLM:\System\CurrentControlSet\Control\Terminal Server' -Name "fDenyTSConnections" -Value 1 |
| Firewall schließen | Disable-NetFirewallRule -DisplayGroup "Remotedesktop" |
Sicherheitshinweis: Aktiviere RDP nur, wenn es wirklich benötigt wird, und stelle sicher, dass starke Passwörter verwendet werden, da RDP ein häufiges Ziel für Brute-Force-Angriffe ist.