Quando viene installato un certificato SSL su di un server in cui è presente JBoss, si devono eseguire i seguenti passi per la configurazione di Tomcat dentro l'application server.
- Creare la chiave del server con il seguente comando :
keytool -genkey -alias <keyalias> -keypass <yourpassword> -keyalg RSA -keysize 1024 -dname "CN=<commonname>,O=<organizationName>,OU=<organizationUnitName>,C=<countryName>" -keystore server.keystore -storepass <yourpassword>
dove :
<keyalias> è il valore dell'attributo keyalias che troviamo nel file server.xml ( dentro la directory {jboss_home_dir}/server/default/deploy/jbossweb-tomcat55.sar )<Connector className="org.apache.catalina.connector.http.HttpConnector"
maxThreads="100" strategy="ms"
maxHttpHeaderSize="8192" emptySessionPath="true" scheme="https" secure="true" clientAuth="false" keystoreFile="${jboss.server.home.dir}/conf/server.keystore" keystorePass="mypassword" sslProtocol = "TLS" keyAlias="mykeyalias" /><companyName> es. www.youserver.it <organizationName> <organizationUnitName> <countryName> es. IT <yourpassword> es. mypassword
ESEMPIO:
keytool -genkey -alias mykeyalias -keypass mypassword -keyalg RSA -keysize 1024 -dname "CN=www.myserver.it,O=GARR,OU=UNIPI,OU=CED,C=IT" -keystore server.keystore -storepass mypassword Copiare il file server.keystore, generato sopra, nella cartella {jboss home dir}/server/default/conf/
Certificare la chiave con il certificato CA, attraverso il seguente comando :
keytool -certreq -keystore server.keystore -alias mykeyalias -file mycert.pem
Quando JBoss non è opportunamente configurato dopo l'installazione del certificato SSL , in fase di avvio dell'application server viene rilevata la seguente eccezione:
java.io.IOException: Keystore was tampered with, or password was incorrect
Questo avviene se:
- il file server.keystore non è stato ancora generato
- il file server.keystore è stato manomesso
- dentro il file server.xml (di cui sopra) la voce Connector è commentata
- dentro il file server.xml (di cui sopra), alla voce Connector i valori degli attributi (es. keyalias o keystorepass)
Fonti:
- http://cybertrust.omniroot.com/support/codesigning/codesign_sunjava.cfm
- http://www.theserverside.com/discussions/thread.tss?thread_id=22243
- http://jack.godau.googlepages.com/jbosscertificatesandopenssl
2 commenti:
e su apache tom"gatt" hai mai fatto esperienza? non riesco a capire come mai all'importazione del certificato intermedio di verisign, mi dia errore di chiave non corrispondente, eppure ho seguito alla lettera tutti i passaggi...
p.s. per riempire la pancia, stavolta mi tocca fare le cose sotto katramazozz (windows) è forse per questo che di default non funziona un ciufolo?
Credo (o piuttosto mi auguro) che non dipenda dal sistema operativo. Volendo quindi scartare questa ipotesi, devo darti una risposta negativa: non ho provato con tomcat. Ma non credo che cambi così tanto, in fondo JBoss incorpora Tomcat, quindi non saprei dirti :(
Posta un commento