Recupera paquetes de confianza de GDC

Un paquete de confianza, también conocido como una lista de confianza, es un grupo de anclas de confianza, como entidades, que son inherentemente confiables y cuya confianza no es transferida por otra entidad (terceros de confianza). Estas anclas de confianza se entregan como certificados de autoridad certificadora (CA). El algoritmo de creación de rutas de certificación usa estos certificados de CA para establecer una cadena entre un certificado que obtiene la validación y las anclas de confianza.

Este documento está dirigido a públicos dentro del grupo de administradores de la plataforma, como administradores de TI o ingenieros de seguridad, que desean recuperar paquetes de confianza de GDC. Para obtener más información, consulta Públicos de la documentación de Google Distributed Cloud aislado.

Antes de comenzar

Antes de recuperar los paquetes de confianza de GDC, debes establecer la confianza inicial para las organizaciones nuevas. Este paso es obligatorio para los métodos de servidor conocido y kubectl, pero solo si te conectas a una organización nueva por primera vez.

Para el método de servidor conocido, no se requieren otros requisitos previos. Para el método kubectl, también debes completar los requisitos previos de permisos y herramientas.

Establece la confianza inicial para las organizaciones nuevas

Si te conectas a una nueva organización de GDC por primera vez, debes establecer la confianza inicial. Este proceso único garantiza una conexión segura, ya que confía en la autoridad certificadora (CA) de la organización en tu máquina cliente.

  1. Comunícate con un miembro de tu grupo de operadores de infraestructura (IO) para solicitar el paquete de confianza inicial para la organización nueva. El IO tiene el acceso necesario para recuperar este paquete, que suele provenir del secreto trust-store-root-ext dentro del clúster de infraestructura de la organización.

  2. Obtén el archivo del paquete de confianza inicial de tu IO a través de un canal seguro fuera de GDC, según lo definan las políticas de seguridad de tu organización.

  3. Instala el paquete de confianza en el almacén de confianza de tu máquina cliente, siguiendo los procedimientos estándar de tu sistema para confiar en los certificados de CA raíz.

Si necesitas acceder a ServiceNow, también obtén e instala el paquete de confianza de la organización gdchservices con el mismo proceso.

Solicita roles de IAM

Para recuperar el paquete de confianza con kubectl, necesitas permiso para ver los secretos. Comunícate con el administrador de IAM de tu organización para solicitar el rol Visualizador del almacén de confianza (trust-store-viewer).

Prepara el entorno

Para usar el método kubectl, prepara tu entorno local:

Tipos de paquetes de confianza

Distributed Cloud proporciona dos tipos de paquetes de confianza administrados para administradores de plataformas:

  • trust-store-root-ext: Contiene la CA raíz interna y la CA de web-tls. El contenido es diferente según dónde resida, como la raíz o la organización del arrendatario. Usa este paquete de confianza para comunicarte a través de los límites de la organización o para acceder a servicios como el almacenamiento de objetos dentro de la organización.

  • trust-store-global-root-ext: Disponible en el servidor de la API global y en el espacio de nombres platform del servidor de la API zonal. Cuando el servidor de la API global esté listo, el paquete propagará todos los demás datos trust-store-root-ext zonales, incluidos los datos locales.

Recupera el paquete de confianza

Puedes recuperar paquetes de confianza desde el extremo del servidor conocido o desde el clúster con kubectl.

Recupera desde el servidor conocido

GDC proporciona una forma segura de acceder a los paquetes de confianza a través de un extremo de servidor conocido. Usa este método cuando necesites recuperar el paquete trust-store-global-root-ext sin interactuar directamente con el clúster mediante kubectl.

Asegúrate de haber establecido la confianza inicial con las AC específicas de tu organización antes de realizar los pasos de esta sección.

Linux

  1. Exporta las siguientes variables de entorno:

    export STORAGE=STORAGE
    export ORG_NAME=ORG_NAME
    export DNS_SUFFIX=DNS_SUFFIX
    

    Reemplaza lo siguiente:

    • STORAGE: Es la ruta de acceso al directorio en el que deseas almacenar el archivo del paquete de confianza.
    • ORG_NAME: Es el nombre de tu organización dentro de GDC.
    • DNS_SUFFIX: Es tu sufijo de DNS. Por ejemplo, si uno de tus dominios es org-1.zone1.google.gdch.test, tu sufijo de DNS es zone1.google.gdch.test.
  2. Establece la variable de entorno WELL_KNOWN_URL:

    export WELL_KNOWN_URL="https://console.${ORG_NAME:?}.${DNS_SUFFIX:?}/.well-known/certificate-authority"
    
  3. Establece la variable de entorno GLOBAL_TRUST_BUNDLE_FILE. Este archivo almacena el paquete de confianza de GDC de forma local en la ubicación $STORAGE especificada.

    export GLOBAL_TRUST_BUNDLE_FILE="${STORAGE:?}/global/ca-bundles/global-trust-bundle"
    
  4. Crea el directorio para el archivo del paquete de confianza:

    mkdir -p "$(dirname "${GLOBAL_TRUST_BUNDLE_FILE:?}")"
    
  5. Obtén el paquete de confianza trust-store-global-root-ext del servidor conocido y almacénalo en el archivo especificado por la variable de entorno GLOBAL_TRUST_BUNDLE_FILE:

    curl "${WELL_KNOWN_URL:?}" | sed '$a\' > "${GLOBAL_TRUST_BUNDLE_FILE:?}"
    

