Verschlüsseln Sie den Datenverkehr mit SSL-Proxy und TLS
Der SSL-Proxy fungiert als Vermittler und führt die SSL-Verschlüsselung und -Entschlüsselung zwischen dem Client und dem Server durch. Ein besserer Einblick in die Anwendungsnutzung kann bereitgestellt werden, wenn der SSL-Weiterleitungsproxy aktiviert ist.
SSL-Proxy – Übersicht
SSL-Proxy wird nur von Firewalls der SRX-Serie unterstützt.
Secure Sockets Layer (SSL) ist ein Protokoll auf Anwendungsebene, das Verschlüsselungstechnologie für das Internet bereitstellt. SSL, auch Transport Layer Security (TLS) genannt, gewährleistet die sichere Übertragung von Daten zwischen einem Client und einem Server durch eine Kombination aus Datenschutz, Authentifizierung, Vertraulichkeit und Datenintegrität. SSL stützt sich für diese Sicherheitsstufe auf Zertifikate und Private-Public-Key-Austauschpaare.
SSL-Proxy ist ein transparenter Proxy, der die SSL-Verschlüsselung und -Entschlüsselung zwischen dem Client und dem Server durchführt.
- Wie funktioniert der SSL-Proxy?
- SSL-Proxy mit Application Security Services
- Arten von SSL-Proxys
- Unterstützte SSL-Protokolle
- Vorteile von SSL-Proxy
- Unterstützung logischer Systeme
- Einschränkungen
Wie funktioniert der SSL-Proxy?
Der SSL-Proxy bietet eine sichere Übertragung von Daten zwischen einem Client und einem Server durch eine Kombination der folgenden Punkte:
Die Authentifizierungsserver-Authentifizierung schützt vor betrügerischen Übertragungen, indem sie es einem Webbrowser ermöglicht, die Identität eines Webservers zu überprüfen.
Vertraulichkeit - SSL erzwingt Vertraulichkeit durch Verschlüsselung von Daten, um zu verhindern, dass unbefugte Benutzer die elektronische Kommunikation belauschen. Dadurch wird die Vertraulichkeit der Kommunikation gewährleistet.
Integrität- Die Nachrichtenintegrität stellt sicher, dass der Inhalt einer Kommunikation nicht manipuliert wird.
Die Firewall der SRX-Serie, die als SSL-Proxy fungiert, verwaltet SSL-Verbindungen zwischen dem Client auf der einen Seite und dem Server auf der anderen Seite und führt die folgenden Aktionen aus:
SSL-Sitzung zwischen Client und SRX-Serie: Beendet eine SSL-Verbindung von einem Client, wenn die SSL-Sitzungen vom Client zum Server initiiert werden. Die Firewall der SRX-Serie entschlüsselt den Datenverkehr, überprüft ihn auf Angriffe (in beide Richtungen) und initiiert die Verbindung im Namen der Clients zum Server.
SSL-Sitzung zwischen Server und SRX-Serie - Beendet eine SSL-Verbindung von einem Server, wenn die SSL-Sitzungen vom externen Server zum lokalen Server initiiert werden. Die Firewall der SRX-Serie empfängt Klartext vom Client, verschlüsselt die Daten und überträgt sie als Chiffretext an den SSL-Server. Auf der anderen Seite entschlüsselt die SRX-Serie den Datenverkehr vom SSL-Server, prüft ihn auf Angriffe und sendet die Daten als Klartext an den Client.
Ermöglicht die Überprüfung des verschlüsselten Datenverkehrs.
Der SSL-Proxy-Server sorgt mit Verschlüsselungstechnologie für eine sichere Übertragung der Daten. SSL stützt sich auf Zertifikate und Private-Public-Key-Austauschpaare, um die sichere Kommunikation zu gewährleisten. Weitere Informationen finden Sie unter SSL-Zertifikate.
Um eine SSL-Sitzung zwischen der Firewall der SRX-Serie und ihrem Client/Server einzurichten und aufrechtzuerhalten, wendet die Firewall der SRX-Serie Sicherheitsrichtlinien auf den empfangenen Datenverkehr an. Wenn der Datenverkehr den Kriterien der Sicherheitsrichtlinie entspricht, wird der SSL-Proxy als Anwendungsdienst innerhalb einer Sicherheitsrichtlinie aktiviert.
SSL-Proxy mit Application Security Services
Abbildung 1 zeigt, wie der SSL-Proxy für eine verschlüsselte Nutzlast funktioniert.

