Closed fvanderbiest closed 4 years ago
should work now, tests welcome ;)
Salut, Avec cette nouvelle configuration, je suppose qu'il faut également retirer ou bien adapter ces lignes : https://github.com/georchestra/ansible/blob/351932617d2a3713b284e370dbcfd032efd734ed/roles/tomcat/templates/server-proxycas.xml.j2#L81-L82
et bien ... je ne sais plus :/ ou alors pointer vers le keystore par defaut ?
une instance de test qui marchait hier n'arrive plus a valider de tickets CAS ajd, et si dans le server.xml
de proxycas
je pointe keystoreFile
vers /usr/lib/jvm/adoptopenjdk-8-hotspot-amd64/jre/lib/security/cacerts
(le keystore par défaut, dans lequel notre certificat autosigné à été importé) c'est pareil.
java.lang.RuntimeException: javax.net.ssl.SSLHandshakeException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
org.jasig.cas.client.util.CommonUtils.getResponseFromServer(CommonUtils.java:443)
org.jasig.cas.client.validation.AbstractCasProtocolUrlBasedTicketValidator.retrieveResponseFromServer(AbstractCasProtocolUrlBasedTicketValidator.java:41)
org.jasig.cas.client.validation.AbstractUrlBasedTicketValidator.validate(AbstractUrlBasedTicketValidator.java:193)
j'ai pu retrouver un CAS fonctionnel en commentant toute la section liée au connector écoutant sur le port 8443, mais je ne sais plus dans quels cas ce dernier était nécessaire..;
et ce meme CAS qui fonctionnait (avec le connector sur le port 8443 commenté) n'arrive soudainement plus a valider de tickets via SSL, sans raison apparente. Décidément, java et ssl..
hm, donc avec update-ca-certificates
on dirait que le cert autosigné se retrouve dans /etc/ssl/certs/java/cacerts
et pas/plus dans /usr/lib/jvm/adoptopenjdk-8-hotspot-amd64/jre/lib/security/cacerts
.. le playbook ansible s'assure pourtant que ce dernier est un lien vers le premier, donc une maj d'un autre composant a du casser ce lien. Ca remarche une fois replayé le tag keystore
..
Pierre recommends using the system wide truststore instead of using a custom one for every tomcat.
This means:
openssl s_client -connect localhost:443
/usr/local/share/ca-certificates/georchestra.crt
update-ca-certificates
javax.net.ssl.trustStore*