Configuration de OneClick pour SSL (Secure Sockets Layer)

Sommaire
casp1041
OneClick prend en charge le protocole SSL (Secure Sockets Layer) pour le chiffrement des communications entre le serveur Web OneClick et les clients OneClick. Les clients OneClick peuvent accéder aux informations de manière sécurisée sur des réseaux non sécurisés, comme Internet. Outre le chiffrement, SSL offre une authentification basée sur des certificats. L’authentification empêche les utilisateurs de télécharger et d’exécuter des applications à partir de sources suspectes ou non approuvées.
Les certificats signés par l’autorité de certification et les certificats autosignés fournissent des connexions sécurisées à l’aide du chiffrement SSL. Toutefois, les certificats signés par une autorité de certification fournissent un niveau de sécurité supplémentaire. En effet, les certificats de ce type vérifient l’identité du créateur du certificat et certifient que le produit a bien été généré par ce fournisseur. Les certificats signés par une autorité de certification protègent les serveurs en rendant difficile l’emprunt d’identité d’une entité de confiance (fournisseur certifié). Cependant, les certificats autosignés sont appropriés si vous avez besoin du chiffrement fourni par un certificat SSL sans nécessiter la preuve de la source du certificat.
Après la mise à niveau vers
DX NetOps Spectrum
10.3, lorsque vous configurez OneClick pour SSL, un message d’avertissement s’affiche indiquant que JKS doit être migré vers le format PKCS12. Veuillez ignorer cet avertissement et ne pas migrer vers le format PKCS12.
La version de Tomcat fournie avec
DX NetOps Spectrum
10.3 requiert au moins un certificat approuvé dans un référentiel de clés pour fonctionner.
Procédez comme suit :
  1. Sur l’hôte du serveur Web OneClick, accédez au répertoire
    $SPECROOT
    /Java/bin.
  2. Générez un certificat autosigné privé dans le fichier cacerts personnalisé en exécutant la commande suivante :
    ./keytool -genkey -alias tomcatssl -keyalg RSA -keystore c:/win32app/Spectrum/custom/keystore/cacerts
    L’outil keytool affiche plusieurs questions et utilise les valeurs que vous spécifiez pour effectuer les actions suivantes :
    • Créez un nom d’émetteur pour votre organisation (nom unique X.500 sur Internet. Pour plus d’informations, reportez-vous à l’utilitaire keytool à l’adresse http://java.sun.com).
    • Générez le certificat autosigné à l’aide du nom de l’émetteur.
      Si le référentiel de clés n’est pas enregistré sous $SPECROOT/custom/keystore, il est écrasé lors d’une mise à niveau.
  3. Entrez vos réponses aux questions suivantes :
    Enter keystore password:
    Si vous modifiez le mot de passe par défaut du serveur Web Tomcat, spécifiez le mot de passe personnalisé dans le fichier de configuration
    $SPECROOT
    /tomcat/conf/server.xml.
    What is your first and last name?
    Entrez le nom commun (avec le nom de domaine complet) de votre site Web. Par exemple, www.ca.com.
    What is the name of your organizational unit?
    Entrez un nom d’organisation court, tel que le nom d’une division, d’une unité commerciale ou d’un service. Par exemple, Achats.
    What is the name of your organization?
    Entrez un nom d’organisation long, tel que ABCSystems, Inc.
    What is the name of your City or Locality?
    Entrez le nom de votre ville, par exemple Hyderabad.
    What is the name of your State or Province?
    Entrez votre nom complet, par exemple Andhra Pradesh.
    What is the two-letter country code for this unit?
    Entrez le code de pays à deux lettres. Par exemple : IN pour l’Inde.
    Is CN=www.ca.com, OU=Purchasing, O="ABCSystems, Inc.", L=Hyderabad, ST=Andrapradesh, C=IN correct?
    Entrez Yes.
    Enter key password for <tomcatssl> (RETURN if same as keystore password):
    Entrez le mot de passe de clé de <tomcatssl>. Appuyez sur la touche Entrée pour utiliser le mot de passe du référentiel de clés.
    Après avoir ajouté la clé tomcatssl, effectuez une sauvegarde du fichier $SPECROOT/custom/keystore/cacerts, si le référentiel de clés est endommagé.
  4. (Facultatif) Si vous avez besoin d’un certificat signé par une autorité de certification, demandez-le auprès de l’autorité de certification, puis importez-le.
    Avant de procéder à cette étape (4), il est recommandé de passer à l’étape 5 et de configurer SSL. En effet, vous pouvez ensuite effectuer un test pour déterminer si les informations que vous avez fournies à l’étape précédente sont correctes. Si le protocole HTTPS fonctionne, vous pouvez revenir à cette étape.
    Dans le cadre de la configuration du certificat, générez un fichier de demande de signature de certificat (CSR) à partir du système qui exécute le serveur Web OneClick sécurisé. Le kit de développement Java (JDK) fourni avec OneClick fournit un utilitaire keytool qui permet de générer le fichier CSR. Utilisez les informations fournies à l’étape précédente. Utilisez le même nom d’alias que tomcatssl.
  5. Demandez le certificat signé par l’autorité de certification et importez-le comme suit :
  6. Sur l’hôte du serveur Web OneClick, accédez au répertoire
    $SPECROOT
    /Java/bin.
    1. Saisissez la commande suivante pour générer le fichier CSR :
    ./keytool -certreq -alias tomcatssl -keystore $SPECROOT/custom/keystore/cacerts -file filename.csr
    Vous êtes invité à saisir un mot de passe. Saisissez le mot de passe que vous avez fourni précédemment. Le contenu du fichier .csr généré est utilisé pour demander le certificat sécurisé auprès de l’autorité de certification (étape suivante).
    Demandez un certificat sécurisé auprès d’une autorité de certification. Voici quelques exemples :
    VeriSign : http://www.verisign.com
    TrustCenter : http://www.trustcenter.de
    Thawte : http://www.thawte.com
    Les instructions à suivre sont spécifiées sur ces sites Web.
    Importez le certificat signé par l’autorité de certification dans le référentiel de clés utilisé par le serveur Web OneClick. Pour plus d’informations, consultez la section Importation d’un certificat signé par une autorité de certification.
  7. Configurez le socket sécurisé sur le serveur qui héberge le serveur Web OneClick. Pour plus d’informations, consultez la section Configuration du socket sécurisé sur l’hôte de serveur Web OneClick.
  8. Si vous exécutez Report Manager, configurez OneClick pour qu’il soit lancé à partir de Report Manager à l’aide de SSL. Pour plus d’informations, reportez-vous à la section Configuration de OneClick et de Report Manager pour Secure Sockets Layer.
Importation d’un certificat signé par une autorité de certification
Si vous avez obtenu un certificat SSL signé par une autorité de certification, importez-le dans le référentiel de clés utilisé par le serveur Web OneClick.
Un certificat de chaîne (racine) de l’autorité de certification doit également exister dans le référentiel de clés. Par défaut, OneClick inclut des certificats de chaîne provenant de nombreux fournisseurs populaires. Dans la page SSL Certificates administration (Administration des certificats SSL), cliquez sur List (Liste) pour afficher les alias de ces certificats. Ces informations vous aident à déterminer si vous devez obtenir un certificat et l’importer.
Procédez comme suit :
  1. Si nécessaire, téléchargez un certificat de chaîne (racine) à partir de l’autorité de certification auprès de laquelle vous avez obtenu le certificat signé.
  2. Si vous avez téléchargé un certificat de chaîne à l’étape précédente, importez-le dans le référentiel de clés utilisé par le serveur Web OneClick :
    1. Sur l’hôte du serveur Web OneClick, accédez au répertoire
      $SPECROOT
      /Java/bin.
    2. Entrez la commande suivante :
      ./keytool -import -alias root -keystore $SPECROOT/custom/keystore/cacerts -trustcacerts -file root_chain_certificate_filename
      Vous êtes invité à saisir un mot de passe pour le serveur Web Tomcat. Le nom d’alias ne doit pas obligatoirement être "root". Vous pouvez fournir un nom plus descriptif pour le type de certificat racine que vous importez. Le nom d’alias ne doit pas déjà exister.
  3. Importez le certificat signé par l’autorité de certification dans le référentiel de clés utilisé par le serveur Web OneClick.
    1. Sur l’hôte du serveur Web OneClick, accédez au répertoire
      $SPECROOT
      /Java/bin.
    2. Entrez la commande suivante :
      ./keytool -import -alias tomcatssl -keystore $SPECROOT/custom/keystore/cacerts -trustcacerts -file your_certificate_filename
      Vous êtes invité à saisir un mot de passe pour le serveur Web Tomcat. Utilisez l’alias que vous avez utilisé lors de la génération du certificat autosigné privé. Pour plus d'informations, consultez la section Configuration requise pour la résolution de nom.
      L’utilitaire keytool peut importer des certificats X.509 v1, v2 et v3, ainsi que les chaînes de certificat PKCS#7 composées de certificats de ce type. Vérifiez que le certificat de l’autorité de certification est de ce type.
(Facultatif) Connexion à l’aide d’un nom de domaine non complet
La sécurité SSL vous oblige à utiliser le nom de domaine complet de votre serveur OneClick pour la connexion. Par exemple :
https://oneclick.ca.com/spectrum
. Pour vous connecter avec le nom de domaine non complet (par exemple :
https://oneclick/spectrum
) ou avec une entrée DNS autre que le nom du serveur OneClick local, utilisez un autre nom de sujet (SAN) avec l’option -ext :
./keytool -genkey -alias tomcatssl -keyalg RSA -keysize 2048 -ext SAN=dns:oneclick -keystore c:/win32app/Spectrum/custom/keystore/cacerts
Modification des arguments JVM lorsque SSL est activé
Suivez la procédure décrite dans le chapitre Tâches de post-mise à niveau de la section Application Web OneClick, si vous avez activé le protocole SSL dans OneClick ou si vous avez modifié les ports OneClick après avoir effectué une mise à niveau vers
DX NetOps Spectrum
10.4 ou vers une version ultérieure.
Configuration du socket sécurisé sur l’hôte de serveur Web OneClick
Configurez le socket sécurisé sur le serveur qui héberge le serveur Web OneClick. Considérez cette tâche comme la dernière étape de la configuration du serveur Web OneClick pour le protocole SSL.
DX NetOps Spectrum
prend en charge SSL v3.
Procédez comme suit :
  1. Arrêtez le serveur Web OneClick.
  2. Ouvrez le fichier $SPECROOT/tomcat/conf/server.xml dans l’éditeur de texte de votre choix.
  3. Localisez la section suivante dans le fichier server.xml :
    <!-- Define a SSL Coyote HTTP/1.1 Connector on port 8443 --> <!-- <Connector port="8443" enableLookups="true" disableUploadTimeout="true" tcpNoDelay="true" acceptCount="100" scheme="https" secure="true" SSLEnabled="true" clientAuth="false" sslProtocol="TLS" sslEnabledProtocols="TLSv1.2" ciphers="TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384, TLS_DHE_RSA_WITH_AES_128_GCM_SHA256, TLS_DHE_RSA_WITH_AES_256_GCM_SHA384, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_256_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_CBC_SHA256, TLS_DHE_RSA_WITH_AES_256_CBC_SHA256" keystoreFile="custom/keystore/cacerts" keystorePass="changeit"> </Connector> -->
    Par défaut, l’élément <Connector> de la section est mis en commentaire.
    Le fragment XML précédent est spécifique à Windows, et 443 est le port par défaut sur lequel le serveur Web OneClick écoute les communications SSL. Les utilisateurs finals peuvent omettre le port dans l’URL pour accéder à la page d’accueil de OneClick :
    https://<fully_qualified_host_name>/spectrum
    Dans une installation UNIX, le serveur Web OneClick n’est pas exécuté en tant que root et le port par défaut est 8443 (car il doit être supérieur à 1024). Par conséquent, les utilisateurs finals doivent spécifier le numéro de port dans le navigateur Web lorsqu’ils entrent l’URL pour accéder à la page d’accueil de OneClick :
    https://<fully_qualified_host_name>:8443/spectrum
  4. Supprimez les commentaires entourant la définition du connecteur. Effectuez les opérations suivantes :
    1. Supprimez "<!--" de la ligne précédant <Connector.
    2. Supprimez "-->" de la fin de la section (après </Connector>).
  5. Remplacez la variable <
    SPECROOT
    > dans la valeur de l’attribut keystoreFile par le chemin d’accès complet du répertoire dans lequel
    DX NetOps Spectrum
    est installé. Vous pouvez utiliser le fichier cacerts pour accéder aux commandes de l’outil keytool permettant de générer les certificats. Voici quelques exemples :
    • Windows
      C:/win32app/SPECTRUM/custom/keystore/cacerts
    • UNIX
      /usr/SPECTRUM/custom/keystore/cacerts
  6. Enregistrez le fichier server.xml et fermez-le.
  7. Si vous avez intégré
    DX NetOps Spectrum
    à CA Performance Center, procédez comme suit pour activer la communication entre OneClick avec activation de SSL et CA Performance Center :
    1. Ouvrez le fichier axis2.xml dans un éditeur à partir de l’emplacement $SPECROOT/tomcat/webapps/axis2/WEB-INF/conf.
    2. Localisez la section suivante dans le fichier axis2.xml :
      <transportReceiver name="http" class="org.apache.axis2.transport.http.AxisServletListener"> <parameter name="port">8080</parameter> </transportReceiver>
    3. Modifiez la section comme suit :
      <transportReceiver name="https" class="org.apache.axis2.transport.http.AxisServletListener"> <parameter name="port">8443</parameter> </transportReceiver>
      Si vous devez configurer HTTP et HTTPS à la fois, vous devez configurer explicitement les numéros de port dans le fichier axis2.xml, comme dans l’exemple suivant :
      <transportReceiver name="http" class="org.apache.axis2.transport.http.AxisServletListener"> <parameter name="port">8080</parameter> </transportReceiver> <transportReceiver name="https" class="org.apache.axis2.transport.http.AxisServletListener"> <parameter name="port">8443</parameter> </transportReceiver>
  8. Démarrez le serveur Web OneClick.
    Des instructions sur la configuration de SSL et sur les paramètres de configuration sont disponibles sur le site http://tomcat.apache.org/tomcat-9.0-doc/ssl-howto.html.
Configuration de OneClick et de Report Manager pour Secure Sockets Layer
Si vous exécutez Report Manager et que vous avez configuré OneClick pour utiliser le protocole SSL (Secure Sockets Layer) dans le cadre du chiffrement des communications entre les clients OneClick et le serveur Web OneClick, vous devez également configurer OneClick pour qu’il soit lancé à partir de Report Manager à l’aide de SSL.
Report Manager permet de créer des rapports sur l’inventaire, les performances, l’historique des modifications et l’historique des pannes des ressources réseau gérées par
DX NetOps Spectrum
. Pour plus d’informations, consultez la section Report Manager.
Procédez comme suit :
  1. Activez les autorisations d’écriture sur le fichier suivant :
    <$SPECROOT>\tomcat\webapps\spectrum\repmgr\js\repmgr.js
  2. Ouvrez le fichier que vous avez modifié à l’étape précédente et localisez la fonction launchOneClick.
  3. Localisez la ligne suivante dans la fonction launchOneClick :
    url = "http://"+servername+contextApp+"/oneclick.jnlp";
  4. Remplacez "http" par "https", comme suit :
    url = "https://"+servername+contextApp+"/oneclick.jnlp";
  5. Enregistrez le fichier, puis fermez-le.
    Ce fichier est écrasé lors d’une mise à niveau. Vous devez donc répéter cette procédure après une mise à niveau.
Vous pouvez lancer OneClick dans le contexte d’un rapport spécifique (par exemple, dans le contexte d’une unité répertoriée dans un rapport d’actifs). Cependant, ce type de lancement ne peut pas être configuré pour utiliser le protocole SSL.
Impossible de se connecter à OneClick à l’aide du protocole HTTPS après la mise à niveau vers la version 10.3
Symptôme :
Une fois la mise à niveau vers
DX NetOps Spectrum
10.3 terminée, il est impossible de se connecter à OneClick à l’aide d’une connexion HTTPS.
Ce problème survient après la migration de JKS vers le format PKCS12. Après avoir généré la clé SSL, le message suivant s’affiche dans lequel il est conseillé de migrer JKS vers le format PKCS12 :
The JKS keystore uses a proprietary format. It is recommended to migrate to PKCS 12 which is an industry standard format using "keytool -importkeystore -srckeyst ore c:/win32app/SPECTRUM/custom/keystore/cacerts -destkeystore c:/win32app/SPECT RUM/custom/keystore/cacerts -deststoretype pkcs12".
Solution :
Il est recommandé d’ignorer ce message d’avertissement et de ne pas migrer vers le format PKCS12. Si vous avez déjà procédé à la migration, remplacez le référentiel de clés sauvegardé (pendant la migration) et redémarrez Tomcat.
Procédez comme suit :
  1. Lors de la génération de
Erreur lors de la connexion au serveur Web OneClick configuré pour SSL
Symptôme :
Une erreur est renvoyée lors de la tentative de connexion à partir d’un navigateur (Chrome, FireFox, Internet Explorer ou Safari) après la configuration du serveur
DX NetOps Spectrum
OneClick pour SSL.
Cette erreur est due à l’URL utilisé pour pointer le navigateur sur le serveur OneClick. L’URL contient une adresse IP ou un nom d’hôte qui ne correspond pas à ceux utilisés pour générer le certificat qui a été ajouté au référentiel de clés du serveur OneClick. Cette erreur peut également s'expliquer par le fait que la recherche DNS n’est pas résolue sur le nom ou l’adresse IP appropriés.
Solution :
Procédez comme suit :
  1. Lors de la génération du certificat privé autosigné, vous devez utiliser la commande suivante :
    ./keytool -genkey -alias tomcatssl -keyalg RSA -keystore $SPECROOT/custom/keystore/cacerts
    Cette commande pose alors un certain nombre de questions, la seconde étant :
    What is your first and last name?
    (Quel est le prénom et le nom de famille ?).
    Il s’agit du nom commun (nom d’hôte singulier) ou du nom de domaine complet du serveur OneClick. Ainsi, lorsque vous vous connectez à l’aide du navigateur, vous devez vous référer à ce nom d’hôte dans l’URL (et non à l’adresse IP) pour que la connexion HTTPS fonctionne et pour que le certificat soit validé par le navigateur.
  2. Importez le certificat signé par votre autorité de certification :
    $SPECROOT/Java/bin> ./keytool -import -alias tomcatssl -keystore $SPECROOT/custom/keystore/cacerts -trustcacerts -file <PATH>/<FILENAME.cer>
  3. Entrez le mot de passe du référentiel de clés. La réponse de certificat a été installée dans le référentiel de clés. Si votre DNS ne résout pas le nom d’hôte du serveur OneClick, modifiez le fichier hosts (dans Windows, sous ~\win32\drivers\etc\hosts ; dans Linux, sous /etc/hosts) pour inclure les noms d’hôtes singulier et FQDN du serveur OneClick afin de contourner les problèmes liés à votre DNS. Ensuite, dans le navigateur, ciblez l’URL du serveur OneClick comme suit :
    https://<HOSTNAME>:443/spectrum
Erreurs lors de la connexion au serveur Web OneClick sécurisé à partir d’un client OneClick à l’aide de SSL
Symptôme :
Des erreurs se produisent lors d'une tentative de connexion au serveur Web OneClick sécurisé à partir d’un client OneClick utilisant SSL.
Solution :
Procédez aux vérifications suivantes :
  • Le nom de domaine complet de l’hôte sur lequel le serveur Web OneClick est exécuté a été spécifié dans la clé privée que vous avez générée pour signer le certificat de sécurité utilisé pour l’authentification. En principe, vous avez saisi le nom de domaine complet à l’invite suivante lorsque vous avez généré la clé : What is your first and last name? (Quel est le prénom et le nom de famille ?).
  • Le certificat de la chaîne d’autorité de certification (racine)
    et
    le certificat de sécurité ont été importés dans le fichier cacerts du répertoire custom sur le serveur Web OneClick sécurisé.
Erreurs lors du lancement du client OneClick à partir de Report Manager à l’aide de SSL
Symptôme :
Des erreurs se produisent lors du lancement d’un client OneClick à partir de Report Manager à l’aide de SSL.
Solution :
Vérifiez que vous avez terminé la procédure de configuration décrite dans la section Configuration de OneClick et de Report Manager pour Secure Sockets Layer.