SSL für JBoss Application Server konfigurieren

Zum Konfigurieren von SSL unter JBoss Application Server benötigen Sie eine SSL-Berechtigung für die Authentifizierung. Sie können das Java-Keytool zum Erstellen einer Berechtigung oder zum Anfordern und Importieren einer Berechtigung von einer Zertifizierungsstelle verwenden. Anschließend müssen Sie SSL unter JBoss aktivieren.

Sie können das Keytool mit einem einzelnen Befehl ausführen, der alle zum Erstellen des Keystore erforderlichen Informationen enthält.

In diesem Verfahren gilt:

  • [appserver root] ist der Basisordner des Anwendungs-Servers, auf dem AEM Forms ausgeführt wird.
  • [type] ist ein Ordnername, der von der von Ihnen ausgeführten Installation abhängig ist.

SSL-Berechtigung erstellen

  1. Wechseln Sie in einer Eingabeaufforderung zum Ordner „[JAVA HOME]/bin“ und geben Sie den folgenden Befehl ein, um die Berechtigung und den Keystore zu erstellen:

    keytool -genkey -dname "CN=Host-Name , OU=Gruppenname , O=Firmenname ,L=Stadt , S=Bundesland , C=Ländercode -alias "AEMForms Cert" -keyalg RSA -keypassSchlüssel_passwort -keystoreKeystore-Name .keystore

    HINWEIS

    Ersetzen Sie [JAVA_HOME] durch den Ordner, in dem das JDK installiert ist, und ersetzen Sie die kursiv gedruckten Werte durch die für Ihre Umgebung zutreffenden Werte. Der Hostname ist der voll qualifizierte Domain-Name des Anwendungsservers.

  2. Geben Sie das keystore_password ein, wenn Sie zur Eingabe eines Passworts aufgefordert werden. Das Kennwort für den Keystore und der Schlüssel müssen identisch sein.

    HINWEIS

    Das in diesem Schritt eingegebene keystore_password kann dem in Schritt 1 eingegebenen Passwort (Schlüssel-Passwort) entsprechen oder anders lauten.

  3. Kopieren Sie „Keystore-Name.keystore“ durch Eingabe eines der folgenden Befehle in den Ordner [appserver root]/server/[type]/conf:

    • (Windows-Einzel-Server) copy keystorename.keystore[appserver root]\standalone\configuration
    • (Windows Servercluster) Koporieren Sie keystorename.keystore[appserver root]\domain\configuration
    • (Linux-Einzel-Server) cp keystorename.keystore [appserver root]/standalone/configuration
    • (Linux-Servercluster) cp <em>keystorename</em>.keystore<em>[appserver root]</em>/domain/configuration
  4. Exportieren Sie die Zertifikatdatei durch Eingabe des folgenden Befehls:

    • (Einzel-Server) keytool -export -alias "AEMForms Cert" -file AEMForms_cert.cer -keystore [appserver root]/standalone/configuration/keystorename.keystore
    • (Servercluster) keytool -export -alias "AEMForms Cert" -file AEMForms_cert.cer -keystore [appserver root]/domain/configuration/keystorename.keystore
  5. Geben Sie das keystore_Kennwort ein, wenn Sie zur Eingabe eines Kennworts aufgefordert werden.

  6. Kopieren Sie die Datei „AEMForms_cert.cer“ durch Eingabe des folgenden Befehls in den Ordner „[Anwendungs-Server-Stammordner]\conf“:

    • (Windows-Einzel-Server) copy AEMForms_cert.cer [appserver root]\standalone\configuration
    • (Windows Servercluster) copy AEMForms_cert.cer [appserver root]\domain\configuration
    • (Linux-Einzel-Server) cp AEMForms _cert.cer [appserver root]\standalone\configuration
    • (Linux-Servercluster) cp AEMForms _cert.cer [appserver root]\domain\configuration
  7. Zeigen Sie den Inhalt des Zertifikats durch Eingabe des folgenden Befehls an:

    • keytool -printcert -v -file [appserver root]\standalone\configuration\AEMForms_cert.cer
    • keytool -printcert -v -file [appserver root]\domain\configuration\AEMForms_cert.cer
  8. Um ggf. Schreibzugriff auf die Datei „cacerts“ im Ordner „[JAVA_HOME]\jre\lib\security“ zu ermöglichen, führen Sie die folgende Aufgabe aus:

    • (Windows) Klicken Sie mit der rechten Maustaste auf die Datei „cacerts“, wählen Sie „Eigenschaften“ und deaktivieren Sie das Attribut „Schreibgeschützt“.
    • (Linux) Typ chmod 777 cacerts
  9. Importieren Sie das Zertifikat durch Eingabe des folgenden Befehls:

    keytool -import -alias "AEMForms Cert" -fileAEMForms_cert .cer -keystoreJAVA_HOME \jre\lib\security\cacerts

  10. Geben Sie changeit als Passwort ein. Dieses Kennwort ist das Standardkennwort für Java-Installationen. Eventuell wurde es von Ihrem Systemadministrator geändert.

  11. Wenn Sie dazu aufgefordert werden, Trust this certificate? [no] einzugeben, geben Sie Folgendes ein: yes. Daraufhin wird die Bestätigung „Certificate was added to keystore“ angezeigt.

  12. Wenn Sie die Verbindung über SSL von Workbench aus herstellen, müssen Sie das Zertifikat auf dem Workbench-Computer installieren.

  13. Öffnen Sie in einem Texteditor die folgende Dateien zur Bearbeitung:

    • Einzel-Server – [appserver root]/standalone/configuration/lc_<dbname/turnkey>.xml

    • Servercluster – [appserver root]/domain/configuration/host.xml

    • Servercluster – [appserver root]/domain/configuration/domain_<dbname>.xml

    • Für Einzelserver Fügen Sie in der Datei „lc_<dbaname/tunkey>.xml“ Folgendes nach dem Abschnitt „<security-realms>“ ein:
    <security-realm name="SSLRealm">
    <server-identities>
    <ssl>
    <keystore path="C:/Adobe/Adobe_Experience_Manager_Forms/jboss/standalone/configuration/aemformses.keystore" keystore-password="changeit" alias="AEMformsCert" key-password="changeit"/>
    </ssl>
    </server-identities>
    </security-realm>
    

    Suchen Sie den Abschnitt <server>, der sich im Anschluss an folgendem Code befindet:

    <http-listener name="default" socket-binding="http" redirect-socket="https" max-post-size="104857600"/>

    Fügen Sie Folgendes dem <server>-Abschnitt hinzu, der nach dem obigen Code steht:

    <https-listener name="default-secure" socket-binding="https" security-realm="SSLRealm"/>
    
    • Fügen Sie für Servercluster in „[Anwendungs-Server-Stammordner]\domain\configuration\host.xml“ auf allen Knoten den Abschnitt <security-realms> hinzu:
    <security-realm name="SSLRealm">
    <server-identities>
    <ssl>
    <keystore path="C:/Adobe/Adobe_Experience_Manager_Forms/jboss/standalone/configuration/aemformses.keystore" keystore-password="changeit" alias="AEMForms Cert" key-password="changeit"/>
    </ssl>
    </server-identities>
    </security-realm>
    

    Suchen Sie auf dem Hauptknoten des Serverclusters in „[Anwendungs-Server-Stammordner]\domain\configuration\domain_<dbname>.xml“ den Abschnitt <server>, der nach dem folgenden Code steht:

    <http-listener name="default" socket-binding="http" redirect-socket="https" max-post-size="104857600"/>

    Fügen Sie Folgendes dem <server>-Abschnitt hinzu, der nach dem obigen Code steht:

    <https-listener name="default-secure" socket-binding="https" security-realm="SSLRealm"/>
    
  14. Ändern Sie die Werte für die Attribute keystoreFile und keystorePass in das Keystore-Kennwort, das Sie beim Erstellen des Keystore festgelegt haben.

  15. Starten Sie den Anwendungsserver neu:

    • Für Turnkey-Installationen:

      • Klicken Sie in der Windows-Systemsteuerung auf Verwaltung und dann auf Dienste.
      • Wählen Sie JBoss für Adobe Experience Manager Forms.
      • Wählen Sie Aktion > Anhalten.
      • Warten Sie, bis als Status des Dienstes „Angehalten“ angezeigt wird.
      • Wählen Sie Aktion > Starten.
    • Für von Adobe vorkonfigurierte oder manuell konfigurierte JBoss-Installationen:

      • Wechseln Sie in einer Eingabeaufforderung zum Ordner „[appserver root]/bin“.

      • Beenden Sie den Server durch Eingabe des folgenden Befehls:

        • (Windows) shutdown.bat -S
        • (Linux) ./shutdown.sh -S
      • Warten Sie, bis der JBoss-Prozess vollständig heruntergefahren wurde. (Dies ist der Fall, wenn der JBoss-Prozess die Kontrolle wieder an das Terminal übergibt, in dem er gestartet wurde.)

      • Starten Sie den Server durch Eingabe des folgenden Befehls:

        • (Windows) run.bat -c <profile>
        • (Linux) ./run.sh -c <profile>
  16. Um mithilfe von SSL auf Administration Console zuzugreifen, geben Sie https://[host name]:'port'/adminui in einem Webbrowser ein:

    Der SSL-Standardanschluss für JBoss ist 8443. Geben Sie von hier an beim Zugriff auf AEM Forms diesen Anschluss an.

