Wie kann ich Probleme mit der Zertifikatkonfiguration in Remotedesktopdiensten umgehen?

32

Ich richte eine Remotedesktopdienste-Farm ein und habe Probleme beim Konfigurieren der zu verwendenden Zertifikate. Eine Demonstration des Problems, das ich sehe, finden Sie in Schritt 4.

An dieser Stelle bin ich überzeugt, dass es Probleme mit der Benutzeroberfläche gibt, und suche nach Wegen, um sie zu umgehen. Gibt es eine Möglichkeit, Zertifikate in Remotedesktopdiensten so zu konfigurieren, dass die Einstellungen beibehalten werden und sich in der GUI widerspiegeln? Wenn nicht, kann ich dann überprüfen, ob die Einstellungen korrekt sind?

Schritt 1 - Zu verwendendes Zertifikat erstellen.

Ich habe ein Zertifikat für die Verwendung mit RD Web Access konfiguriert. Das Zertifikat wird in der MMC "Zertifikate" auf meinem RD-Verbindungsbroker gespeichert, und ich konfiguriere die Farm von diesem Computer aus. Zertifikat

Ich habe festgestellt, dass die folgenden Eigenschaften erforderlich sind, indem RD Web Access ein eigenes Zertifikat generieren lässt:

  • Erweiterte Schlüsselverwendung
    • Serverauthentifizierung
    • Client-Authentifizierung
      • Dies ist möglicherweise nicht erforderlich, das selbstsignierte Zertifikat enthält es jedoch.
  • Schlüsselverwendung
    • Digitale Unterschrift
    • Schlüsselvereinbarung
  • Betreff Alternativer Name
    • DNS-Name = domain.com

Umweg über die Erstellung selbstsignierter Zertifikate

Als schnellen Umweg konnte ich ein Problem beim Erstellen selbstsignierter Zertifikate mit Powershell umgehen. Die Dokumentation zum Cmdlet New-RDCertificate enthält das folgende Beispiel:

PS C:\> $password = ConvertTo-SecureString -string "password" -asplaintext -force
New-RDCertificate -Role RDWebAccess -DnsName "test-rdwa.contoso.com" -Password $password -ConnectionBroker rdcb.contoso.com -ExportPath "c:\test-rdwa.pfx"

Wenn Sie dies in die Shell eingeben, wird eine Fehlermeldung angezeigt, die besagt, dass eine Funktion Get-Servernicht gefunden werden kann. Vor der Verwendung New-RDCertificatemüssen Sie das RemoteDesktop-Modul mit importieren Import-Module RemoteDesktop.

Schritt 2 - Beobachten Sie das Out-of-Box-Verhalten

Wenn Sie das Dialogfeld Bereitstellungseigenschaften zum ersten Mal aufrufen, indem Sie zu Server-Manager -> Remotedesktopdienste -> Sammlungen navigieren und in der Dropdown-Liste "AUFGABEN" in der Gruppierung "SAMMLUNGEN" die Option "Bereitstellungseigenschaften bearbeiten" auswählen, wird der folgende Bildschirm angezeigt : Bildbeschreibung hier eingeben

Dieses Fenster ist irreführend, da das levelFeld als "Nicht konfiguriert" aufgeführt ist. Wenn ich das richtig verstehe, verwenden alle drei Rollendienste ein selbstsigniertes Zertifikat. Für die RD-Webzugriffsrolle kann dies durch Aufrufen der Website überprüft werden: Zertifikatsfehler

Das verwendete Zertifikat wird auch in der Zertifikats-MMC angezeigt: Zertifikate MMC mit dem RD-Webzugriffszertifikat

Schritt 3 - Neues Zertifikat zuweisen

Im Dialogfeld Bereitstellungseigenschaften kann ich mein vorhandenes Zertifikat auswählen. Das Zertifikat muss in der MMC für Zertifikate lokaler Computer im Zertifikatspeicher "Personal" abgelegt werden. Der private Schlüssel muss exportierbar sein und Sie müssen das Kennwort angeben. Ich habe mein Zertifikat vorübergehend in eine Datei mit dem Namen " temp.pfxKennwort" exportiert und dann von dort in die Remotedesktopdienste importiert.

Sobald dies erledigt ist, zeigt die GUI an, dass sie bereit ist, die neue Konfiguration zu akzeptieren. bereit, Zertifikat zu akzeptieren

Sobald ich auf die Schaltfläche "Übernehmen" geklickt habe, zeigt die GUI den Erfolg an. Bildbeschreibung hier eingeben

Dies kann überprüft werden, indem Sie die RD Web Access-Website ein zweites Mal besuchen. Es liegt kein Zertifikatfehler vor. Bildbeschreibung hier eingeben

Schritt 4 - Die GUI behält ihren Status nicht bei

Wenn die GUI geschlossen und erneut geöffnet wird, scheinen alle diese Einstellungen verloren zu gehen. Einstellungen gehen verloren

Das von mir konfigurierte Zertifikat wird derzeit noch verwendet. Ich kann weiterhin ohne Zertifikatfehler auf die RD Web Access-Website zugreifen.

Seltsamerweise wird dieses Fenster auf die Stufe "Nicht vertrauenswürdig" aktualisiert, wenn ich die Schaltfläche "Neues Zertifikat erstellen ..." verwende, um ein selbstsigniertes Zertifikat zu erstellen. Diese Einstellung bleibt dann beim Öffnen und Schließen des Dialogfelds Bereitstellungseigenschaften erhalten.

