10.10. 2-way SSL dans l'Interface de gestion et dans le CLI
Dans cette section, on utilisera les conventions suivantes :
- HOST1
- Le nom d'hôte du serveur JBoss. Par exemple;
jboss.redhat.com
- HOST2
- Un nom qui convient au client. Par exemple :
myclient
. Notez qu'il ne s'agit par forcément d'un nom d'hôte. - CA_HOST1
- Le DN (distinguished name) utilisé pour le certificat HOST1. Par exemple
cn=jboss,dc=redhat,dc=com
. - CA_HOST2
- Le DN (distinguished name) utilisé pour le certificat HOST2. Par exemple
cn=myclient,dc=redhat,dc=com
.
Procédure 10.4.
- Générez les stores :
keytool -genkeypair -alias HOST1_alias -keyalg RSA -keysize 1024 -validity 365 -keystore host1.keystore.jks -dname "CA_HOST1" -keypass secret -storepass secret
keytool -genkeypair -alias HOST2_alias -keyalg RSA -keysize 1024 -validity 365 -keystore host2.keystore.jks -dname "CA_HOST2" -keypass secret -storepass secret
- Exportez les certificats :
keytool -exportcert -keystore HOST1.keystore.jks -alias HOST1_alias -keypass secret -storepass secret -file HOST1.cer
keytool -exportcert -keystore HOST2.keystore.jks -alias HOST2_alias -keypass secret -storepass secret -file HOST2.cer
- Importe des certificats dans les trust stores opposés :
keytool -importcert -keystore HOST1.truststore.jks -storepass secret -alias HOST2_alias -trustcacerts -file HOST2.cer
keytool -importcert -keystore HOST2.truststore.jks -storepass secret -alias HOST1_alias -trustcacerts -file HOST1.cer
- Définir un CertificateRealm dans la configuration de votre installation (
host.xml
oustandalone.xml
) et y pointez l'interface :Cela peut se faire en modifiant le fichier de configuration manuellement (non recommandé) ou en utilisant les commandes suivantes :/core-service=management/security-realm=CertificateRealm:add()
/core-service=management/security-realm=CertificateRealm:add/server-identity=ssl:add(keystore-path=/path/to/HOST1.keystore.jks,keystore-password=secret, alias=HOST1_alias)
/core-service=management/security-realm=CertificateRealm/authentication=truststore:add(keystore-path=/path/to/HOST1.truststore.jks,keystore-password=secret)
- Modifier
JBOSS_HOME/bin/jboss-cli.xml
et ajouter la configuration SSL (en utilisant les valeurs appropriées pour les variables) :<ssl> <alias>$HOST2alias</alias> <key-store>/path/to/HOST2.keystore.jks</key-store> <key-store-password>secret</key-store-password> <trust-store>/path/to/HOST2.truststore.jks</trust-store> <trust-store-password>secret</trust-store-password> <modify-trust-store>true</modify-trust-store> </ssl>