Configuration de SSL pour JBoss Application Server

Pour configurer SSL sur JBoss Application Server, vous avez besoin d’informations d’identification SSL pour l’authentification. Vous pouvez utiliser l’outil Java keytool pour créer des informations d’identification ou demander des informations d’identification à une autorité de certification (CA) et les importer. Vous devez ensuite activer SSL sur JBoss.

Pour exécuter l’outil keytool, il suffit de saisir une commande qui comprend toutes les informations requises pour créer le fichier de stockage des clés.

Dans cette procédure :

  • [appserver root] est le répertoire racine du serveur d’applications exécutant AEM forms.
  • [type] correspond à un nom de dossier qui varie selon le type d’installation réalisé.

Création d’informations d’identification SSL

  1. Dans une invite de commande, accédez à [JAVA HOME]/bin et saisissez la commande suivante pour créer les informations d’identification et le fichier de stockage des clés :

    keytool -genkey -dname "CN=Host , OU=NameGroup , O=NameCompany ,L=NameCity , S=** , C=NameStateCountry Code" -alias "AEMForms Cert" -keyalg RSA -keypasskey_ -keystorepasswordkeystorename .keystore

    REMARQUE

    Remplacez [JAVA_HOME] par le répertoire dans lequel le JDK est installé, puis remplacez le texte en italique par les valeurs correspondant à votre environnement. nom_hôte correspond au nom de domaine complet du serveur d’applications.

  2. Saisissez le keystore_password lorsque vous êtes invité à saisir un mot de passe. Le mot de passe du fichier de stockage des clés et celui de la clé doivent être identiques.

    REMARQUE

    Le keystore_password saisi à cette étape peut être le même mot de passe (mot_de_passe_clé) que celui saisi à l’étape 1, ou il peut être différent.

  3. Copiez le nom_stockage_clés.keystore dans le répertoire [appserver root]/server/[type]/conf en saisissant l’une des commandes suivantes :

    • (Serveur unique Windows) copy keystorename.keystore[appserver root]\standalone\configuration
    • (Grappe de serveurs Windows) Copiez keystorename.keystore[appserver root]\domain\configuration
    • (Serveur unique Linux) cp keystorename.keystore [appserver root]/standalone/configuration
    • (Grappe de serveurs Linux) cp <em>keystorename</em>.keystore<em>[appserver root]</em>/domain/configuration
  4. Exportez le fichier de certificat en exécutant la commande suivante :

    • (Serveur unique) keytool -export -alias "AEMForms Cert" -file AEMForms_cert.cer -keystore [appserver root]/standalone/configuration/keystorename.keystore
    • (Grappe de serveurs) keytool -export -alias "AEMForms Cert" -file AEMForms_cert.cer -keystore [appserver root]/domain/configuration/keystorename.keystore
  5. Saisissez le mot_de_passe_clés lorsque vous êtes invité à saisir un mot de passe.

  6. Copiez le fichier AEMForms_cert.cer dans le répertoire [racine du serveur d’applications] \conf en saisissant la commande suivante :

    • (Serveur unique Windows) copy AEMForms_cert.cer [appserver root]\standalone\configuration
    • (Grappe de serveurs Windows) copy AEMForms_cert.cer [appserver root]\domain\configuration
    • (Serveur unique Linux) cp AEMForms _cert.cer [appserver root]\standalone\configuration
    • (Grappe de serveurs Linux) cp AEMForms _cert.cer [appserver root]\domain\configuration
  7. Affichez le contenu du certificat en exécutant la commande suivante :

    • keytool -printcert -v -file [appserver root]\standalone\configuration\AEMForms_cert.cer
    • keytool -printcert -v -file [appserver root]\domain\configuration\AEMForms_cert.cer
  8. Pour accorder l’accès en écriture au fichier cacerts dans [JAVA_HOME]\jre\lib\security, le cas échéant, effectuez la tâche suivante :

    • (Windows) Cliquez avec le bouton droit de la souris sur le fichier cacerts et sélectionnez Propriétés, puis l’attribut Lecture seule.
    • (Linux) Type chmod 777 cacerts
  9. Importez le certificat en saisissant la commande suivante :

    keytool -import -alias “AEMForms Cert” -fileAEMForms_ .cer -keystorecertJAVA_HOME \jre\lib\security\cacerts

  10. Saisissez changeit comme mot de passe. Il s’agit du mot de passe par défaut d’une installation Java, mais l’administrateur système peut l’avoir modifié.

  11. Lorsque vous y êtes invité pour Trust this certificate? [no] :, saisissez yes. La confirmation « Certificate was added to keystore » s’affiche.

  12. Si vous vous connectez via SSL à partir de Workbench, vous devez installer le certificat sur le serveur Workbench.

  13. Dans un éditeur de texte, ouvrez les fichiers suivants pour les modifier :

    • Serveur unique : [appserver root]/standalone/configuration/lc_<dbname/turnkey>.xml

    • Grappe de serveurs - [appserver root]/domain/configuration/host.xml

    • Grappe de serveurs : [appserver root]/domain/configuration/domain_<dbname>.xml

    • Pour un serveur unique, ajoutez l’élément suivant dans le fichier lc_<dbaname/tunkey>.xml après la section <security-realms> :
    <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>
    

    Recherchez la section <server> située après le code suivant :

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

    Ajoutez ce qui suit à la section <server> située après le code ci-dessus :

    <https-listener name="default-secure" socket-binding="https" security-realm="SSLRealm"/>
    
    • Pour une grappe de serveurs, dans la racine du [serveur d’applications]\domain\configuration\host.xml sur tous les noeuds, ajoutez les éléments suivants après <security-realms> la section :
    <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>
    

    Sur le noeud Principal de la grappe de serveurs, dans la [racine du serveur d’applications]\domain\configuration\domain_<dbname>.xml, recherchez la section <server> située après le code suivant :

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

    Ajoutez ce qui suit à la section <server> située après le code ci-dessus :

    <https-listener name="default-secure" socket-binding="https" security-realm="SSLRealm"/>
    
  14. Remplacez la valeur des attributs keystoreFile et keystorePass par le mot de passe du fichier de stockage des clés que vous avez spécifié lors de la création dudit fichier.

  15. Redémarrez le serveur d’applications :

    • Pour les installations clé en main :

      • Dans le Panneau de configuration de Windows, cliquez sur Outils d’administration puis sur Services.
      • Sélectionnez JBoss pour les formulaires Adobe Experience Manager.
      • Sélectionnez Action > Arrêter.
      • Attendez que la mention indiquant l’arrêt du service s’affiche.
      • Sélectionnez Action > Démarrer.
    • Pour les installations de JBoss configurées manuellement ou préconfigurées par Adobe :

      • Ouvrez une invite de commande, puis accédez à [appserver root]/bin.

      • Arrêtez le serveur en saisissant la commande suivante :

        • (Windows) shutdown.bat -S
        • (Linux) ./shutdown.sh -S
      • Attendez l’arrêt complet du processus JBoss (il rend la main au terminal dans lequel il a été démarré).

      • Démarrez le serveur en saisissant la commande suivante :

        • (Windows) run.bat -c <profile>
        • (Linux) ./run.sh -c <profile>
  16. Pour accéder à Administration Console à l’aide de SSL, saisissez https://[host name]:[port]/adminui dans un navigateur web :

    Le port SSL par défaut pour JBoss est 8443. A partir de là, spécifiez ce port lors de l’accès à AEM forms.

