Contenido



Resumen
  • Versión: v01r01
  • Fecha publicación:  
  • Entrada en vigor desde:   

El presente documento es una guia, cómo tal es un compendio de instrucciones y buenas prácticas a seguir para conseguir llegar a buen termino un tema concreto.

Para cualquier duda sobre el mismo puede contactar en l-arquitectura.stic@juntadeandalucia.es

Histórico de cambios

Los cambios en la guías vendrán acompañados de un registro de las modificaciones. De este modo se podrá realizar un seguimiento y consultar su evolución. Ordenándose de mas recientes a menos recientes, prestando especial cuidado a las cabezeras de la tablas dónde se indican las fechas de entrada en vigor y versión.

Versiónv01r00Fecha publicación
Fecha entrada en vigor
Alcance
  • Instrucciones de instalación de un certificado en java y .net core
  • Listado de certificados actuales


Introducción

Este espacio pretende conseguir configurar los entornos y los desarrollos para poder comunicarse por https con los distintos servicios provistos por el Servicio Andaluz de Salud

Certificados Disponibles

http://git.sas.junta-andalucia.es/gobernanza/ArchivosDeDesarrollo/certificados-publicos*


  • Los certificados se encuentran en un repositorio de git, en el SAS, solo se pueden descargar desde este repositorio desde la red del SAS o a través de VPN. Es necesario disponer de un usuario ldap coorporativo, y solicitar acceso a los repositorios públicos de git, mediante cges a la OCA.
  • La última versión de los certificados se encuentra en la carpeta current de la rama master. Dependiendo de a que entorno se necesite conectar (pre o pro) se deberá acceder a la carpeta correspondiente (pre.sas.junta-andalucia.es o sas.junta-andalucia.es)


Configuración

La comunicación con los diferentes sistemas del SAS que requieran una comunicación a través de https deberá tener instalados los certificados provistos por el SAS dentro del sistema operativo desde el que se va a realizar a comunicación (entorno de desarrollo, contenedor, servidor).

Windows

Para instalarlo en entornos windows

Java

La contraseña por defecto del cacerts de java es changeit

Instalar
keytool -import -alias <alias> -keystore "<JAVA_HOME>\lib\security\cacerts" -file <certificado>
Borrado
keytool -delete -noprompt -alias <alias>  -keystore "<JAVA_HOME>\lib\security\cacerts"

Node

Hay que establecer la variable de entorno de forma permanente. Seguir la referencia Windows - ENV para revisar los diferentes métodos para establecer la variable de entorno.

Una de ellas a través de powershell

Instalar
$ [Environment]::SetEnvironmentVariable("NODE_EXTRA_CA_CERTS", "<path to certificate file>", "User")

Docker

  • Windows Server:

    1. Open Windows Explorer, right-click the domain.crt file, and choose Install certificate. When prompted, select the following options:

      Store locationlocal machine
      Place all certificates in the following storeselected
    2. Click Browser and select Trusted Root Certificate Authorities.

    3. Click Finish. Restart Docker.

Linux

Para instalarlo en entornos Linux

Java

La contraseña por defecto del cacerts de java es changeit

Instalar
keytool -import -alias <alias> -keystore "<JAVA_HOME>\lib\security\cacerts" -file <certificado>
Borrado
keytool -delete -noprompt -alias <alias>  -keystore "<JAVA_HOME>\lib\security\cacerts"

.Net Core

Instalar
sudo cp <certificado> /etc/pki/ca-trust/source/anchors/
sudo update-ca-trust
Instalar
sudo rm /etc/pki/ca-trust/source/anchors/<certificado>
sudo update-ca-trust

Node

Editar el fichero correspondiente a cada consola para incluir la exportación de la variable de entorno.

Instalar
$ <editor> ~/.profile  

#añadimos el certificado del sas para node
if [[ -z "${NODE_EXTRA_CA_CERTS}" ]] ; then
  export NODE_EXTRA_CA_CERTS="<path_certificados>/ca.crt"
else
  export NODE_EXTRA_CA_CERTS="<path_certificados>/ca.crt:$NODE_EXTRA_CA_CERTS"
fi
  • substituir <editor> por el editor que se desee o crear la variable de entorno con el editor de referencia. Por ejemplo vim
  • substituir <path_certificados> por la ruta donde se encuentre el certificado. Por ejemplo $HOME/certificados
  • para más información u otras consolas se puede consultar la siguiente referencia - LINUX - Env


para aplicar los cambios realizados ejecutar


Extender Certificado ya existente
$ source ~/.profile

Docker

Instalar el certificado para que pueda hacerse uso desde docker

instalar certificado docker
# Crear carpeta con la dns donde se utilizará el certificado
$  sudo mkdir -p /etc/docker/certs.d/<url_host>

# Descargar el certificado del git como se indica al inicio de la normativa y guardarlo en la carpeta donde se utilizará el certificado  /etc/docker/certs.d/<url_host>


# Actualizar los certificados
 $  sudo update-ca-certificates
  • substituir <url_host> por el host sobre el que se quiera instalar el/los certificado/s. Por ejemplo para acceder a la dml del sas sería  dml-si.sas.junta-andalucia.es:8084
  • para más información u otras consolas se puede consultar la siguiente referencia - LINUX - Env


  • Sin etiquetas

1 comentario

  1. Docker

    Instruct every Docker daemon to trust that certificate. The way to do this depends on your OS.

    • Linux: Copy the domain.crt file to /etc/docker/certs.d/dml-si.sas.junta-andalucia.es:8084/ca.crt on every Docker host. You do not need to restart Docker.

    • Windows Server:

      1. Open Windows Explorer, right-click the domain.crt file, and choose Install certificate. When prompted, select the following options:

        Store locationlocal machine
        Place all certificates in the following storeselected
      2. Click Browser and select Trusted Root Certificate Authorities.

      3. Click Finish. Restart Docker.