Änderungen von Dokument Bereitstellung über HTTPS


Von Version 2.1
bearbeitet von MKO
am 23.11.2021, 15:27
Änderungskommentar: Es gibt keinen Kommentar für diese Version
Auf Version 3.6
bearbeitet von gru
am 01.02.2022, 17:27
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Dokument-Autor
... ... @@ -1,1 +1,1 @@
1 -XWiki.mko
1 +XWiki.gru
Inhalt
... ... @@ -1,3 +1,5 @@
1 +{{content/}}
2 +
1 1  ==Konfigurieren des HTTPS Connectors==
2 2  
3 3  Um den Apache Tomcat über HTTPS bereitzustellen, sind Anpassungen an der Datei //server.xml// des Tomcats notwendig.
... ... @@ -18,7 +18,7 @@
18 18  Sollte der entsprechende Block kommentiert sein, so kommentieren Sie diesen aus!
19 19  )))
20 20  1. (((
21 -Passen Sie den Inhalt an Ihre Gegebenheiten (Pfade/Zertifikate/Port) an.
23 +Passen Sie den Inhalt des einkommentierten Connectors an Ihre Gegebenheiten (Pfade/Zertifikate/Port) an. Dies könnte zum Beispiel so aussehen:
22 22  
23 23  {{code}}
24 24  <Connector port="443" protocol="HTTP/1.1" maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
... ... @@ -35,11 +35,13 @@
35 35  </Connector>
36 36  {{/code}}
37 37  
38 -Weiterführende Informationen zur Konfiguration von der Eigenschaft //SSLHostConfig//: [[https:~~/~~/tomcat.apache.org/tomcat-8.5-doc/config/http.html#SSL_Support_-_SSLHostConfig>>https://tomcat.apache.org/tomcat-8.5-doc/config/http.html#SSL_Support_-_SSLHostConfig]]
40 +Weiterführende Informationen zur Konfiguration von der Eigenschaft //SSLHostConfig// finden Sie in der Dokumentation des Herstellers: [[https:~~/~~/tomcat.apache.org/tomcat-8.5-doc/config/http.html#SSL_Support_-_SSLHostConfig>>https://tomcat.apache.org/tomcat-8.5-doc/config/http.html#SSL_Support_-_SSLHostConfig]]
39 39  )))
40 40  
41 -===Eine Zusammenfassung der wichtigsten Optionen===
43 +===Zusammenfassung der wichtigsten Optionen===
42 42  
45 +In der folgenden Tabelle werden die wichtigsten Optionen des obenstehenden Beispiel-Connectors und Ihre Bedeutung kurz zusammengefasst:
46 +
43 43  {{table dataTypeAlpha="0" preSort="0-asc"}}
44 44  |=Attribut|=Wert|=Beschreibung
45 45  |port|443 (Standard)|Über diesen Port wird die Verbindung aufgebaut.
... ... @@ -54,8 +54,10 @@
54 54  
55 55  ===Weitere Möglichkeiten ein Zertifikat im Tomcat am Connector zu konfigurieren===
56 56  
57 -Einbindung mittels KeyStore:
61 +Neben dem obenstehenden Beispiel gibt es noch andere Möglichkeiten, das verwendete Zertifikat für einen Connector für verschlüsselte Kommunikation zu konfigurieren.
58 58  
63 +Eine Möglichkeit ist es, das Zertifikat, den Private Key und mögliche Zwischenzertifikate in einem Java-Keystore zu importieren und diesen direkt einzubinden:
64 +
59 59  {{code}}
60 60  <Connector port="443" protocol="HTTP/1.1" maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
61 61   URIEncoding="UTF-8"
... ... @@ -64,14 +64,13 @@
64 64   relaxedQueryChars="[ \ ] ^ ` { | }">
65 65   <SSLHostConfig>
66 66   <Certificate certificateKeystoreFile="conf/file.keystore"
67 - certificateKeystorePassword="mypwd" ></Certificate>
73 + certificateKeystorePassword="meinPasswort" ></Certificate>
68 68   </SSLHostConfig>
69 69  </Connector>
70 70  {{/code}}
71 71  
78 +Auch KeyPair-Dateien (*.pfx, *.p12) können direkt eingebunden werden:
72 72  
73 -Ist man im Besitz einer KeyPair-Datei (*.pfx, *.p12) kann man diese auch direkt einbinden:
74 -
75 75  {{code}}
76 76  <Connector port="443" protocol="HTTP/1.1" maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
77 77   URIEncoding="UTF-8"
... ... @@ -80,12 +80,31 @@
80 80   relaxedQueryChars="[ \ ] ^ ` { | }">
81 81   <SSLHostConfig>
82 82   <Certificate certificateKeystoreFile="conf/file.pfx"
83 - certificateKeystorePassword="mypwd"
88 + certificateKeystorePassword="meinPasswort"
84 84   certificateKeystoreType="PKCS12" ></Certificate>
85 85   </SSLHostConfig>
86 86  </Connector>
87 87  {{/code}}
88 88  
94 +==Einschränken auf bestimmte TLS-Versionen==
95 +
96 +Wenn für verschlüsselte Verbindungen nur bestimmte Versionen von TLS unterstützt werden sollen, kann dies über die Attribute //protocols// und //sslProtocol// in der //SSLHostConfig// des Connectors konfiguriert werden. Eine beispielhafte Konfiguration, welche nur die TLS-Versionen 1.1 und 1.2 zulässt, könnte wie folgt aussehen:
97 +
98 +{{code}}
99 +<Connector ...>
100 + <SSLHostConfig protocols="TLSv1.1+TLSv1.2" sslProtocol="TLSv1.1+TLSv1.2">
101 + <Certificate certificateKeyFile="conf/private.key"
102 + certificateFile="conf/zertifikat.crt"
103 + certificateChainFile="conf/CHAIN.pem"
104 + type="RSA" ></Certificate>
105 + </SSLHostConfig>
106 +</Connector>
107 +{{/code}}
108 +
109 +Falls zusätzlich eine Einschränkung der möglichen Verschlüsselungsalgorithmen gewünscht wird, kann diese mit dem Attribut //ciphers// vorgenommen werden.
110 +
111 +Nähere Informationen zur Konfiguration und den möglichen Optionen der Attribute finden Sie in der Dokumentation des Herstellers: [[https:~~/~~/tomcat.apache.org/tomcat-8.5-doc/config/http.html#SSL_Support_-_SSLHostConfig>>https://tomcat.apache.org/tomcat-8.5-doc/config/http.html#SSL_Support_-_SSLHostConfig]]
112 +
89 89  ==Erzwingen von HTTPS==
90 90  
91 91  Sollte der komplette Server ausschließlich über HTTPS betrieben werden empfiehlt es sich den Standard HTTP-Connector zu entfernen bzw. auszukommentieren. Sollte dies keine Option sein gibt es zusätzlich die Möglichkeit sowohl für den ganzen Server, als auch für einzelne Anwendungen eine Kommunikation über HTTPS zu erzwingen. Hierfür kann in die Datei //web.xml// des Servers (///Pfad/Zum/Tomcat/conf/web.xml//) oder der Anwendung (///Pfad/Zum/Tomcat/webapps/formcycle/WEB-INF/web.xml//) innerhalb des Knotens //web-app// folgendes eingefügt werden: