Conexion SSL con NUXEO

Hola, quisiera saber si se puede configurar una conexion segura entre arai-documentos y nuxeo. Yo configure nuxeo con SSL usando un proxy reverso Apache como se indica aqui:

https://doc.nuxeo.com/nxdoc/http-and-https-reverse-proxy-configuration/

El server responde ok y todo responde bien bajo https, e incluso una llamada de este estilo

curl -u usuario:pass https://nuxeoserver.unsl.edu.ar/nuxeo/json/cmis | json_pp

responde bien mostrando datos.

Pero cuando intento ponerlo en la configurcion de arai-documentos (en el docs.env EEI) no funciona.

Si pongo algo de este estilo no va:

ARAI_DOCS_REPO_HOST=https://nuxeoserver.unsl.edu.ar/nuxeo/atom/cmis/

o como esto

ARAI_DOCS_REPO_HOST=https://nuxeoserver.unsl.edu.ar:443/nuxeo/atom/cmis/

No va, da error al querer coumicar con nuxeo.

La configuracion por defecto sin seguridad

ARAI_DOCS_REPO_HOST=http://nuxeoserver.unsl.edu.ar:8080/nuxeo/atom/cmis/

anda perfectamente.

¿Se puede hacer esto que quiero? ¿que hay que configurar en arai-documentos?

Saludos.

Hola Diego,

te hago una consulta, el certificado SSL que esta presentando el proxy reverso para Nuxeo… es autofirmado?.. si es asi esa puede ser la fuente del problema.

Saludos

Hola Richard, no, no es autofirmado. Es el certificado oficial de la UNSL el mismo que estamos usando en un monton de sitios. Fijate, en https://nuxeovz.unsl.edu.ar/nuxeo/ esta respondiendo.

La duda es: Arai-Documentos, ¿no necesita ningun parametro para hacer una conexion segura? ¿o simplemente se da cuenta mirando el protocolo en el string del parametro ARAI_DOCS_REPO_HOST?

Saludos!

Diego buenas tardes!

Podes probar hacer un curl desde el server donde se encuentra la instalacion de arai-documentos y verificar que descargue el xml?
Luego de verificar eso podrias ingresar en el container de docs-api y ejecutar el mismo curl.

Para armar el curl necesitas autenticarte con el usuario y passsword de nuxeo.

curl --header ‘Authorization: Basic ’ https://nuxeoserver.unsl.edu.ar/nuxeo/atom/cmis/

Para armar el base64 de user:password podes utilizar la consola del browser con el comando btoa, por ejemplo:

btoa(“Administrator:Administrator”)
– resultado: QWRtaW5pc3RyYXRvcjpBZG1pbmlzdHJhdG9y

curl --header ‘Authorization: Basic QWRtaW5pc3RyYXRvcjpBZG1pbmlzdHJhdG9y’ https://nuxeoserver.unsl.edu.ar/nuxeo/atom/cmis/

Si no funciona tambien intenta hacer ping desde container a nuxeoserver.unsl.edu.ar para ver si resuelve la direccion.

Saludos!

Hola Dario!

Te cuento que probe esto que me comentas, y desde adentro del contenedor de docs_api efectivamente da un error de certificado expirado:

curl: (60) SSL certificate problem: certificate has expired
More details here: https://curl.haxx.se/docs/sslcerts.html

curl failed to verify the legitimacy of the server and therefore could not
establish a secure connection to it. To learn more about this situation and
how to fix it, please visit the web page mentioned above.

Pero lo curioso es que el certificado no esta expirado, y desde afuera del contenedor (en la misma maquina donde corre docker) si devuelve datos sin problemas.

¿alguna idea?

Saludos,
Diego.

Hola Diego:

                      Teníamos algo parecido a lo de ustedes en nuestra institución UNPSJB. El certificado que tienen es de sectigo. En nuestro caso dos archivos el .crt (wild  card) uno intermedio y nos tuvieron que pasar uno más porque el de la CA raiz si estaba vencido.

                       Juntamos (concatenamos) los tres archivos en uno solo y eso nos sirvió para que por ejemplo el firmador no diera error para firmar un documento.  Quizás sea este su caso, nuxeo no estaría enviando toda la cadena de certificados.

                       Por el tema del vencimiento del CA raiz tuvimos también que agregarlo al ca-certificates (hacer que el servidor confíe en ese certificado) del servidor que tiene que hacer la comprobación. Eso nos posibilitó hacer que funcionen los bundles de mapuche, descargar recibos de sueldo etc. por ejemplo.

Saludos,
Marcelo.

Muchas gracias Marcelo!
Efectivamente, era un problema con la cadena de certificados, y lo solucionamos verificando con este sitio:

https://whatsmychaincert.com/

Saludos,
Diego.