2.2 Distribución de Identity Console como contenedor de Docker

2.2.1 Distribución del contenedor OSP

Lleve a cabo los pasos siguientes para distribuir el contenedor OSP:

  1. Entre a Software License and Download y desplácese a la página Descargas de software.

  2. Seleccione lo siguiente:

    • Producto: eDirectory

    • Nombre del producto: eDirectory per User Sub SW E-LTU

    • Versión: 9.2

  3. Descargue el archivo: IdentityConsole_<versión>_Containers_tar.zip.

  4. Extraiga el archivo descargado en una carpeta.

  5. Modifique el archivo de propiedades silencioso según sus requisitos. A continuación, se muestra un ejemplo de archivo de propiedades silencioso:

    # Silent file for osp with edirapi
    ## Static contents Do not edit - starts 
    INSTALL_OSP=true
    DOCKER_CONTAINER=y
    EDIRAPI_PROMPT_NEEDED=y
    UA_PROMPT_NEEDED=n
    SSPR_PROMPT_NEEDED=n
    RPT_PROMPT_NEEDED=n
    CUSTOM_OSP_CERTIFICATE=y
    ## Static contents Do not edit - ends
    
    # OSP Details
    SSO_SERVER_HOST=osp.example.com
    SSO_SERVER_SSL_PORT=8543
    OSP_COMM_TOMCAT_KEYSTORE_FILE=/config/tomcat.ks
    OSP_COMM_TOMCAT_KEYSTORE_PWD=novell
    SSO_SERVICE_PWD=novell
    OSP_KEYSTORE_PWD=novell
    IDM_KEYSTORE_PWD=novell
    OSP_CUSTOM_NAME="Identity Console"
    USER_CONTAINER="o=novell"
    ADMIN_CONTAINER="o=novell"
    
    # IDConsole Details
    IDCONSOLE_HOST=192.168.1.1
    IDCONSOLE_PORT=9000
    EDIRAPI_TREENAME=ed913
    
    #If ENABLE_CUSTOM_CONTAINER_CREATION is set to y
    #ie., when you have user and admin container different from o=data
    #    and they need to be created in eDir
    #then CUSTOM_CONTAINER_LDIF_PATH should be entered as well
    ENABLE_CUSTOM_CONTAINER_CREATION=n
    #ENABLE_CUSTOM_CONTAINER_CREATION=y
    #CUSTOM_CONTAINER_LDIF_PATH=/config/custom-osp.ldif
    
    # eDir Details
    ID_VAULT_HOST=192.168.1.1
    ID_VAULT_LDAPS_PORT=636
    ID_VAULT_ADMIN_LDAP="cn=admin,o=novell"
    ID_VAULT_PASSWORD=novell

    NOTA:Para evitar restricciones de espacio mientras utiliza el archivo de propiedades silenciosas (texto DOS), debe convertir el archivo de texto DOS al formato UNIX mediante la herramienta dos2unix. Ejecute el siguiente comando para convertir un archivo de texto de finales de línea DOS a finales de línea Unix:

    dos2unix nombre_archivo

    Por ejemplo:

    dos2unix archivo_ejemplo

  6. Genere un certificado de servidor (cert.der) mediante iManager e impórtelo mediante el almacén de claves (tomcat.ks). Copie el archivo de propiedades silencioso y el almacén de claves (tomcat.ks) en cualquier directorio. Por ejemplo, /data. Realice los siguientes pasos para crear un certificado de servidor e importarlo en el almacén de claves:

    1. Ejecute el siguiente comando para crear un almacén de claves (tomcat.ks). Genere la clave y asegúrese de que el nombre CN o el nombre completo de host del equipo sea la dirección IP.

      keytool -genkey -alias osp -keyalg RSA -storetype pkcs12 -keystore /opt/certs/tomcat.ks -validity 3650 -keysize 2048 -dname "CN=blr-osp48-demo.labs.blr.novell.com" -keypass novell -storepass novell
    2. Ejecute el siguiente comando para crear una petición de firma de certificado. Por ejemplo, cert.csr.

      keytool -certreq -v -alias osp -file /opt/certs/cert.csr -keypass novell -keystore /opt/certs/tomcat.ks -storepass novell
    3. Transfiera cert.csr a iManager y obtenga el certificado del servidor osp.der. Asegúrese de que selecciona el tipo de clave como Personalizado; las opciones de uso de la clave como Cifrado de datos, Cifrado de clave y Firma digital, y el campo Nombre(s) alternativo(s) del sujeto del certificado para que contenga la dirección IP o el nombre de host del servidor OSP. Para obtener más información, consulte Creación de un objeto Certificado de servidor.

    4. Ejecute los siguientes comandos para importar el certificado de CA (SSCert.der) y el certificado de servidor (cert.der) en el almacén de claves tomcat.ks.

      keytool -import -trustcacerts -alias root -keystore /opt/certs/tomcat.ks -file /opt/certs/SSCert.der -storepass novell -noprompt
      keytool -import -alias osp -keystore /opt/certs/tomcat.ks -file /opt/certs/cert.der -storepass novell -noprompt
  7. Ejecute el siguiente comando para cargar la imagen de OSP:

    docker load --input osp.tar.gz
  8. Distribuya el contenedor mediante el siguiente comando:

    docker run -d --name OSP_Container --network=host -e SILENT_INSTALL_FILE=/config/silent.properties -v /data:/config osp:<version>

    Por ejemplo:

    docker run -d --name OSP_Container --network=host -e SILENT_INSTALL_FILE=/config/silent.properties -v /data:/config osp:6.3.9