Kann ich irgendetwas tun, damit meine Einstellungen stecken bleiben? Ich habe das Gefühl, dass etwas nicht stimmt, wenn die GUI behauptet, ich habe Zertifikate nicht vollständig konfiguriert.

Michael Steele
quelle
7
Dies ist eine sehr gut durchdachte Frage. Ein dickes Lob.
Ryan Ries
Ausgezeichnete Frage; Schade, ich kann nicht mehr +1 vergeben. Ich habe kein Testlabor, aber einige gute Links gefunden: technet.microsoft.com/en-us/library/cc730805.aspx . technet.microsoft.com/en-us/library/cc725949.aspx youtube.com/watch?v=D6UBsuCuJs8 und rivald.blogspot.com/2011/06/… Auch: blog.kristinlgriffin.com/2010/07/…
Lizz
Hast du noch Glück, Michael?
Lizz
@Lizz Soweit ich weiß, wird das Zertifikat, das wir für den RD Web Access-Rollendienst verwenden, von Clients akzeptiert. Die Benutzeroberfläche meldet weiterhin "Nicht konfiguriert", obwohl das angegebene Zertifikat tatsächlich verwendet wird.
Michael Steele
Wie deine Unschärfe. Nicht die traditionelle Art.
StackExchange User

Antworten:

2

Ich habe gestern unsere Farm überprüft und festgestellt, dass Windows 2008 ist ... Ihre ist 2012. Ich bin sicher, dass es große Unterschiede gibt, aber ich hoffe, meine Informationen helfen.

Öffnen von MMC -> Zertifikate -> Computerkonto Ich sehe 2 Zertifikate im Ordner "Persönlich / Zertifikate":

  • Selbstsigniertes Zertifikat (gleicher Aussteller und Betreff)
  • Zertifikat ausgestellt von unserer Domain CA

Das selbstsignierte Zertifikat zeigt einen Fehler in den Details. Hat Ihr Zertifikat den gleichen Fehler? Error

Um diesen Fehler zu beheben, kopieren Sie einfach das Zertifikat aus dem Unterordner "personal / Certificates" und fügen Sie es in den Ordner "Trusted Root Certification Authorities / Certificates" ein. Mit diesem Schritt gibt das gleiche Zertifikat keinen Fehler. OK Zertifikat

Danach gibt es nur noch zwei Stellen, an denen Sie das von mir gefundene Zertifikat konfigurieren (in RDS Windows 2008).

Unser RemoteApp Manager zeigt: Main

Die Einstellungen für die digitale Signatur: DSS

Und in der Konfiguration des RD-Sitzungshosts in den Einstellungen der Verbindung: RDSHC

Am Ende , und wenn ich mich recht erinnere, haben wir es gelöst, indem wir alle Optionen überprüft haben, die Ereignisanzeige, um sicherzustellen, dass keine Zertifikatsfehler aufgetreten sind, einige lokale Gruppen bevölkert und ihnen Zugriff durch die Sicherheitsrichtlinie gewährt haben ...

Viel Glück.

---- Aktualisiert ----

Denken Sie daran, in das Benutzerprofil, die Aussteller-CA oder das Zertifikat (wenn es selbst signiert ist) in "Vertrauenswürdige Stammzertifizierungsstellen / -zertifikate" zu importieren, damit der Client keinen Zertifikatfehler erhält. Dieser Punkt war in unserem System wichtig.

Carlos Garcia
quelle
Danke für die Information. Wir verwenden Zertifikate, die von unserer eigenen Zertifizierungsstelle signiert wurden. Das Problem, das ich habe, ist einzigartig für Windows Server 2012. Die GUI behauptet, dass Zertifikate nicht richtig oder gar nicht konfiguriert sind.
Michael Steele
2

Ich hatte genau das gleiche Problem und fand das Update. So haben Sie die Zertifikatvorlage erstellt und das Zertifikat angefordert.
Hier ist das Update:

  1. Erstellen Sie eine Zertifikatvorlage aus, indem Sie die Computervorlage duplizieren
  2. Bearbeiten Sie das neue Zertifikat und diese beiden wichtigen Mods 2a. Privaten Schlüssel exportieren erlauben 2b. Wählen Sie auf der Registerkarte "Antragstellername" das Optionsfeld "Lieferung in der Anfrage" aus
  3. Veröffentlichen Sie die neue Vorlage
  4. Erstellen Sie eine neue Anfrage und wählen Sie die neue Vorlage aus
  5. Fügen Sie Common Name und DNS für das RDWeb hinzu. (Ich habe alle RD-Farm-Server hinzugefügt.)

Beispiel:

CN = rdweb.domain.local

CN = rdcb.domain.local

CN = rdsh1.domain.local

CN = rdsh2.domain.local

CN = rdsh3.domain.local

rdweb.domain.local

rdcb.domain.local

rdsh1.domain.local

rdsh2.domain.local

rdsh3.domain.local

  1. Fügen Sie rdweb.domain.local zum Anzeigenamen hinzu und generieren Sie dann das Zertifikat
  2. Exportiere das Zertifikat mit privat
  3. Import in die RD-Bereitstellungskonsole.

Du machst das alles und Level wird Trusted und Status OK

Todd Ouimet
quelle