Unser Kreditkarten-Prozessor hat uns kürzlich mitgeteilt, dass wir zum 30. Juni 2016 TLS 1.0 deaktivieren müssen, um PCI-kompatibel zu bleiben . Ich habe versucht, durch Deaktivieren von TLS 1.0 auf unserem Windows Server 2008 R2-Computer proaktiv zu sein, und festgestellt, dass ich unmittelbar nach dem Neustart keine Verbindung über RDP (Remote Desktop Protocol) herstellen konnte. Nach einigen Recherchen scheint RDP nur TLS 1.0 zu unterstützen (siehe hier oder hier ), oder es ist zumindest nicht klar, wie RDP über TLS 1.1 oder TLS 1.2 aktiviert werden kann. Kennt jemand eine Möglichkeit, TLS 1.0 unter Windows Server 2008 R2 zu deaktivieren, ohne RDP zu beschädigen? Plant Microsoft die Unterstützung von RDP über TLS 1.1 oder TLS 1.2?
Hinweis: Es scheint eine Möglichkeit zu geben, den Server für die Verwendung der RDP-Sicherheitsschicht zu konfigurieren, die jedoch die Authentifizierung auf Netzwerkebene deaktiviert .
UPDATE 1 : Microsoft hat dieses Problem jetzt behoben. In der Antwort unten finden Sie Informationen zum jeweiligen Server-Update.
UPDATE 2 : Microsoft hat ein Tutorial zur SQL Server-Unterstützung für PCI DSS 3.1 veröffentlicht .
Antworten:
Microsoft hat den Patch für dieses Problem am 15. September 2015 veröffentlicht
Siehe https://support.microsoft.com/en-us/kb/3080079
quelle
Ich habe dies seit ein paar Tagen untersucht, da wir PCI-DSS 3.1 einhalten müssen, bei dem TLS 1.0 deaktiviert sein muss.
Wir möchten auch nicht auf die RDP-Sicherheitsschicht zurückgreifen, die ein wichtiges Sicherheitsproblem darstellt.
Ich habe es endlich geschafft, eine Dokumentation zu finden, die bestätigt, dass TLS 1.1 und TLS 1.2 von RDP unterstützt werden. Diese Dokumentation ist in einer SChannel-Protokollierung und einer sehr detaillierten Spezifikation für RDP versteckt .
Auf Technet- oder anderen Microsoft-Websites fehlt die Hauptdatenstromdokumentation vollständig. Es scheint also so, als könnte es einigen Menschen helfen, dies hier zu dokumentieren.
Relevante Auszüge aus den bereitgestellten Links:
Über den MSDN-Link:
Aus der RDP-Spezifikation PDF:
Daher kann man den Schluss ziehen, dass Sie TLS 1.1 oder 1.2 gemäß dieser Dokumentation unter Windows Server 2008 R2 verwenden können.
Unsere Tests haben jedoch gezeigt, dass dies auf dem Windows 7 RDP-Client (Version 6.3.9600) NICHT funktioniert, wenn TLS 1.0 deaktiviert ist und die RDP-Sicherheitsoption TLS 1.0 erfordert.
Dies gilt natürlich auch für TLS 1.1 und 1.2, die in 2008R2 standardmäßig deaktiviert sind . Dies geschieht übrigens mit dem sehr nützlichen IIS Crypto Tool von Nartac Software .
Wenn Sie sich dieses Problem ansehen, ist es hilfreich, die SChannel-Protokollierung zu aktivieren, um mehr Details darüber zu erfahren, was passiert, wenn Ihre Sitzung geöffnet wird.
Sie können die SChannel-Protokollierung festlegen, indem Sie den Schlüssel HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Control \ SecurityProviders \ SCHANNEL \ EventLogging auf 5 setzen und neu starten.
Anschließend können Sie SChannel-Ereignisse beobachten, die die TLS-Version anzeigen, die beim Herstellen einer RDP-Verbindung verwendet wird. Sobald die Protokollierung aktiviert ist, können Sie den SChannel-Fehler beobachten, wenn der RDP-Client unter Windows 2008 R2 versucht, eine Verbindung herzustellen, wobei TLS 1.0 deaktiviert ist:
Ich habe auch die Deaktivierung von TLS 1.0 unter Windows Server 2012 und 2012 R2 getestet, von denen ich bestätigen kann, dass sie mit dem Windows 7 RDP-Client einwandfrei funktioniert. Der SChannel-Protokolleintrag zeigt, dass TLS 1.2 verwendet wird:
Ich hoffe, das hilft jemandem, der Klarheit darüber sucht.
Ich werde weiterhin nach Möglichkeiten suchen, wie wir RDP für TLS 1.1 und TLS 1.2 in Windows Server 2008 R2 zum Laufen bringen können.
UPDATE: 2015-AUG-05
Wir haben das Problem aufgeworfen, dass RDP nicht mit Server 2008 R2 mit Microsoft-Unterstützung funktioniert, einschließlich der Schritte zur Reproduktion.
Nach mehreren Wochen hin und her haben wir heute endlich einen Anruf vom Support-Team erhalten, um zu bestätigen, dass sie ihn tatsächlich reproduzieren können, und dies wird nun als Fehler eingestuft. Es wird ein Update-Patch veröffentlicht, der voraussichtlich im Oktober 2015 verfügbar sein wird. Sobald ich einen KB-Artikel oder andere Details habe, werde ich sie diesem Beitrag hinzufügen.
Hoffentlich können diejenigen, die mit Windows Server 2008 R2 nicht mehr weiterkommen, dies zumindest vor dem Stichtag Juni 2016 beheben, sobald der Patch veröffentlicht ist.
UPDATE: 19. September 2015
Microsoft hat endlich einen KB Support-Artikel dazu hier veröffentlicht und ich kann bestätigen, dass es OK funktioniert.
quelle
Verwenden Sie stattdessen IPsec, wie im Dokument empfohlen: "Richten Sie zuerst eine stark verschlüsselte Sitzung ein (z. B. IPsec-Tunnel), und senden Sie dann Daten über SSL innerhalb eines sicheren Tunnels."
Der Hauptgrund für diese Vorgehensweise bei der Konfiguration von TLS für RDP besteht darin, dass die Firewall-Richtlinie einfach auf Konformität überprüft werden kann (im Gegensatz zum Nachweis, dass zahlreiche Registrierungsänderungen konform sind) und IPsec in Windows recht einfach zu konfigurieren ist.
Wenn Sie die vollständige Suite B-Konformität benötigen, ist IPSEC mit tls 1.0 die einzige Möglichkeit, die für die entsprechenden Zertifikatslängen verfügbar ist
quelle
Dies ist keine Antwort auf die Frage, sondern auf die Unterfrage "Wie stelle ich den Remotezugriff auf eine virtuelle Maschine wieder her, auf der ich TLS 1.0 deaktiviert habe und auf die kein physischer Zugriff besteht?".
Ich habe TLS 1.0 mit IISCrypto deaktiviert, was eine nützliche Warnung über den Nebeneffekt gab, dass RDP nicht mehr funktioniert, wenn es auf TLS eingestellt ist. Also habe ich eingecheckt:
und meine Sicherheitsstufe wurde auf "Aushandeln" gesetzt. Ich ging davon aus, dass TLS, wenn es nicht verfügbar ist, die RDP-Sicherheit erheblich beeinträchtigen würde.
Aber nein, Verhandeln funktioniert nicht so. Sie müssen die Sicherheitsstufe auf RDP-Sicherheit und nicht auf Aushandeln setzen, bevor Sie TLS 1.0 deaktivieren.
Daher konnte ich keine Remote-Verbindung zu meiner AWS-Instanz mehr herstellen!
Um die Verbindung wiederherzustellen, habe ich eine andere AWS-Instanz verwendet.
net use \\lost_machine_ip\c$
\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp\
und setzen Sie den Wert für
SecurityLayer
auf 0 (0 ist RDP-Sicherheit).Anschließend können Sie eine Remoteverbindung herstellen und TLS 1.0 in IISCrypto erneut aktivieren, falls erforderlich.
quelle
Sie müssen RDP 8.0 auf Ihren Windows 7-Computern und Windows Server 2008 R2-Servern installieren und dann RDP 8.0 in der lokalen Computerrichtlinie oder Gruppenrichtlinie aktivieren.
Hier ist die Microsoft-KB für RDP 8.0. https://support.microsoft.com/en-us/kb/2592687
Sobald dies erledigt ist, sollten Sie in der Lage sein, TLS 1.0 auf den Computern und Servern zu deaktivieren, indem Sie die Registrierung wie in diesem Technet-Artikel beschrieben bearbeiten. https://technet.microsoft.com/en-us/library/dn786418.aspx
Nach der Installation von RDP 8.0 können Sie auch RDP 8.1 installieren, RDP 8.0 muss jedoch vor der Installation von RDP 8.1 installiert werden. RDP 8.0 enthält sowohl die clientseitigen als auch die serverseitigen Protokollkomponenten, RDP 8.1 enthält jedoch nur den Client. Die Microsoft-KB für RDP 8.1 ist KB2830477.
Ich habe diese Änderungen auf einer meiner Windows 7-Workstations vorgenommen und die RDP-Verbindungen mit der Gruppenrichtlinieneinstellung "Verwendung einer bestimmten Sicherheitsebene für Remoteverbindungen (RDP) erforderlich" getestet und auf "SSL (TLS 1.0)" festgelegt, um dies sicherzustellen würde nicht auf RDP-Verschlüsselung zurückgreifen.
UPDATE 19.06.2015:
Endlich hatte ich die Möglichkeit, dies auf einem unserer Windows Server 2008 R2-Server zu testen, und die RDP-Verbindungen zum Server werden definitiv unterbrochen. Es scheint, dass die serverseitigen RDP 8.0-Komponenten nur auf Windows 7-Computern installiert sind und nicht auf Windows Server 2008 R2-Servern installiert werden.
quelle
Wie Sie TLS 1.0 deaktivieren, ohne RemoteApps auf Server 2012 R2 zu beschädigen, aber hier neu veröffentlichen, um denjenigen zu helfen, die diesen Link möglicherweise nicht überwachen:
Nach fast einem Jahr fand ich endlich eine funktionierende Lösung zum Deaktivieren von TLS 1.0 / 1.1, ohne die RDP- und Remotedesktopdienste-Konnektivität zu unterbrechen und RemoteApps zu starten:
Führen Sie IISCrypto aus, und deaktivieren Sie TLS 1.0, TLS 1.1 und alle fehlerhaften Chiffren.
Öffnen Sie auf dem Remotedesktopdienste-Server, auf dem die Gateway-Rolle ausgeführt wird, die Lokale Sicherheitsrichtlinie und navigieren Sie zu Sicherheitsoptionen - Systemkryptografie: Verwenden Sie FIPS-kompatible Algorithmen für Verschlüsselung, Hashing und Signierung. Ändern Sie die Sicherheitseinstellung auf Aktiviert. Starten Sie den Computer neu, damit die Änderungen wirksam werden.
Beachten Sie, dass in einigen Fällen (insbesondere bei Verwendung von selbstsignierten Zertifikaten unter Server 2012 R2) die Sicherheitsrichtlinienoption Netzwerksicherheit: LAN Manager-Authentifizierungsebene möglicherweise nur auf NTLMv2-Antworten senden festgelegt werden muss.
quelle
Nur ein Update dazu, wenn jemand nach Informationen sucht. Für meine Windows 7 64-Bit-Boxen musste ich KB2574819 (erstes) und KB2592687 (zweites) installieren. Windows 7 muss SP1 installiert haben, bevor diese 2 Pakete installiert werden können. Wenn Sie Probleme bei der Installation von SP1 haben, musste ich zuerst KB958830 deinstallieren und dann SP1 installieren.
Für meine Windows Server 2008 R2-Boxen musste ich KB3080079 installieren. Sobald Sie dies getan haben und alle geeigneten Einstellungen für die sichere Kommunikation vorgenommen haben, wird TLS 1.2 verwendet. Sie können mit Wireshark eine Aufzeichnung der Kommunikation zwischen Ihren beiden Boxen durchführen.
quelle
Ich habe rdesktop ( http://www.rdesktop.org ) für Linux erfolgreich verwendet , um dieses Problem zu umgehen.
quelle
Ein Fall, der von den vorhandenen Antworten nicht abgedeckt wird: Windows 7-Clients, die über ein RDP-Gateway eine Verbindung herstellen, verwenden weiterhin TLS 1.0, wenn sie eine Verbindung zum Gateway herstellen, und schlagen fehl, wenn das Gateway TLS 1.0 nicht unterstützt, selbst nachdem KB3080079 angewendet wurde , wie in diesem TechNet- Forenthread beschrieben .
Um TLS 1.2 für die Verbindung über ein RDP-Gateway zu verwenden, stellen Sie sicher , dass KB3140245 installiert ist, und fügen Sie die folgenden Registrierungsschlüssel hinzu (in einer Datei mit der
.reg
zu importierenden Erweiterung speichern ):Wie in KB3140245 dokumentiert , setzt dies die
WINHTTP_OPTION_SECURE_PROTOCOLS
Verwendung von TLS 1.2 (und nur TLS 1.2) standardmäßig außer Kraft . Beachten Sie also, dass dies nicht nur den RDP-Client betrifft.(Hinweis: Wenn Abwärtskompatibilität gewünscht wird,
dword:00000800
kann zu TLS 1.1 bzw. 1.0 geändertdword:00000A00
oderdword:00000A80
hinzugefügt werden.)quelle