Windows

  1. Establezca las siguientes variables de PowerShell:

    $STORAGE = "STORAGE"
    $ORG_NAME = "ORG_NAME"
    $DNS_SUFFIX = "DNS_SUFFIX"
    

    Reemplaza lo siguiente:

    • STORAGE: Es la ruta de acceso al directorio en el que deseas almacenar el archivo del paquete de confianza, como C:\Users\username\bundles.
    • ORG_NAME: Es el nombre de tu organización dentro de GDC.
    • DNS_SUFFIX: Es tu sufijo de DNS. Por ejemplo, si uno de tus dominios es org-1.zone1.google.gdch.test, tu sufijo de DNS es zone1.google.gdch.test.
  2. Crea el directorio para el archivo del paquete de confianza:

    New-Item -ItemType Directory -Force -Path (Split-Path -Path "STORAGE\global\ca-bundles\global-trust-bundle")
    
  3. Obtén el paquete de confianza trust-store-global-root-ext del servidor conocido y almacénalo en el archivo del paquete de confianza:

    Invoke-WebRequest -Uri "https://console.ORG_NAME.DNS_SUFFIX/.well-known/certificate-authority" -OutFile "STORAGE\global\ca-bundles\global-trust-bundle"
    

El archivo del paquete de confianza recuperado contiene uno o más certificados de CA. El resultado es similar a lo siguiente:

   -----BEGIN CERTIFICATE-----
   MIIC8TCCAdmgAwIBAgIRAODQ/dOB39RBs8ZpN0RujIswDQYJKoZIhvcNAQELBQAw
   EjEQMA4GA1UEAxMHcm9vdC1jYTAeFw0yNTAxMDYwNzM3MzVaFw00ODEyMzEwNzM3
   MzVaMBIxEDAOBgNVBAMTB3Jvb3QtY2EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
   ggEKAoIBAQC41U4+3M1EAHggUBw5ki97533zTvwHukmZyORwbQ3tlQ4GQDscoCEh
   nn+KCaG767VCaGDcQhq99hl6qa/nBoc1X6WQ3a/uhv5E2ztRD40PB5NFNdSulxTH
   gsitukSmv+DAx15UJnVkJtPP/FzxEWPu0piIiFZakTxT83VUSs54QRmTahxP80FI
   R0xZ0ohsu9jzA2CAyxTccJU0/xE2kDwN8c8kiYYuG+czMdNVdnT4Jm2ToSkzIDux
   Yi9MzNmarVGG/rtW5SlqnUMYzSsxtUYSmMRlCsFDVxkSzfmICmTRw2zmNkFA/3nz
   XneVSIsUHOA2NzvMN4eoLTVRgSFcHlZRAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIB
   hjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTEeB0EQwhc5p++GhwNymsBfN93
   WjANBgkqhkiG9w0BAQsFAAOCAQEAKBqn4AXjUWmhIUOrWQ5cetsmI76Wl+RBeSzU
   HxbqMBH8Dk1oJbGHtmQbu7EmWz1pKYge650s9N83hMgjFZD24t9GiQZ7YY+i+317
   D6HzJ8VIKPnxVtnUIQzCpkRTQoglDlb1f/7+fi2SYJoHdhnRI/3OaVQTnObjbW5T
   mBhsMxFKc0zGa3HIEm9SUH608V60xUPanl23YZ6X7W8nWAJfnzKvH+3q3Fz58u/S
   VR5t/FkbOktVtnU8AfcMKLof6KG2KhE2L7FAC+fp0ZsjV9vE2uqlZ+8mIQHyc3tM
   cbWxOx+SO/XUCenY9C1yrublln9aOEn4/s3aSURPguiSZOfDyQ==
   -----END CERTIFICATE-----

Recupera desde el clúster con kubectl

Puedes recuperar paquetes de confianza directamente desde el clúster de GDC con la herramienta de línea de comandos de kubectl. Usa este método si tienes acceso directo al clúster y a su configuración, y necesitas recuperar los paquetes de confianza trust-store-root-ext o trust-store-global-root-ext.

Asegúrate de haber establecido la confianza inicial con las AC específicas de tu organización antes de realizar los pasos de esta sección.

