RDP-Dateien mit einem Zertifikat signieren


    Tags: , , ,

    Remotedesktop-Client (mstsc.exe)Beim Aufbau einer Verbindung über eine .rdp-Datei zeigt der Remotedesktop-Client in vielen Fällen eine Meldung an, welche vor der fehlenden Vertrauens­würdigkeit des Herausgebers warnt. Um diese zu vermeiden, muss man die RDP-Datei mit einem gültigen Zertifikat signieren. Zum Liefer­umfang von Windows gehört das dafür nötige Tool.

    Speichert man die Einstellungen einer RDP-Verbindung in einer Datei, um diese auf den Rechnern im Netzwerk bereitzustellen, dann beschwert sich der RDP-Client darüber, dass der Herausgeber der betreffenden RDP-Datei nicht identifiziert werden konnte.

    Der Grund für die Warnung liegt darin, dass eine .rdp-Datei nicht signiert ist. Eine bösartige RDP-Verbindung könnte in diesem Fall die Benutzer auf den Server eines Angreifers locken, auf dem sie verschiedenen Attacken ausgesetzt sind.

    Warnung in mstsc.exe vor dem Ausführen einer unsicheren Verbindung

    Im Prinzip könnten die Anwender die Option Nicht erneut nach Verbindungen mit diesem Computer fragen anhaken, um diese Meldung zu unterdrücken. In professionellen Netzwerken ist es aber durchaus sinnvoll, RDP-Dateien zu signieren, so dass die Verbindung als sicher gilt.

    Die Signierung von RDP-Dateien erfolgt über das Befehls­zeilen-Tool RDPSign.exe. Für diesen Zweck kann man verschiedene Zertifikate verwenden. Dafür eignen sich etwa Client- oder Server-Zertifikate sowie solche zum Signieren von Code.

    Von RDPSign unterstützte Optionen

    Das Zertifikat wird man in der Regel über eine interne Active Directory-CA ausstellen oder von einer externen Zertifizierungs­stelle beziehen. In beiden Fällen sollten die Clients den Ausstellern aufgrund eines bereits vorhandenen Stammzertifikats im lokalen Store automatisch trauen.

    Man kann auch ein selbstsigniertes Zertifikat verwenden, aber dann muss man dieses über Gruppen­richtlinien im Netzwerk verteilen. Es muss als Stammzertifikat auf allen Computern installiert sein, welche die signierte RDP-Datei nutzen sollen.

    RDP-Dateien mit RDPSign.exe signieren

    RDPSign.exe ist ein einfaches Tool. Interessant daran ist die Möglichkeit, die Signierung mit dem Schalter /l vorab zu testen.

    Dem Schalter /sha256 übergibt man den SHA-1 Fingerprint des Zertifikats, mit dem die Datei signiert werden soll. Zu beachten ist jedoch, dass das Zertifikat selbst mit SHA-256 signiert sein muss, weil neue Versionen von Windows dieses sonst mit dieser Fehlermeldung abweisen:

    Das angegebene Zertifikat kann nicht zum Signieren verwendet werden. Fehlercode: 0x8007000d

    Wenn das Zertifikat mit SHA-1 signiert wurde, dann verweigert RDPSign die Signierung mit dem Fehler 0x8007000d.

    Das Zertifikat muss im lokalen Zertifikatspeicher vorhanden sein. Den Thumbprint findet man in certmgr.msc oder certlm.msc auf der Registerkarte Details des Zertifikats.

    Thumbprint des Zertifikats auslesen, das für die Signierung verwendet wird

    Alternativ kann man den Thumbprint mit PowerShell ermitteln.

    Der Fingerabdruck darf keine Leerzeichen enthalten, alle Buchstaben und Zahlen müssen in einer Zeile stehen. Die Signierung der RDP-Datei erfolgt dann mit diesem Befehl:

    rdpsign.exe /sha256 da3e3a36e67f32e8e4cd96a35241ad871679ce1c c:\temp\dl20.rdp

    RDP-Datei mit rdpsign.exe signieren

    Die erfolgreiche Signierung erkennt man an der Ausgabe des Befehls, außerdem kann man die Signatur in der RDP-Datei prüfen, nachdem diese als Klartext vorliegt.

    Signatur einer RDP-Datei

    Mit RDPSign.exe ist es auch möglich, mehrere RDP-Dateien auf einmal zu signieren. Dazu muss man die Dateinamen am Ende des Befehls mit einem Komma voneinander trennen.

    Thumbprint per Gruppenrichtlinie verteilen

    Nach erfolgreicher Signierung der RDP-Datei erscheint keine Warnung mehr, wenn das verwendete Zertifikat gültig und auf dem lokalen Rechner vorhanden ist.

    Stattdessen zeigt der Dialog nun den Herausgeber des Zertifikats an, mit dem die RDP-Datei signiert wurde, und erwartet, dass der Benutzer diesen als vertrauenswürdig bestätigt.

    Der RDP-Client erwartet vom Benutzer, dass er den Herausgeber der RDP-Verbindung als vertrauenswürdig bestätigt.

    Dieses Verhalten des RDP-Clients kann man mit Hilfe einer Gruppenrichtlinie ändern, so dass er die Verbindung direkt aufbaut, ohne den Dialog zum Herausgeber anzuzeigen.

    Die Einstellung heißt SHA-1-Fingerabrdücke von Zertifikaten angeben, die vertrauenswürdige RDP-Herausgeber darstellen ("Specify SHA1 Thumbprints of certificates representing trusted .rdp publishers").

    Sie findet sich im Zweig Computer- und Benutzerkonfiguration unter Administrative Vorlagen => Windows-Komponenten => Remote­desktop­dienste => Remotedesktop­verbindungs­client.

    Gruppenrichtlinie, mit der sich die Bestätigung bei vertrauenswürdigen Zertifikaten unterdrücken lässt.

    Dort gibt man den SHA-1-Thumbprint des verwendeten Zertifikats ein, wobei man nur Großbuchstaben und keine Leerzeichen verwenden sollte.

    Zusammenfassung

    Wenn man Dateien für RDP-Verbindungen auf Clients bereitstellt, dann zeigt der RDP-Client eine Warnung an, wenn diese nicht signiert sind. Das Gleiche gilt, wenn man ein selbstsigniertes Zertifikat verwendet und dieses nicht auf den betreffenden Client übertragen wurde.

    Für die Signierung ist das Kommandozeilen-Tool RDPSign.exe zuständig, dem man den Thumbprint des Zertifikats sowie die Namen der .rdp-Dateien übergibt.

    Aber auch nach einer erfolgreichen Signierung der RDP-Datei sehen die User beim Aufbau einer Verbindung einen Dialog, in dem sie den Herausgeber des Zertifikats als vertrauenswürdig bestätigen müssen. Dieser lässt sich mit einer Gruppenrichtlinie unterdrücken.

    Täglich Know-how für IT-Pros mit unserem Newsletter

    Wir ver­wenden Ihre Mail-Adresse nur für den Ver­sand der News­letter.
    Es erfolgt keine per­sonen­be­zogene Auswertung.

    Bild von Thomas Joos

    Thomas Joos ist Consultant für mittlere und große Unternehmen im Bereich Security, Active Directory, Cloud und KI.

    Er hat über 100 Fachbücher zu IT-Themen für verschiedene Verlage geschrieben und veröffentlicht regelmäßig bei verschiedenen Portalen und Zeitschriften wie IT-Administrator, Computerwoche, Heise und vielen weiteren.

    Darüber hinaus ist er als Trainer für LinkedIn Learning tätig.

    // Kontakt: Web, E-Mail, Twitter //

    Verwandte Beiträge

    Weitere Links