...
| Bloc de code |
|---|
SSLEngine on SSLCertificateFile /etc/ssl/certs/sms.univ-xxx.fr.crt SSLCertificateKeyFile /etc/ssl/private/sms.univ-xxx.fr.key SSLCertificateChainFile /etc/ssl/certs/cachain.crt SSLCACertificateFile /etc/ssl/certs/ca-plus-clients-smsu.crt .crt SSLCACertificatePath /etc/ssl/certs/smsuapi.crt |
Créer /etc/ssl/certs/smsuapi.crt/ et le remplir au fur à mesure avec les certificats des front offices s'ils sont auto-signés :
| Bloc de code |
|---|
mkdir /etc/ssl/certs/smsuapi.crt
|
- sur un serveur front office :
Bloc de code keytool -export -keystore keystore-smsu.jks -alias smsu -file le_CN.crt - sur le serveur back office
Bloc de code cp le_CN.crt /etc/ssl/certs/smsuapi.crt/ c_rehash /etc/ssl/certs/smsuapi.crt
où le_CN est le nom du CN choisi lors de la création du certificat front office auto-signé
Sans frontal apache
Génération
...
du keystore back office
auto-signé
Dans tous les web services mis en place, les front offices sont des clients (ils initient la connexion) et le back office serveur. Le certificat d'un serveur doit respecter une règle :
...
Répondez aux questions posées en respectant la règle énoncée ci-dessus.
Configuration du truststore
...
Le truststore par défaut $JAVA_HOME/jre/lib/security/cacerts est une bonne base et permettra aux front office ayant un certificat signé par une autorité de certification de se connecter.
| Bloc de code |
|---|
cp $JAVA_HOME/jre/lib/security/cacerts truststore-smsuapi.jks
|
La manipulation suivante est à effectuer de manière à ce que le truststore du back office contienne tous les certificats des front offices auto-signés.Extraire le certificat du pour extraire le certificat d'un keystore front office auto-signé et l'ajouter au truststore du back office :
- sur le serveur front office
Bloc de code keytool -export -keystore keystore-smsu.jks -alias smsu -file smsu.crt
- sur le serveur back office
Bloc de code keytool -import -keystore truststore-smsuapi.jks -alias smsu -file smsu.crt
Pour plus d'information sur ces commandes, voir Utilisation de certificats X509 en Java
NB : le certificat smsu.crt est aussi un élément de paramétrage de l'application dans l'administration du back office.
...
Paramétrage de tomcat
en mode quick start
Lors d'un déploiement en mode quick start, le paramétrage des keystore et truststore back office s'effectue via les propriétés suivantes du fichier build.properties :
...
| Bloc de code |
|---|
<Connector
port="${tomcat.port}"
maxHttpHeaderSize="8192"
maxThreads="150"
minSpareThreads="25"
maxSpareThreads="75"
enableLookups="false"
redirectPort="8444"
acceptCount="100"
connectionTimeout="20000"
disableUploadTimeout="true"
scheme="https" secure="true"
clientAuth="true" sslProtocol="TLS"
keystoreFile="${tomcat.keystore}"
keystorePass="${tomcat.keypass}"
truststoreFile="${tomcat.truststore}"
truststorePass="${tomcat.truststorePass}"
/>
|
...
en production
De manière similaire à la configuration server.xml ci-dessus, il faut préciser les paramètres keystoreFile, keystorePass, truststoreFile, truststorePass du <Connector> https dans server.xml
...