Recupera el paquete de confianza del clúster con kubectl:

  1. Exporta las siguientes variables de entorno:

    export KUBECONFIG=MANAGEMENT_API_SERVER_KUBECONFIG
    export STORAGE=STORAGE
    export ZONE=ZONE
    

    Reemplaza lo siguiente:

    • MANAGEMENT_API_SERVER_KUBECONFIG: Es la ruta de acceso al kubeconfig del servidor de la API de Management.
    • STORAGE: Es la ruta de acceso al directorio en el que deseas almacenar el archivo del paquete de confianza.
    • ZONE: Es el nombre de tu zona de GDC.
  2. Establece la variable de entorno TRUST_BUNDLE_FILE. Este archivo almacena el paquete de confianza de GDC de forma local en la ubicación $STORAGE especificada para tu $ZONE de GDC:

    export TRUST_BUNDLE_FILE="${STORAGE:?}/${ZONE:?}/ca-bundles/trust-bundle"
    export GLOBAL_TRUST_BUNDLE_FILE="${STORAGE:?}/global/ca-bundles/global-trust-bundle"
    
  3. Establece la variable de entorno del espacio de nombres NS para el espacio de nombres:

    export NS=platform
    
  4. Crea los directorios para los archivos del paquete de confianza:

    mkdir -p "$(dirname "${TRUST_BUNDLE_FILE:?}")"
    mkdir -p "$(dirname "${GLOBAL_TRUST_BUNDLE_FILE:?}")"
    
  5. Obtén las autoridades certificadoras (CA) y almacénalas en los archivos especificados por las variables de entorno TRUST_BUNDLE_FILE y GLOBAL_TRUST_BUNDLE_FILE:

    Para trust-store-root-ext:

    kubectl --kubeconfig ${KUBECONFIG:?} get secret trust-store-root-ext -n ${NS:?} -o go-template='{{ index .data "ca.crt" }}' | base64 -d | sed '$a\' > ${TRUST_BUNDLE_FILE:?}
    

    Para trust-store-global-root-ext:

    kubectl --kubeconfig ${KUBECONFIG:?} get secret trust-store-global-root-ext -n ${NS:?} -o go-template='{{ index .data "ca.crt" }}' | base64 -d | sed '$a\' > ${GLOBAL_TRUST_BUNDLE_FILE:?}
    

    El archivo del paquete de confianza recuperado contiene uno o más certificados de CA. El resultado es similar a lo siguiente:

    -----BEGIN CERTIFICATE-----
    MIIC8TCCAdmgAwIBAgIRAODQ/dOB39RBs8ZpN0RujIswDQYJKoZIhvcNAQELBQAw
    EjEQMA4GA1UEAxMHcm9vdC1jYTAeFw0yNTAxMDYwNzM3MzVaFw00ODEyMzEwNzM3
    MzVaMBIxEDAOBgNVBAMTB3Jvb3QtY2EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
    ggEKAoIBAQC41U4+3M1EAHggUBw5ki97533zTvwHukmZyORwbQ3tlQ4GQDscoCEh
    nn+KCaG767VCaGDcQhq99hl6qa/nBoc1X6WQ3a/uhv5E2ztRD40PB5NFNdSulxTH
    gsitukSmv+DAx15UJnVkJtPP/FzxEWPu0piIiFZakTxT83VUSs54QRmTahxP80FI
    R0xZ0ohsu9jzA2CAyxTccJU0/xE2kDwN8c8kiYYuG+czMdNVdnT4Jm2ToSkzIDux
    Yi9MzNmarVGG/rtW5SlqnUMYzSsxtUYSmMRlCsFDVxkSzfmICmTRw2zmNkFA/3nz
    XneVSIsUHOA2NzvMN4eoLTVRgSFcHlZRAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIB
    hjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTEeB0EQwhc5p++GhwNymsBfN93
    WjANBgkqhkiG9w0BAQsFAAOCAQEAKBqn4AXjUWmhIUOrWQ5cetsmI76Wl+RBeSzU
    HxbqMBH8Dk1oJbGHtmQbu7EmWz1pKYge650s9N83hMgjFZD24t9GiQZ7YY+i+317
    D6HzJ8VIKPnxVtnUIQzCpkRTQoglDlb1f/7+fi2SYJoHdhnRI/3OaVQTnObjbW5T
    mBhsMxFKc0zGa3HIEm9SUH608V60xUPanl23YZ6X7W8nWAJfnzKvH+3q3Fz58u/S
    VR5t/FkbOktVtnU8AfcMKLof6KG2KhE2L7FAC+fp0ZsjV9vE2uqlZ+8mIQHyc3tM
    cbWxOx+SO/XUCenY9C1yrublln9aOEn4/s3aSURPguiSZOfDyQ==
    -----END CERTIFICATE-----