Problemas con certificados SSL al acceder por el puerto 8443

cancel
Showing results for 
Search instead for 
Did you mean: 
josego
Active Member II

Problemas con certificados SSL al acceder por el puerto 8443

Hola a todos:

Utilizo Apache proxy con 8009 por el puerto 8009 y me funciona correctamente por https con el certificado ssl.

Al acceder por el puerto 8443 no reconoce el certificado ssl.

En el archivo /opt/alfresco-community-prueba1/tomcat/shared/classes/alfresco-global.properties está así:

alfresco.context=alfresco
alfresco.host=192.168.0.1
alfresco.port=8443
alfresco.protocol=https

share.context=share
share.host=192.168.0.1
share.port=8443
share.protocol=https

En el archivo /opt/alfresco-community-prueba1/tomcat/conf/server.xml está así:

<Connector port="8443" URIEncoding="UTF-8" protocol="org.apache.coyote.http11.Http11Protocol" SSLEnabled="true"
maxThreads="150" scheme="https" keystoreFile="/opt/alfresco-community-prueba1/alf_data/keystore/ssl.keystore" keystorePass="kT9X6oe68t" keystoreType="JCEKS"
secure="true" connectionTimeout="240000" truststoreFile="/opt/alfresco-community-prueba1/alf_data/keystore/ssl.truststore" truststorePass="kT9X6oe68t" truststoreType="JCEKS"
clientAuth="false" sslProtocol="TLS" allowUnsafeLegacyRenegotiation="true" maxHttpHeaderSize="32768" maxSavePostSize="-1"
SSLCertificateFile="/home/certificados/STAR_hola1.crt"
SSLCertificateKeyFile="/home/certificados/hola1.key"
SSLCertificateChainFile="/home/certificados/STAR_hola1.ca-bundle"  SSLProtocol="TLSv1"
/>

Reinicio el alfresco

Trato de acceder al share y me sale que Your connection is not secure. No reconoce el certificado desde el tomcat por el puerto 8443.

Que mas debo de hacer para que tome el certificado.

Muchas gracias

Saludos, jose

3 Replies
angelborroy
Alfresco Employee

Re: Problemas con certificados SSL al acceder por el puerto 8443

Creo que estás mezclando propiedades, debes utilizar las "SSL*" o las "keystore*", pero no ambas.

Apache Tomcat 7 (7.0.82) - SSL/TLS Configuration HOW-TO 

También puedes poner el SSL en Apache HTTPd, que resulta una configuración más sencilla (y flexible).

Hyland Developer Evangelist
cesarista
Customer

Re: Problemas con certificados SSL al acceder por el puerto 8443

Buenas:

Alfresco usa certificados SSL para la comunicación entre el repositorio y el servidor de indexación y búsqueda SOLR. La configuración por defecto en el puerto 8443 necesita de un certificado de cliente (browser.p12 en tu navegador) que permite securizar la consola de administración de SOLR.

Si utilizas un frontend Apache, securiza la capa del Apache como comenta Angel (y como parece que ya haces), y que haga proxy AJP al conector 8009 de Tomcat. Si además quieres es que no se acceda a la capa de aplicación via http por el 8080, puedes:

i) capar via iptables el acceso al 8080 a tu servidor alfresco (ojo, pero no en localhost).

ii) configurar el parámetro address=127.0.0.1 en el conector del 8080 de Tomcat.

Saludos

--C.

psantis
Active Member II

Re: Problemas con certificados SSL al acceder por el puerto 8443

Esto lo hice hace añossss, pero creo que aùn funciona, saludos

Alfresco 2.9b versión comunity
Ubuntu 8.04
Tanto si se emplea un certificado autofirmado como si se crea una autoridad de certificación, los cambios en el fichero server.xml de Tomcat son los mismos. Hay que buscar el siguiente elemento Conector que aparece comentado en el archivo server.xml (/apache-tomcat/conf)


<!-- Define a SSL HTTP/1.1 Connector on port 8443 -->
<Connector port="8443" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" disableUploadTimeout="true"
acceptCount="100" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" />
-->
<!-- Define an AJP 1.3 Connector on port 8009 -->
<Connector port="8009"
enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />


Es recomendable utilizar el puerto 443 que es el que utiliza ssl por defecto, entonces deberemos cambiar los que dicen 8443 por 443 y guardar el archivo
Verificar si tenemos instalada keytool en nuestro sistema, para ello basta escribir el comando keytool en una terminal de consola, si no se encuentra instalada en el SO, este nos ofrecerá una serie de opciones para descargar la herramienta, a mi me funciono con openjdk-6-jre-headless, luego debemos proceder a instalar la herramienta
Con “sudo apt-get install openjdk-6-jre-headless”

Una vez instalado se deberá ir a la ruta /usr/lib/jvm/java-6-openjdk/jre/bin e indicar el comando
keytool –genkey –alias tomcat –keyalg RSA como la figura siguiente


Los datos solicitados son los que serán visibles para quien quiera ver el certificado, ahora bien es importante darle la clave changeit para ssl y para tomcat. Con eso el servidor queda autentificando con https. Se reinicia apache tomcat y se llama a la ip con https, sin puerto