2.2.2 Distribución de Identity Console como un contenedor de Docker

En esta sección, se describe el procedimiento de distribución de Identity Console como contenedor de Docker:

NOTA:Los parámetros de configuración, los valores de muestra y los ejemplos mencionados en este procedimiento se proporcionan solo como referencia. Debe asegurarse de no utilizarlos directamente en el entorno de producción.

  1. Entre a SLD, Software License and Download, y desplácese a la página Descargas de software.

  2. Seleccione lo siguiente:

    • Producto: eDirectory

    • Nombre del producto: eDirectory per User Sub SW E-LTU

    • Versión: 9.2

  3. Descargue el archivo: IdentityConsole_<versión>_Container.tar.zip.

  4. La imagen debe cargarse en el registro local de Docker. Extraiga y cargue el archivo IdentityConsole_<versión>_Containers.tar.gz mediante los siguientes comandos:

    tar -xvf IdentityConsole_<version>_Containers.tar.gz              
    docker load --input identityconsole.tar.gz
  5. Cree el contenedor de Docker para Identity Console mediante el siguiente comando:

    docker create --name <identityconsole-container-name> --env ACCEPT_EULA=Y --network=<network-type> --volume <volume-name>:/config/ identityconsole:<version>

    Por ejemplo:

    docker create --name identityconsole-container --env ACCEPT_EULA=Y --network=host --volume IDConsole-volume:/config/ identityconsole:1.5.0.0000.

    NOTA:

    • Puede aceptar el CLUF. Para ello, establezca la variable de entorno ACCEPT_EULA en Y. También puede aceptar el CLUF en las instrucciones en pantalla mientras inicia el contenedor utilizando la opción -it del comando create de Docker y acceder al modo interactivo.

    • El parámetro --volume del comando anterior creará un volumen para almacenar los datos de configuración y registro. En este caso, hemos creado un volumen de ejemplo denominado IDConsole-volume.

  6. Copie el archivo de certificado de servidor del sistema de archivos local en el contenedor como /etc/opt/novell/eDirAPI/cert/keys.pfx mediante el siguiente comando. Para obtener más información sobre cómo crear el certificado de servidor, consulte Requisitos previos:

    docker cp <absolute path of server certificate file> <identityconsole-container-name>:/etc/opt/novell/eDirAPI/cert/keys.pfx

    Por ejemplo:

    docker cp /home/user/keys.pfx identityconsole-container:/etc/opt/novell/eDirAPI/cert/keys.pfx

    Al conectarse a varios árboles de eDirectory, debe asegurarse de obtener al menos un certificado de servidor keys.pfx para todos los árboles conectados.

  7. Copie el archivo de certificado de CA (.pem) del sistema de archivos local en el contenedor como /etc/opt/novell/eDirAPI/cert/SSCert.pem mediante el siguiente comando. Para obtener más información sobre cómo obtener el certificado de CA, consulte Requisitos previos:

    docker cp <absolute path of CA certificate file> <identityconsole-container-name>:/etc/opt/novell/eDirAPI/cert/SSCert.pem

    Por ejemplo:

    docker cp /home/user/SSCert.pem identityconsole-container:/etc/opt/novell/eDirAPI/cert/SSCert.pem

    Si el usuario necesita conectarse a varios árboles de eDirectory, consulte la sección: Varios árboles con Identity Console como Docker

  8. Modifique el archivo de configuración (edirapi.conf) en función de sus requisitos y cópielo del sistema de archivos local al contenedor como /etc/opt/novell/eDirAPI/conf/edirapi.conf mediante el siguiente comando:

    docker cp <absolute path of configuration file> <identityconsole-container-name>:/etc/opt/novell/eDirAPI/conf/edirapi.conf

    Por ejemplo:

    docker cp /home/user/edirapi.conf identityconsole-container:/etc/opt/novell/eDirAPI/conf/edirapi.conf
  9. Inicie el contenedor de Docker mediante el siguiente comando:

    docker start <identityconsole-container-name>

    Por ejemplo:

    docker start identityconsole-container

NOTA:Puede encontrar los siguientes archivos de registro en el directorio /var/lib/docker/volumes/<nombre_volumen>/_data/eDirAPI/var/log:

  • edirapi.log : se utiliza para registrar diferentes eventos en edirapi y los problemas de depuración.

  • edirapi_audit.log: se utiliza para registrar eventos de auditoría de edirapi. Los registros siguen el formato de auditoría de CEF.

  • container-startup.log: se utiliza para capturar registros de instalación del contenedor de Docker para Identity Console.

2.2.3 Varios árboles con Identity Console como Docker

Identity Console permite al usuario conectarse a varios árboles mediante la obtención de un certificado de CA individual para cada árbol.

Por ejemplo, si se conecta a tres árboles de eDirectory, debe copiar los tres certificados de CA en el contenedor de Docker:

docker cp /home/user/SSCert1.pem identityconsole-container:/etc/opt/novell/eDirAPI/cert/SSCert.pem
docker cp /home/user/SSCert2.pem identityconsole-container:/etc/opt/novell/eDirAPI/cert/SSCert1.pem
docker cp /home/user/SSCert3.pem identityconsole-container:/etc/opt/novell/eDirAPI/cert/SSCert2.pem

Ejecute los siguientes comandos para reiniciar Identity Console:

docker restart <identityconsole-container-name>