REMARQUE :Les informations de cette section ne concernent pas OES Linux ou OES NetWare, qui installe à la fois Tomcat et Apache. La documentation de OES Linux inclut des informations sur le remplacement du certificat Apache/Tomcat auto-signé.
Les installations de iManager en mode autonome incluent un certificat auto-signé temporaire qui devra être utilisé par Tomcat. Ce certificat expire après un an.
Il n'est pas destiné à une implémentation à long terme. Il s'agit d'une solution temporaire pour rendre votre système opérationnel afin de pouvoir utiliser iManager immédiatement après l'installation, et ce en toute sécurité. OpenSSL déconseille l'utilisation de certificats auto-signés sauf à des fins de tests.
Le problème pour remplacer le certificat auto-signé est que le keystore utilisé par défaut par Tomcat est au format {JKS} Tomcat. L'outil utilisé pour modifier ce keystore, keytool, ne peut pas importer de clé privée. Il utilise uniquement une clé auto-générée.
Si vous utilisez eDirectory, vous pouvez faire appel au serveur de certificats Novell pour générer, suivre, stocker et révoquer en toute sécurité des certificats sans autre investissement. Pour générer une paire clé publique/clé privée dans eDirectory à l'aide du serveur de certificats Novell, effectuez la procédure suivante pour votre plate-forme :
Les instructions suivantes indiquent comment créer une paire de clés dans eDirectory et exporter les clés Autorité de certification publique, privée et de racine via un fichier PKCS#12 sur la plate-forme Linux. Cela inclut la modification du fichier de configuration server.xml de Tomcat afin d'utiliser la directive PKCS12 et de faire pointer la configuration vers un fichier P12 proprement dit plutôt que d'utiliser le keystore JKS par défaut.
Les fichiers associés à cette procédure sont les suivants :
La paire de clés temporaire est stockée dans le fichier /var/opt/novell/novlwww/.keystore.
Les racines approuvées se trouvent dans le fichier /etc/opt/novell/java/security/cacerts.
Le fichier pour configurer l'utilisation de certificats par Tomcat est /etc/opt/novell/tomcat5/server.xml.
Créez un nouveau certificat de serveur avec iManager.
Dans iManager, sélectionnez Serveur de certificats Novell > Créer un certificat de serveur. Sélectionnez le serveur approprié, spécifiez un surnom et acceptez les autres paramètres par défaut du certificat.
Exportez le certificat de serveur dans le répertoire privé de Tomcat (/var/opt/novell/novlwww). Dans iManager, sélectionnez Administration de l'annuaire > Modifier un objet. Recherchez l'objet KMO et sélectionnez-le. Sous l'onglet Certificats, sélectionnez Exporter. Spécifiez un mot de passe et enregistrez le certificat de serveur sous forme de fichier pkcs12 (.pfx).
Convertissez le fichier .pfx en un fichier .pem.
Pour ce faire, utilisez une commande similaire à la suivante :
openssl pkcs12 -in newtomcert.pfx -out newtomcert.pem
Entrez le mot de passe indiqué à l'étape 2 et spécifiez un mot de passe pour le nouveau fichier.pem. Si vous le souhaitez, vous pouvez utiliser le même mot de passe.
Convertissez le fichier .pem en un fichier .p12.
Pour ce faire, utilisez une commande similaire à la suivante :
openssl pkcs12 -export -in newtomcert.pem -out newtomcert.p12 -name "New Tomcat"
Entrez le mot de passe indiqué à l'étape 3 et spécifiez un mot de passe pour le nouveau fichier.p12. Si vous le souhaitez, vous pouvez utiliser le même mot de passe.
Arrêtez Tomcat.
/etc/init.d/novell-tomcat5 stop
Éditez le fichier de configuration de Tomcat ( /etc/opt/novell/tomcat5/server.xml) et ajoutez les variables keystoreType, keystoreFile, et keystorePass pour permettre à Tomcat d'utiliser le nouveau fichier de certificat. .p12 Par exemple :
<Connector className="org.apache.coyote.tomcat5.CoyoteConnector" port="8443" minProcessors="5" maxProcessors="75" enableLookups="true" acceptCount="100" debug="0" scheme="https" secure="true" useURIValidationHack="false" disableUploadTimeout="true"> <Factory className="org.apache.coyote.tomcat5.CoyoteServerSocketFactory" clientAuth="false" protocol="TLS" keystoreType="PKCS12" keystoreFile="/var/opt/novell/novlwww/newtomcert.p12" keystorePass="password" /></Connector>
Lorsque vous définissez le type de keystore sur PKCS12, vous devez spécifier le chemin d'accès complet au fichier de certificat, étant donné que Tomcat n'utilisera plus par défaut le chemin du répertoire privé de Tomcat.
Attribuez la propriété du fichier .p12 à l'utilisateur/au groupe Tomcat approprié (normalement, novlwww) et définissez les autorisations de fichier sur user=rw, group=rw et others=r. Par exemple :
chown novlwww:novlwww newtomcert.p12
chmod 654 newtomcert.p12
Relancez Tomcat. Par exemple :
/etc/init.d/novell-tomcat5 start
Les instructions suivantes indiquent comment créer une paire de clés dans eDirectory et exporter les clés Autorité de certification publique, privée et de racine via un fichier PKCS#12 sur la plate-forme Windows. Cela inclut la modification du fichier de configuration server.xml de Tomcat afin d'utiliser la directive PKCS12 et de faire pointer la configuration vers un fichier P12 proprement dit plutôt que d'utiliser le keystore JKS par défaut.
Les fichiers associés à cette procédure, ainsi que leur emplacement par défaut, sont les suivants :
La paire de clés temporaire : C:\Program Files\Novell\Tomcat\conf\ssl\. keystore.
Les certificats de racine approuvée : C:\Program Files\Novell\jre\lib\security\cacerts.
La configuration de l'utilisation du certificat par Tomcat : C:\Program Files\Novell\Tomcat\conf\server.xml
Créez un certificat de serveur avec iManager.
Dans iManager, sélectionnez Serveur de certificats Novell > Créer un certificat de serveur. Sélectionnez le serveur approprié, spécifiez un surnom et acceptez les autres paramètres par défaut du certificat.
Exportez le certificat de serveur. Dans iManager, sélectionnez Administration de l'annuaire > Modifier un objet. Recherchez l'objet KMO et sélectionnez-le. Sous l'onglet Certificats, sélectionnez Exporter. Spécifiez un mot de passe et enregistrez le certificat de serveur sous forme de fichier pkcs12 (.pfx).
Convertissez le fichier .pfx en un fichier .pem.
REMARQUE :Openssl n'est pas installé par défaut sous Windows, mais une version pour la plate-forme Windows est disponible sur le site Web Openssl. Vous pouvez également convertir le certificat sur une plate-forme Linux sur laquelle Openssl est installé par défaut.
Pour ce faire, utilisez une commande similaire à la suivante :
openssl pkcs12 -in newtomcert.pfx -out newtomcert.pem
Entrez le mot de passe indiqué à l'étape 2 et spécifiez un mot de passe pour le nouveau fichier.pem. Si vous le souhaitez, vous pouvez utiliser le même mot de passe.
Convertissez le fichier .pem en un fichier .p12.
Pour ce faire, utilisez une commande similaire à la suivante :
openssl pkcs12 -export -in newtomcert.pem -out newtomcert.p12 -name "New Tomcat"
Entrez le mot de passe indiqué à l'étape 3 et spécifiez un mot de passe pour le nouveau fichier.12. Si vous le souhaitez, vous pouvez utiliser le même mot de passe.
Copiez le fichier .p12 au même emplacement que le certificat Tomcat.
Par défaut, il s'agit de l'emplacement suivant : C:\Program Files\Novell\Tomcat\conf\ssl\.
Arrêtez le service Tomcat.
/etc/init.d/novell-tomcat5 stop
Éditez le fichier server.xml de Tomcat et ajoutez les variables keystoreType, keystoreFile et keystorePass pour permettre à Tomcat d'utiliser le nouveau fichier de certificat .p12. Par exemple :
<Connector className="org.apache.coyote.tomcat5.CoyoteConnector" port="8443" minProcessors="5" maxProcessors="75" enableLookups="true" acceptCount="100" debug="0" scheme="https" secure="true" useURIValidationHack="false" disableUploadTimeout="true"> <Factory className="org.apache.coyote.tomcat5.CoyoteServerSocketFactory" clientAuth="false" protocol="TLS" keystoreType="PKCS12" keystoreFile="/conf/ssl/newtomcert.p12" keystorePass="password" />
Lorsque vous définissez le type de keystore sur PKCS12, vous devez spécifier le chemin d'accès complet au fichier de certificat, étant donné que Tomcat n'utilisera plus par défaut le chemin du répertoire privé de Tomcat.
Démarrez le service Tomcat.