[index des documents]

Conception et mise en oeuvre d'un Service d'Archivage

Tomcat - Sécurité

Creation d'un certificat avec OpenSSL
Creation d'un certificat avec Java keytool
Quelques remarques générales
Quelques liens

Creation d'un certificat avec OpenSSL

Génération de la clé publique sur (2048 bits) :
[root@localhost root]# openssl genrsa -out cle.pem 2048
Generating RSA private key, 2048 bit long modulus
.......................................................+++
................................................................................+++
e is 65537 (0x10001)
Génération du certificat utilisant cette clé :
[root@localhost root]# openssl req -new -x509 -key cle.pem -out cert.pem -days 365
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
- - - - -
Country Name (2 letter code) [GB]:FR
State or Province Name (full name) [Berkshire]:RENNES
Locality Name (eg, city) [Newbury]:RENNES
Organization Name (eg, company) [My Company Ltd]:ORGANISATION
Organizational Unit Name (eg, section) []:ORGANISATION
Common Name (eg, your name or your server's hostname) []:APPLICATION
Email Address []:
Convertion du format PEM en PKCS12 pour Tomcat :
[root@localhost root]# openssl pkcs12 -export -in cert.pem -inkey cle.pem -out cert.p12 -name tomcat
Enter Export Password: eppwd
Verifying - Enter Export Password: eppwd
Modification du connecteur Tomcat en conséquence :
    <Connector port="8443" maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" disableUploadTimeout="true"
               acceptCount="100" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" keystoreType="PKCS12" 
               keystoreFile="/etc/ssl/cert.p12" keystorePass="eppwd"/>
Remarque :
Si vous avez nommé votre certificat .keystore et placé dans votre homedir, vous n'êtes pas obligé de spécifier l'attribut keystoreFile (par défaut Tomcat ira chercher le fichier au bon endroit).

Creation d'un certificat avec Java keytool

Création du certificat auto-signé :
[root@localhost root]# $JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA -keystore /etc/ssl/keystore
Tapez le mot de passe du Keystore :  eppwd
Mot de passe de Keystore trop court, il doit compter au moins 6 caractères
Tapez le mot de passe du Keystore :  mdpkeystore
Quels sont vos prénom et nom ?
  [Unknown] :  ARNAUD LE NORCY
Quel est le nom de votre unité organisationnelle ?
  [Unknown] :  ORGANISATION
Quelle est le nom de votre organisation ?
  [Unknown] :  ORGANISATION
Quel est le nom de votre ville de résidence ?
  [Unknown] :  RENNES
Quel est le nom de votre état ou province ?
  [Unknown] :  ILLE ET VILAINE
Quel est le code de pays à deux lettres pour cette unité ?
  [Unknown] :  FR
Est-ce CN=ARNAUD LE NORCY, OU=ORGANISATION, O=ORGANISATION, L=RENNES, ST=ILLE ET VILAINE, C=FR ?
  [non] :  oui
 
Spécifiez le mot de passe de la clé pour <tomcat>
        (appuyez sur Entrée s'il s'agit du mot de passe du Keystore) :
Modification du connecteur Tomcat en conséquence :
    <Connector port="8443" maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" disableUploadTimeout="true"
               acceptCount="100" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" keystoreFile="/etc/ssl/keystore" 
               keystorePass="mdpkeystore"/>
Remarques :
Bilan : choisir le même mot de passe pour les 2 (mettre changeit si on ne veut pas le mentionner dans le fichier de conf mais à déconseiller toute de même).

Quelques remarques générales


Quelques liens


MAJ le 20/06/2005