Berechtigung von einer Zertifizierungsstelle anfordern

  1. Wechseln Sie in einer Eingabeaufforderung zum Ordner „[JAVA HOME]/bin“ und geben Sie den folgenden Befehl ein, um den Keystore und den Schlüssel zu erstellen:

    keytool -genkey -dname "CN=Host-Name , OU=Gruppenname , O=Firmenname , L=Stadt , S=Bundesland , C=Ländercode -alias "AEMForms Cert" -keyalg RSA -keypass-Schlüssel-Passwort -keystoreKeystore-Name .keystore

    HINWEIS

    Ersetzen Sie [JAVA_HOME] durch den Ordner, in dem das JDK installiert ist, und ersetzen Sie die kursiv gedruckten Werte durch die für Ihre Umgebung zutreffenden Werte.

  2. Geben Sie den folgenden Befehl ein, um eine Zertifikatanforderung an die Zertifizierungsstelle zu erzeugen:

    keytool -certreq -alias „AEMForms Cert“ -keystoreKeystore-Name .keystore -fileAEMFormscertRequest.csr

  3. Wenn Ihre Anforderung einer Zertifikatdatei erfüllt wurde, führen Sie die Schritte im nächsten Verfahren durch.

Berechtigung von einer Zertifizierungsstelle zum Aktivieren von SSL verwenden

  1. Wechseln Sie in einer Eingabeaufforderung zum Ordner „[JAVA HOME]/bin“ und geben Sie den folgenden Befehl ein, um das Stammzertifikat der Zertifizierungsstelle, mit dem die CSR-Datei signiert wurde, zu importieren:

    keytool -import -trustcacerts -file rootcert.pem -Keystore keystorename.keystore -alias root

    Wenn sich das Stammzertifikat nicht im Browser befindet, importieren Sie es ebenfalls dorthin.

    HINWEIS

    Ersetzen Sie [JAVA_HOME] durch den Ordner, in dem das JDK installiert ist, und ersetzen Sie die kursiv gedruckten Werte durch die für Ihre Umgebung zutreffenden Werte.

  2. Wechseln Sie in einer Eingabeaufforderung zum Ordner „[JAVA HOME]/bin“ und geben Sie den folgenden Befehl ein, um die Berechtigung in den Keystore zu importieren:

    keytool -import -trustcacerts -fileCACertificateName .crt -keystorekeystorename .keystore

    HINWEIS
    • Ersetzen Sie [JAVA_HOME] durch den Ordner, in dem das JDK installiert ist, und ersetzen Sie die kursiv gedruckten Werte durch die für Ihre Umgebung zutreffenden Werte.
    • Das importierte, von der Zertifizierungsstelle signierte Zertifikat ersetzt ein selbst signiertes Zertifikat (sofern vorhanden).
  3. Führen Sie die Schritte 13 bis 18 im Abschnitt „SSL-Berechtigung erstellen“ durch.

Auf dieser Seite