Demande d’informations d’identification à une autorité de certification

  1. Dans une invite de commande, accédez à [JAVA HOME]/bin et saisissez la commande suivante pour créer le fichier de stockage des clés et la clé :

    keytool -genkey -dname "CN=Host , OU=NameGroup , O=NameCompany , L=NameCity , S=** , C=NameStateCountry Code" -alias "AEMForms Cert" -keyalg RSA -keypass-key_ -keystorepasswordkeystorename .keystore

    REMARQUE

    Remplacez [JAVA_HOME] par le répertoire dans lequel le JDK est installé, puis remplacez le texte en italique par les valeurs correspondant à votre environnement.

  2. Saisissez le commande suivante afin de générer une demande de certificat à envoyer à l’autorité de certification :

    keytool -certreq -alias "AEMForms Cert" -keystore** .keystore -filenom_stockage_clésAEMFormsRequest.csr

  3. Dès que votre demande de certificat est remplie, passez à la procédure suivante.

Utilisation d’informations d’identification obtenues auprès d’une autorité de certification pour activer SSL

  1. Dans une invite de commande, accédez à [JAVA HOME]/bin et saisissez la commande suivante pour importer le certificat racine de l’autorité de certification auprès de laquelle la demande de signature de certificat a été signée :

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

    Si le certificat racine ne figure pas dans le navigateur, importez-le également à cet endroit.

    REMARQUE

    Remplacez [JAVA_HOME]par le répertoire dans lequel le JDK est installé, puis remplacez le texte en italique par les valeurs correspondant à votre environnement.

  2. Dans une invite de commande, accédez à [JAVA HOME]/bin et saisissez la commande suivante pour importer les informations d’identification dans le fichier de stockage des clés :

    keytool -import -trustcacerts -file** .crt -keystoreCACertificateNamekeystorename .keystore

    REMARQUE
    • Remplacez [JAVA_HOME] par le répertoire dans lequel le JDK est installé, puis remplacez le texte en italique par les valeurs correspondant à votre environnement.
    • le certificat signé par l’autorité de certification et importé va remplacer un certificat public autosigné s’il existe.
  3. Suivez les étapes 13 à 18 de la section Création d’informations d’identification SSL.

Sur cette page