Der Trifork Application Server unterstützt HTTPS, sofern dies in der
Management-Konsole aktiviert wurde. Sie erreichen die Konsole über die URL
http://meinTriforkServer:8090/console
. Voreingestellt lautet der
Benutzername administrator
und dessen Passwort
trifork
. Aktivieren Sie dort bei HTTP, DEFAULT_ENDPOINT die
HTTPS-Option und geben Sie den gewünschten Port an.
Nach dieser Änderung muss der Trifork-Server neu gestartet werden, und Ihr Server kann anschließend via HTTPS erreicht werden.
Voreingestellt verwendet der Trifork-Server ein mitgeliefertes
Schlüsselpaar und ein dazu gehörendes SSL-Zertifikat. Sie können jedoch auch
eigene Schlüsselpaare und Zertifikate erzeugen. Hierfür benötigen Sie das mit
dem Trifork-Server gelieferte Programm keytool
von Sun
Microsystems. Sie finden dieses Programm unterhalb des
Installationsverzeichnisses in javaDir/bin
, wobei
javaDir
das Verzeichnis des verwendeten JDK ist, also
beispielsweise unter trifork-4.1.26/jdk-1.5.0/bin
.
Schlüsselpaare werden in einem so genannten Keystore abgelegt. Da mit einem Trifork-Server mehrere Websites betrieben werden können, ist der jeweils zu verwendende Keystore wählbar. Dies ist über die Management-Konsole in der oben genannten Sektion HTTP möglich.
Bei der Erzeugung des Schlüsselpaars muss ein Alias hierfür angegeben werden. Dabei handelt es sich um einen Bezeichner, mit dem Sie künftig das Schlüsselpaar referenzieren können. Ferner können Sie einen Keystore angeben. Wird der Keystore nicht angegeben, so wird das Schlüsselpaar im voreingestellten Keystore abgelegt. Geben Sie einen nicht existierenden Keystore an, so wird dieser automatisch erzeugt. Details hierzu und auch zu den folgenden Erläuterungen finden Sie in Suns JDK-Dokumentation:
http://java.sun.com/j2ee/1.4/docs/tutorial/doc/Security6.html
http://java.sun.com/j2se/1.3/docs/tooldocs/win32/keytool.html
Verwenden Sie die folgende Syntax, um ein Schlüsselpaar mit dem Alias
alias-name
zu erzeugen und im angegebenen
Keystore abzulegen. Sowohl für den Zugriff auf das Schlüsselpaar
selbst als auch auf den Keystore kann jeweils ein Passwort angegeben
werden.
keytool -genkey -alias alias-name -keyalg RSA -keypass changeit -storepass changeit -keystore keystore.jks
Der mitgelieferte Keystore, keystore.jks
ist
voreingestellt mit dem Passwort changeit
geschützt. Tragen Sie
das Passwort in der Management-Konsole in der oben genannten Sektion (HTTP,
DEFAULT_ENDPOINT) ein, damit der Trifork-Server auf den Keystore zugreifen
kann.
Ein Schlüsselpaar für die gesicherte Kommunikation zwischen Server und Clients wird erst dann als vertrauenswürdig eingestuft, wenn es zertifiziert wurde. Diese Aufgabe haben Zertifizierungsstellen wie VeriSign, Thawte usw. übernommen. Trifft ein Browser auf ein Zertifikat, das von einer solchen Zertifizierungsstelle erstellt wurde, stuft er es automatisch als vertrauenswürdig ein, wenn er entsprechend konfiguriert wurde.
In vielen Umgebungen reicht es aus, ein selbst erstelltes Zertifikat zu verwenden. In diesem Falle fungiert der Website-Betreiber gleichzeitig als Herausgeber des Zertifikats. Beim ersten Zugriff auf dessen Website wird der Browser den Benutzer daher fragen, ob er dem Zertifikat vertraut. Bejaht er dies, legt der Browser das Zertifikat im Speicher für vertrauenswürdige Zertifikate ab, um später nicht noch einmal fragen zu müssen.
Um dies zu ermöglichen, muss für das betreffende Schlüsselpaar ein
Zertifikat aus dem Keystore exportiert werden. Dieses Zertifikat
wird anschließend in den Truststore importiert. Hier ein Beispiel
für diese beiden Schritte mit einem Schlüsselpaar namens
alias-name
und einem exportierten Zertifikat namens
name.cer
. Als Keystore und Truststore werden
keystore.jks
bzw. cacerts.jks
verwendet.
keytool -export -alias alias-name -storepass changeit -file name.cer -keystore keystore.jks keytool -import -v -trustcacerts -alias alias-name -file name.cer -keystore cacerts.jks \ -keypass changeit -storepass changeit
Insgesamt wurden drei Dateien, keystore.jks
,
cacerts.jks
und name.cer
, angelegt, die
sich nun im bin
-Verzeichnis des Java-JDKs befinden. Um diese
Dateien dem Trifork-Server bekannt zu machen, legen Sie sie bitte unter dem
Pfad installDir/domains/default/servers/default/config
ab. Sichern Sie vorher auf jeden Fall die bereits existierenden Dateien
keystore.jks
und cacerts.jks
. In der
Management-Konsole können Sie unter Security, SSL prüfen, ob der Trifork-Server
das betreffende Zertifikat eingebunden hat.
Zur Umwandlung bestehender Zertifikate (*.pem
;
*.der
; *.p12
) in das Java-Keystore-Format können
freie Tools aus dem Internet verwendet werden. Einzelne Zertifikatscontainer
können mit OpenSSL
(http://www.openssl.org/support/faq.html)
in ein anderes Format konvertiert werden.