Wenn erweiterte Sicherheitsdienste wie Application Firewall (AppFW), Intrusion Detection and Prevention (IDP), Anwendungsverfolgung (AppTrack), Content Security und ATP Cloud konfiguriert sind, fungiert der SSL-Proxy als SSL-Server, indem er die SSL-Sitzung vom Client beendet und eine neue SSL-Sitzung zum Server aufbaut. Die Firewall der SRX-Serie entschlüsselt den gesamten SSL-Proxy-Datenverkehr und verschlüsselt ihn erneut.
IDP, AppFW, AppTracking, erweitertes richtlinienbasiertes Routing (APBR), Content Security, ATP-Cloud und ICAP-Serviceumleitung können den entschlüsselten Inhalt vom SSL-Proxy verwenden. Wenn keiner dieser Dienste konfiguriert ist, werden SSL-Proxydienste auch dann umgangen, wenn ein SSL-Proxyprofil an eine Firewallrichtlinie angehängt ist.
Arten von SSL-Proxys
SSL-Proxy ist ein transparenter Proxy, der die SSL-Verschlüsselung und -Entschlüsselung zwischen dem Client und dem Server durchführt. SRX fungiert als Server aus der Perspektive des Clients und es fungiert als Client aus der Perspektive des Servers. Bei Firewalls der SRX-Serie werden Client-Schutz (Forward-Proxy) und Server-Schutz (Reverse-Proxy) mit demselben Echosystem unterstützt (SSL-T-SSL [Terminator auf der Client-Seite] und SSL-I-SSL [Initiator auf der Serverseite]).
Die Firewalls der SRX-Serie unterstützen die folgenden Arten von SSL-Proxys:
Client-Schutz SSL-Proxy, auch als Forward-Proxy bezeichnet: Die Firewall der SRX-Serie befindet sich zwischen dem internen Client und dem externen Server. Proxying einer ausgehenden Sitzung, d. h. einer lokal initiierten SSL-Sitzung mit dem Internet. Es entschlüsselt und überprüft den Datenverkehr von internen Benutzern zum Web.
SSL-Proxy zum Serverschutz, auch bekannt als Reverse-Proxy: Die Firewall der SRX-Serie befindet sich zwischen dem internen Server und dem externen Client. Proxying für eingehende Sitzungen, d. h. extern initiierte SSL-Sitzungen aus dem Internet zum lokalen Server.
Weitere Informationen zu SSL-Forward-Proxy und Reverse-Proxy finden Sie unter Konfigurieren des SSL-Proxys.
Unterstützte SSL-Protokolle
Die folgenden SSL-Protokolle werden von Firewalls der SRX-Serie für den SSL-Initiierungs- und -Terminierungsdienst unterstützt:
TLS Version 1.0 – Bietet Authentifizierung und sichere Kommunikation zwischen kommunizierenden Anwendungen.
TLS Version 1.1 - Diese erweiterte Version von TLS bietet Schutz vor CBC-Angriffen (Cipher Block Chaining).
TLS Version 1.2 — Diese erweiterte Version von TLS bietet eine verbesserte Flexibilität bei der Aushandlung kryptografischer Algorithmen.
-
TLS-Version 1.3 - Diese erweiterte Version von TLS bietet verbesserte Sicherheit und bessere Leistung.
Ab Junos OS Version 15.1X49-D30 und Junos OS Version 17.3R1 werden die Protokolle TLS Version 1.1 und TLS Version 1.2 auf Firewalls der SRX-Serie zusammen mit TLS Version 1.0 unterstützt.
Ab Junos OS Version 15.1X49-D20 und Junos OS Version 17.3R1 wird das SSL-Protokoll 3.0 (SSLv3) nicht mehr unterstützt.
Ab Junos OS Version 21.2R1 unterstützt der SSL-Proxy auf Firewalls der SRX-Serie TLS Version 1.3.
Wenn Sie TLS 1.3 verwenden, unterstützt die Firewall der SRX-Serie die Gruppe secp256r1 für den Schlüsselaustausch zum Herstellen einer Verbindung mit dem Server. Wenn der Server nur secp384r1 unterstützt, wird die Verbindung beendet.
Vorteile von SSL-Proxy
Entschlüsselt SSL-Datenverkehr, um granulare Anwendungsinformationen zu erhalten und Ihnen die Anwendung erweiterter Sicherheitsdienste und die Erkennung von Bedrohungen zu ermöglichen.
Erzwingt die Verwendung starker Protokolle und Verschlüsselungen durch den Client und den Server.
Bietet Visibilität und Schutz vor Bedrohungen, die in SSL-verschlüsseltem Datenverkehr eingebettet sind.
Steuert, was mithilfe des selektiven SSL-Proxys entschlüsselt werden muss.
Unterstützung logischer Systeme
Es ist möglich, SSL-Proxy für Firewall-Richtlinien zu aktivieren, die mithilfe logischer Systeme konfiguriert sind. Beachten Sie jedoch die folgenden Einschränkungen:
Die Kategorie "Services" wird derzeit in der Konfiguration logischer Systeme nicht unterstützt. Da sich der SSL-Proxy unter "Dienste" befindet, können Sie SSL-Proxyprofile nicht pro logischem System konfigurieren.
Da Proxy-Profile, die auf globaler Ebene (innerhalb von "Services ssl proxy") konfiguriert sind, in allen logischen Systemkonfigurationen sichtbar sind, ist es möglich, Proxy-Profile auf globaler Ebene zu konfigurieren und sie dann an die Firewall-Richtlinien eines oder mehrerer logischer Systeme anzuhängen.
Einschränkungen
Bei allen Firewalls der SRX-Serie weist die aktuelle SSL-Proxy-Implementierung die folgenden Konnektivitätseinschränkungen auf:
Die Unterstützung des SSLv3.0-Protokolls ist veraltet.
Das SSLv2-Protokoll wird nicht unterstützt. SSL-Sitzungen, die SSLv2 verwenden, werden verworfen.
Es wird nur das X.509v3-Zertifikat unterstützt.
Die Clientauthentifizierung des SSL-Handshakes wird nicht unterstützt.
SSL-Sitzungen, bei denen die Authentifizierung mit Clientzertifikat obligatorisch ist, werden verworfen.
SSL-Sitzungen, bei denen eine Neuverhandlung angefordert wird, werden verworfen.
Bei Firewalls der SRX-Serie wird der SSL-Proxy für eine bestimmte Sitzung nur aktiviert, wenn eine relevante Funktion im Zusammenhang mit SSL-Datenverkehr ebenfalls aktiviert ist. Zu den Funktionen, die sich auf den SSL-Datenverkehr beziehen, gehören IDP, Anwendungsidentifikation, Anwendungsfirewall, Anwendungsverfolgung, erweitertes richtlinienbasiertes Routing, Content Security, ATP-Cloud und ICAP-Umleitungsdienst. Wenn keine dieser Funktionen in einer Sitzung aktiv ist, umgeht der SSL-Proxy die Sitzung, und in diesem Szenario werden keine Protokolle generiert.
Siehe auch
Konfigurieren des SSL-Weiterleitungsproxys
- Übersicht über die SSL-Proxy-Konfiguration
- Konfigurieren eines Zertifikats einer Stammzertifizierungsstelle
- Generieren eines Zertifikats einer Stammzertifizierungsstelle mit CLI
- Konfigurieren einer Zertifizierungsstellenprofilgruppe
- Importieren eines Zertifikats einer Stammzertifizierungsstelle in einen Browser
- Anwenden eines SSL-Proxyprofils auf eine Sicherheitsrichtlinie
- Konfigurieren der SSL-Proxy-Protokollierung
- Konfigurieren von Zertifizierungsstellenprofilen
- Exportieren von Zertifikaten an einen bestimmten Speicherort
- Ignorieren der Serverauthentifizierung
Übersicht über die SSL-Proxy-Konfiguration
Konfigurieren des SSL-Weiterleitungsproxys zeigt eine Übersicht über die Konfiguration des SSL-Proxys an. Die Konfiguration des SSL-Proxys umfasst:
-
Konfigurieren des Zertifikats der Stammzertifizierungsstelle
-
Laden einer CA-Profilgruppe
-
Konfigurieren des SSL-Proxyprofils und Zuordnen des Zertifikats der Stammzertifizierungsstelle und der Zertifizierungsstellenprofilgruppe
-
Erstellen einer Sicherheitsrichtlinie durch Definieren von Übereinstimmungskriterien für den Eingabedatenverkehr
-
Anwenden eines SSL-Proxyprofils auf eine Sicherheitsrichtlinie
-
Optionale Schritte wie das Erstellen von Zulassungslisten und SSL-Proxy-Protokollierung
Konfigurieren eines Zertifikats einer Stammzertifizierungsstelle
Eine Zertifizierungsstelle kann mehrere Zertifikate in Form einer Baumstruktur ausstellen. Ein Stammzertifikat ist das oberste Zertifikat des Baums, dessen privater Schlüssel für sign andere Zertifikate verwendet wird. Alle Zertifikate, die sich unmittelbar unter dem Stammzertifikat befinden, erben die Signatur oder Vertrauenswürdigkeit des Stammzertifikats. Das ist so etwas wie das notarizing einer Identität.
Sie können ein Zertifikat einer Stammzertifizierungsstelle konfigurieren, indem Sie zuerst ein Zertifikat der Stammzertifizierungsstelle abrufen (indem Sie entweder ein selbstsigniertes Zertifikat generieren oder ein Zertifikat importieren) und es dann auf ein SSL-Proxyprofil anwenden. Sie können ein Zertifikat für eine Stammzertifizierungsstelle mithilfe der Junos OS CLI abrufen
Generieren eines Zertifikats einer Stammzertifizierungsstelle mit CLI
Um ein selbstsigniertes Zertifikat in der CLI zu definieren, müssen Sie die folgenden Details angeben:
Zertifikatskennung (im vorherigen Schritt generiert)
Vollqualifizierter Domänenname (Fully Qualified Domain Name, FQDN) für das Zertifikat
E-Mail-Adresse der Entität, der das Zertifikat gehört
Gebräuchlicher Name und die beteiligte Organisation
Generieren Sie ein Zertifikat für eine Stammzertifizierungsstelle mithilfe der Junos OS CLI:
Konfigurieren einer Zertifizierungsstellenprofilgruppe
Das Zertifizierungsstellenprofil definiert die Zertifikatsinformationen für die Authentifizierung. Er enthält den öffentlichen Schlüssel, den der SSL-Proxy beim Generieren eines neuen Zertifikats verwendet. Mit Junos OS können Sie eine Gruppe von Zertifizierungsstellenprofilen erstellen und mehrere Zertifikate in einer Aktion laden, Informationen zu allen Zertifikaten in einer Gruppe anzeigen und unerwünschte Zertifizierungsstellengruppen löschen.
Sie können eine Gruppe von Zertifizierungsstellenprofilen laden, indem Sie eine Liste vertrauenswürdiger Zertifizierungsstellenzertifikate abrufen, eine Zertifizierungsstellengruppe definieren und die Zertifizierungsstellengruppe an das SSL-Proxyprofil anfügen.
Sie können sich ganz einfach Informationen zu allen Zertifikaten in einer CA-Profilgruppe anzeigen lassen:
user@host> show security pki ca-certificates ca-profile-group group-name
Sie können eine Zertifizierungsstellenprofilgruppe löschen. Denken Sie daran, dass beim Löschen einer Zertifizierungsstellenprofilgruppe alle Zertifikate gelöscht werden, die zu dieser Gruppe gehören:
user@host> clear security pki ca-certificates ca-profile-group group-name
Importieren eines Zertifikats einer Stammzertifizierungsstelle in einen Browser
Damit Ihr Browser oder System automatisch allen Zertifikaten vertraut, die von der im SSL-Proxyprofil konfigurierten Stammzertifizierungsstelle signiert wurden, müssen Sie Ihre Plattform oder Ihren Browser anweisen, dem Stammzertifikat der Zertifizierungsstelle zu vertrauen.
So importieren Sie ein Zertifikat einer Stammzertifizierungsstelle:
Anwenden eines SSL-Proxyprofils auf eine Sicherheitsrichtlinie
Der SSL-Proxy wird als Anwendungsdienst innerhalb einer Sicherheitsrichtlinie aktiviert. In einer Sicherheitsrichtlinie geben Sie den Datenverkehr an, für den der SSL-Proxy aktiviert werden soll, als Übereinstimmungskriterium und geben dann das Profil der SSL-Proxy-Zertifizierungsstelle an, das auf den Datenverkehr angewendet werden soll. Abbildung 2 zeigt eine grafische Darstellung des SSL-Proxyprofils und der Konfiguration der Sicherheitsrichtlinie.
So aktivieren Sie den SSL-Proxy in einer Sicherheitsrichtlinie:
In diesem Beispiel wird davon ausgegangen, dass Sie bereits Sicherheitszonen mit Vertrauenswürdigkeit und nicht vertrauenswürdiger Zonen erstellt und eine Sicherheitsrichtlinie für den Datenverkehr von Vertrauenszone zu nicht vertrauenswürdiger Zone erstellt haben.
Konfigurieren der SSL-Proxy-Protokollierung
Bei der Konfiguration des SSL-Proxys können Sie festlegen, dass einige oder alle Protokolle empfangen werden sollen. SSL-Proxyprotokolle enthalten den logischen Systemnamen, SSL-Proxy-Zulassungslisten, Richtlinieninformationen, SSL-Proxyinformationen und andere Informationen, die Ihnen bei der Fehlerbehebung helfen, wenn ein Fehler auftritt.
Sie können die Protokollierung bestimmter all Ereignisse konfigurieren, z. B. Fehler-, Warnungs- und Informationsereignisse. Sie können auch die Protokollierung von Sitzungen konfigurieren, die nach dem Auftreten eines Fehlers auf der Zulassungsliste stehen, verworfen, ignoriert oder zugelassen werden.
[edit] user@host# set services ssl proxy profile profile-name actions log all user@host# set services ssl proxy profile profile-name actions log sessions-whitelisted user@host# set services ssl proxy profile profile-name actions log sessions-allowed user@host# set services ssl proxy profile profile-name actions log errors
Sie können die Option verwenden enable-flow-tracing , um die Debugablaufverfolgung zu aktivieren.
Konfigurieren von Zertifizierungsstellenprofilen
Die Profilkonfiguration einer Zertifizierungsstelle enthält Informationen, die für eine Zertifizierungsstelle spezifisch sind. Sie können mehrere CA-Profile auf einer Firewall der SRX-Serie haben. Sie können z. B. ein Profil für orgA und eines für orgB haben. Jedes Profil ist mit einem CA-Zertifikat verknüpft. Wenn Sie ein neues Zertifizierungsstellenzertifikat laden möchten, ohne das ältere zu entfernen, erstellen Sie ein neues Zertifizierungsstellenprofil (z. B. Microsoft-2008). Sie können mehrere CA-Profile in einer vertrauenswürdigen CA-Gruppe für eine bestimmte Topologie gruppieren.
In diesem Beispiel erstellen Sie ein Zertifizierungsstellenprofil mit dem Namen "ca-profile-security" mit der Zertifizierungsstellenidentität "microsoft-2008". Anschließend erstellen Sie ein Proxyprofil für das CA-Profil.
Exportieren von Zertifikaten an einen bestimmten Speicherort
Wenn ein selbstsigniertes Zertifikat mit einem PKI-Befehl generiert wird, wird das neu generierte Zertifikat an einem vordefinierten Speicherort (var/db/certs/common/local) gespeichert.
Verwenden Sie den folgenden Befehl, um das Zertifikat an einen bestimmten Speicherort (innerhalb des Geräts) zu exportieren. Sie können die Zertifikats-ID, den Dateinamen und den Typ des Dateiformats (DER/PEM) angeben:
user@host> request security pki local-certificate export certificate-id certificate-id filename filename type der
Ignorieren der Serverauthentifizierung
Mit Junos OS können Sie eine Option konfigurieren, um die Serverauthentifizierung vollständig zu ignorieren. Wenn Sie Ihr System so konfigurieren, dass die Authentifizierung ignoriert wird, werden alle Fehler, die bei der Überprüfung des Serverzertifikats zum Zeitpunkt des SSL-Handshakes aufgetreten sind, ignoriert. Zu den häufig ignorierten Fehlern gehören die Unfähigkeit, die CA-Signatur zu überprüfen, falsche Ablaufdaten von Zertifikaten usw. Wenn diese Option nicht festgelegt ist, werden alle Sitzungen, an die der Server selbstsignierte Zertifikate sendet, verworfen, wenn Fehler auftreten.
Es wird nicht empfohlen, diese Option für die Authentifizierung zu verwenden, da ihre Konfiguration dazu führt, dass Websites überhaupt nicht authentifiziert werden. Sie können diese Option jedoch verwenden, um die Ursache für unterbrochene SSL-Sitzungen effektiv zu identifizieren.
Geben Sie im Konfigurationsmodus an, dass die Serverauthentifizierung ignoriert werden soll:
[edit] user@host# set services ssl proxy profile profile-name actions ignore-server-auth-failure
Aktivieren von Debugging und Ablaufverfolgung für SSL-Proxy
Die Debug-Ablaufverfolgung sowohl für das Routingmodul als auch für das Paketweiterleitungsmodul kann für den SSL-Proxy aktiviert werden, indem die folgende Konfiguration festgelegt wird:
user@host# set services ssl traceoptions file file-name
SSL-Proxy wird auf SRX340-, SRX345-, SRX380-, SRX550M-, SRX1500-, SRX4100-, SRX4200-, SRX5400-, SRX5600-, SRX5800-Geräten und vSRX Virtual Firewall-Instanzen unterstützt. Tabelle 1 zeigt die unterstützten Ebenen für Ablaufverfolgungsoptionen.
Ursachentyp |
Beschreibung |
---|---|
Kurze |
Nur Fehlerablaufverfolgungen sowohl auf der Routing-Engine als auch auf der Paketweiterleitungs-Engine. |
Detail |
Packet Forwarding Engine: Nur Ereignisdetails bis zum Handshake sollten zurückverfolgt werden. Routing-Engine – Traces im Zusammenhang mit Commit. Es sind keine periodischen Traces auf der Routing-Engine verfügbar |
Umfangreiche |
Packet Forwarding Engine – Zusammenfassung der Datenübertragung verfügbar. Routing-Engine – Traces im Zusammenhang mit Commit (umfangreicher). Es sind keine periodischen Traces auf der Routing-Engine verfügbar. |
Ausführliche |
Alle Traces sind vorhanden. |
Tabelle 2 zeigt die unterstützten Flags.
Ursachentyp |
Beschreibung |
---|---|
CLI-Konfiguration |
Nur konfigurationsbezogene Traces. |
Einleitung |
Aktivieren Sie die Ablaufverfolgung für das SSL-I-Plug-in. |
Proxy |
Aktivieren Sie die Ablaufverfolgung für das SSL-Proxy-Policy-Plug-in. |
Beendigung |
Aktivieren Sie die Ablaufverfolgung für das SSL-T-Plug-In. |
ausgewähltes-profil |
Aktivieren Sie die Ablaufverfolgung nur für Profile, die festgelegt wurden enable-flow-tracing . |
Sie können Protokolle im SSL-Proxyprofil aktivieren, um die Ursache für den Ausfall zu ermitteln. Die folgenden Fehler gehören zu den häufigsten:
Fehler bei der Validierung der Serverzertifizierung. Überprüfen Sie die Konfiguration der vertrauenswürdigen Zertifizierungsstelle, um Ihre Konfiguration zu überprüfen.
Systemfehler wie Fehler bei der Speicherzuweisung.
Chiffren stimmen nicht überein.
SSL-Versionen stimmen nicht überein.
SSL-Optionen werden nicht unterstützt.
Die Stammzertifizierungsstelle ist abgelaufen. Sie müssen eine neue Stammzertifizierungsstelle laden.
Sie können die ignore-server-auth-failure Option im SSL-Proxyprofil aktivieren, um sicherzustellen, dass die Zertifikatüberprüfung, das Ablaufdatum der Stammzertifizierungsstelle und andere derartige Probleme ignoriert werden. Wenn Sitzungen überprüft werden, nachdem die ignore-server-auth-failure Option aktiviert wurde, wird das Problem lokalisiert.
Siehe auch
Transport Layer Security (TLS) – Übersicht
Transport Layer Security (TLS) ist ein Protokoll auf Anwendungsebene, das Verschlüsselungstechnologie für das Internet bereitstellt. TLS stützt sich für diese Sicherheitsstufe auf Zertifikate und Private/Public-Key-Austauschpaare. Es ist das am weitesten verbreitete Sicherheitsprotokoll für Anwendungen, bei denen Daten sicher über ein Netzwerk ausgetauscht werden müssen, wie z. B. Dateiübertragungen, VPN-Verbindungen, Instant Messaging und Voice over IP (VoIP).
Das TLS-Protokoll wird für den Zertifikatsaustausch, die gegenseitige Authentifizierung und das Aushandeln von Chiffren verwendet, um den Datenstrom vor potenziellen Manipulationen und Lauschangriffen zu schützen. TLS wird manchmal auch als Secure Sockets Layer (SSL) bezeichnet. TLS und SSL sind nicht interoperabel, obwohl TLS derzeit eine gewisse Abwärtskompatibilität bietet.
Die Firewalls der SRX-Serie bieten TLS-Prüfungen, die die TLS-Protokollsuite verwenden, die aus verschiedenen TLS-Versionen, Verschlüsselungen und Schlüsselaustauschmethoden besteht. Die TLS-Inspektionsfunktion ermöglicht es den Firewalls der SRX-Serie, in TLS verschlüsselten HTTP-Datenverkehr an jedem Port zu überprüfen.
- Vorteile von TLS
- TLS-Versionen
- Drei wesentliche Dienste von TLS
- TLS-Handshake
- Verschlüsseln des Syslog-Datenverkehrs mit TLS
Vorteile von TLS
TLS gewährleistet die sichere Übertragung von Daten zwischen einem Client und einem Server durch eine Kombination aus Datenschutz, Authentifizierung, Vertraulichkeit und Datenintegrität.
TLS-Versionen
Im Folgenden sind die Versionen von TLS aufgeführt:
TLS Version 1.0 – Bietet sichere Kommunikation über Netzwerke, indem Datenschutz und Datenintegrität zwischen kommunizierenden Anwendungen bereitgestellt werden.
TLS Version 1.1 – Diese erweiterte Version von TLS bietet Schutz vor CBC-Angriffen (Cipher-Block Chaining).
TLS Version 1.2 — Diese erweiterte Version von TLS bietet eine verbesserte Flexibilität bei der Aushandlung kryptografischer Algorithmen.
Ab Junos OS Version 12.3X48-D30 unterstützen Firewalls der SRX-Serie TLS Version 1.2. Firewalls der SRX-Serie, auf denen die frühere Version 12.3X48-D30 ausgeführt wird, unterstützen TLS Version 1.0.
Drei wesentliche Dienste von TLS
Das TLS-Protokoll wurde entwickelt, um den Anwendungen, die darüber ausgeführt werden, drei wesentliche Dienste bereitzustellen: Verschlüsselung, Authentifizierung und Datenintegrität.
Verschlüsselung: Um einen kryptografisch sicheren Datenkanal einzurichten, müssen sich Server und Client darauf einigen, welche Cipher Suites und welche Schlüssel zur Verschlüsselung der Daten verwendet werden. Das TLS-Protokoll spezifiziert eine klar definierte Handshake-Sequenz für die Durchführung dieses Austauschs. TLS verwendet Public-Key-Kryptografie, die es Client und Server ermöglicht, einen gemeinsamen geheimen Schlüssel auszuhandeln, ohne dass sie vorher voneinander Kenntnis haben müssen, und zwar über einen unverschlüsselten Kanal.
Authentifizierung: Als Teil des TLS-Handshakes ermöglicht das Protokoll sowohl dem Server als auch dem Client, ihre Identität zu authentifizieren. Die implizite Vertrauensstellung zwischen dem Client und dem Server (da der Client das vom Server generierte Zertifikat akzeptiert) ist ein wichtiger Aspekt von TLS. Es ist äußerst wichtig, dass die Serverauthentifizierung nicht kompromittiert wird. In der Realität gibt es jedoch viele selbstsignierte Zertifikate und Zertifikate mit Anomalien. Zu den Anomalien können abgelaufene Zertifikate, Instanzen von allgemeinen Namen, die nicht mit einem Domänennamen übereinstimmen, usw. gehören.
Integrität: Wenn Verschlüsselung und Authentifizierung vorhanden sind, führt das TLS-Protokoll einen Message-Framing-Mechanismus durch und signiert jede Nachricht mit einem Message Authentication Code (MAC). Der MAC-Algorithmus führt die effektive Prüfsumme durch, und die Schlüssel werden zwischen dem Client und dem Server ausgehandelt.
TLS-Handshake
Jede TLS-Sitzung beginnt mit einem Handshake, bei dem sich Client und Server auf den spezifischen Sicherheitsschlüssel und die Verschlüsselungsalgorithmen einigen, die für diese Sitzung verwendet werden sollen. Zu diesem Zeitpunkt authentifiziert der Client auch den Server. Optional kann der Server den Client authentifizieren. Sobald der Handshake abgeschlossen ist, kann die Übertragung der verschlüsselten Daten beginnen.
Verschlüsseln des Syslog-Datenverkehrs mit TLS
Das TLS-Protokoll stellt sicher, dass die Syslog-Meldungen sicher über das Netzwerk gesendet und empfangen werden. TLS verwendet Zertifikate, um die Kommunikation zu authentifizieren und zu verschlüsseln. Der Client authentifiziert den Server, indem er sein Zertifikat und seinen öffentlichen Schlüssel anfordert. Optional kann der Server auch ein Zertifikat vom Client anfordern, so dass auch eine gegenseitige Authentifizierung möglich ist.
Ein Zertifikat auf dem Server, das den Server identifiziert, und das vom Server ausgestellte Zertifikat der Zertifizierungsstelle (Certificate Authority, CA) müssen mit dem Client verfügbar sein, damit TLS den Syslog-Datenverkehr verschlüsseln kann.
Für die gegenseitige Authentifizierung von Client und Server muss ein Zertifikat mit dem Client, das den Client identifiziert, und das vom Client ausgestellte Zertifikat der Zertifizierungsstelle auf dem Server verfügbar sein. Durch die gegenseitige Authentifizierung wird sichergestellt, dass der Syslog-Server Protokollmeldungen nur von autorisierten Clients akzeptiert.
Siehe auch
Konfigurieren des TLS-Syslog-Protokolls auf der Firewall der SRX-Serie
Dieses Beispiel zeigt, wie das TLS-Syslog-Protokoll (Transport Layer Security) auf Firewalls der SRX-Serie so konfiguriert wird, dass verschlüsselte Syslog-Ereignisse von Netzwerkgeräten empfangen werden, die die TLS-Syslog-Ereignisweiterleitung unterstützen.
Anforderungen
Bevor Sie beginnen, aktivieren Sie die Serverzertifikatüberprüfung und die Verschlüsselungs- oder Entschlüsselungsfunktionen.
Übersicht
Das TLS-Syslog-Protokoll ermöglicht es Protokollquellen, verschlüsselte Syslog-Ereignisse von Netzwerkgeräten zu empfangen, die die Weiterleitung von TLS-Syslog-Ereignissen unterstützen. Die Protokollquelle erstellt einen Überwachungsport für eingehende TLS-Syslog-Ereignisse und generiert eine Zertifikatsdatei für die Netzwerkgeräte.
In diesem Beispiel konfigurieren Sie einen Syslog-Collector, der einem SSL-I-Profil zugeordnet ist. Jedes SSL-I-Profil ermöglicht es dem Benutzer, Dinge wie die bevorzugte Verschlüsselungssuite und vertrauenswürdige CA-Zertifikate anzugeben. Es können mehrere SSL-I-Profile konfiguriert und verschiedenen Collector-Servern zugeordnet werden.
Konfiguration
Verfahren
CLI-Schnellkonfiguration
Um diesen Abschnitt des Beispiels schnell zu konfigurieren, kopieren Sie die folgenden Befehle, fügen Sie sie in eine Textdatei ein, entfernen Sie alle Zeilenumbrüche, ändern Sie alle Details, die für Ihre Netzwerkkonfiguration erforderlich sind, kopieren Sie die Befehle und fügen Sie sie in die CLI auf Hierarchieebene ein, und geben Sie sie dann aus dem [edit]
Konfigurationsmodus ein commit
.
set security log mode stream set security log format sd-syslog set security log source-interface ge-0/0/1.0 set security log transport protocol tls set security log transport tls-profile ssl-i-tls set security log stream server1 format sd-syslog set security log stream server1 category all set security log stream server1 host 192.0.2.100 set services ssl initiation profile ssl-i-tls protocol-version all set services ssl initiation profile ssl-i-tls trusted-ca all set services ssl initiation profile ssl-i-tls actions ignore-server-auth-failure
Schritt-für-Schritt-Anleitung
Im folgenden Beispiel müssen Sie durch verschiedene Ebenen in der Konfigurationshierarchie navigieren. Anweisungen hierzu finden Sie unter Verwenden des CLI-Editors im Konfigurationsmodus im CLI-Benutzerhandbuch.
So konfigurieren Sie das TLS-Syslog-Protokoll:
Legen Sie den Protokollmodus auf "Stream" fest.
[edit security] user@host# set log mode stream
Legen Sie das Format für die Protokollierung von Remote-Sicherheitsmeldungen auf sd-syslog (strukturiertes Systemprotokoll) fest.
[edit security] user@host# set log format sd-syslog
Legen Sie die Nummer der Hostquellschnittstelle fest.
[edit security] user@host# set log source-interface ge-0/0/1.0
Legen Sie das Sicherheitsprotokoll-Transportprotokoll tls fest, das zum Protokollieren der Daten verwendet werden soll.
[edit security] user@host# set log transport protocol tls
Geben Sie den Namen des TLS-Profils an.
[edit security] user@host# set log transport tls-profile ssl-i-tls
Legen Sie den Protokolldatenstrom so fest, dass das strukturierte Syslog-Format zum Senden von Protokollen an Server 1 verwendet wird.
[edit security] user@host# set log stream server1 format sd-syslog
Legen Sie die Kategorie der Protokollierung von Server 1 auf alle fest.
[edit security] user@host# set log stream server1 category all
Legen Sie Server-Host-Parameter fest, indem Sie den Servernamen oder die IP-Adresse eingeben.
[edit security] user@host# set log stream server1 host 192.0.2.100
Definieren Sie die Protokollversion all für das Zugriffsprofil für die SSL-Initiierung.
[edit services] user@host# set ssl initiation profile ssl-i-tls protocol-version all
Fügen Sie alle Zertifizierungsstellenprofilgruppen an das SSL-Initiierungsprofil an, das beim Anfordern eines Zertifikats vom Peer verwendet werden soll.
[edit services] user@host# set ssl initiation profile ssl-i-tls trusted-ca all
Definieren Sie das Zugriffsprofil für die SSL-Initiierung, um den Fehler bei der Serverauthentifizierung zu ignorieren.
[edit services] user@host# set ssl initiation profile ssl-i-tls actions ignore-server-auth-failure
Ergebnisse
Bestätigen Sie im Konfigurationsmodus Ihre Konfiguration, indem Sie den show security log
Befehl eingeben. Wenn die Ausgabe nicht die beabsichtigte Konfiguration anzeigt, wiederholen Sie die Konfigurationsanweisungen in diesem Beispiel, um sie zu korrigieren.
[edit] user@host# show security log mode stream; format sd-syslog; source-interface ge-0/0/1.0; transport { protocol tls; tls-profile ssl-i-tls; } stream server1 { format sd-syslog; category all; host { 192.0.2.100; } } }
[edit] user@host# run show configuration services ssl initiation profile ssl-i-tls { protocol-version all; trusted-ca all; actions { ignore-server-auth-failure; } }
Wenn Sie mit der Konfiguration des Geräts fertig sind, rufen Sie den Konfigurationsmodus auf commit
.
Überprüfung
Um zu überprüfen, ob die Konfiguration ordnungsgemäß funktioniert, geben Sie den show log
Befehl auf dem Syslog-Server ein.