Skip to main content

Configuración de Dependabot para funcionar con un acceso limitado a Internet

Dependabot se puede configurar para generar solicitudes de incorporación de cambios de actualizaciones de versión y seguridad mediante registros privados cuando tu instancia de GitHub Enterprise Server tiene un acceso limitado a Internet (o directamente no tiene).

Acerca de las actualizaciones de Dependabot

Puedes usar Dependabot updates para corregir vulnerabilidades y mantener las dependencias actualizadas a la versión más reciente en tu instancia de GitHub Enterprise Server. Las Dependabot updates requieren GitHub Actions con ejecutores autohospedados configurados para que Dependabot los use. Las alertas y las actualizaciones de seguridad de Dependabot usan la información extraída de GitHub Advisory Database a la que se accede mediante GitHub Connect. Para obtener más información, vea «Administrar ejecutores autohospedados para actualizaciones del Dependabot en su empresa» y «Habilitación de Dependabot para la empresa».

Dependabot puede acceder a los registros públicos de forma predeterminada, pero puedes configurar Dependabot para que acceda a los privados también. Opcionalmente, si tu instancia de GitHub Enterprise Server tiene acceso limitado a Internet(o directamente no tiene), puedes configurar Dependabot para que use solo registros privados como origen de las actualizaciones de seguridad y de versión. Para obtener información sobre qué ecosistemas se admiten como registros privados, consulta "Eliminación del acceso de Dependabot a registros públicos".

En las instrucciones siguientes se da por hecho que debes configurar ejecutores de Dependabot con las siguientes limitaciones.

  • No hay acceso a Internet.
  • Se permite el acceso solo a recursos internos limitados, como los registros privados de Dependabot.

Restricción del acceso a Internet para ejecutores de Dependabot

Antes de configurar Dependabot, instala Docker en el ejecutor autohospedado. Para obtener más información, vea «Administrar ejecutores autohospedados para actualizaciones del Dependabot en su empresa».

  1. En tu instancia de GitHub Enterprise Server, ve al repositorio github/dependabot-action y recupera información sobre las imágenes de contenedor dependabot-updater y dependabot-proxy del archivo containers.json.

    Cada versión de GitHub Enterprise Server incluye un archivo containers.json actualizado aquí: https://HOSTNAME/github/dependabot-action/blob/ghes-VERSION/docker/containers.json. Puedes ver la versión de GitHub.com del archivo aquí: containers.json.

  2. Carga previamente todas las imágenes de contenedor del Container registry de GitHub en el ejecutor de Dependabot mediante el comando docker pull. Si quiere, cargue previamente la imagen dependabot-proxy y, a continuación, cargue previamente solo las imágenes de contenedor de los ecosistemas que necesite.

    Por ejemplo, para permitir el uso de npm y GitHub Actions, podrías usar los siguientes comandos, copiando los detalles de las imágenes que se van a cargar desde el archivo containers.json para asegurarte de que tienes la versión y el SHA correctos de cada imagen.

    docker pull ghcr.io/github/dependabot-update-job-proxy/dependabot-update-job-proxy:VERSION@SHA
    docker pull ghcr.io/dependabot/dependabot-updater-github-actions:VERSION@SHA
    docker pull ghcr.io/dependabot/dependabot-updater-npm:VERSION@SHA
    

    Nota: Deberás repetir este paso cuando actualices a una nueva versión secundaria de GitHub Enterprise Server o si actualizas manualmente la acción de Dependabot desde GitHub.com. Para obtener más información, vea «Sincronización manual de acciones desde GitHub.com».

  3. Cuando hayas terminado de agregar estas imágenes al ejecutor, estarás listo para restringir el acceso a Internet del ejecutor de Dependabot, si bien procurando que pueda seguir accediendo a tus registros privados de los ecosistemas necesarios y de tu instancia de GitHub Enterprise Server.

    Primero debes agregar las imágenes, porque los ejecutores de Dependabot extraen dependabot-updater y dependabot-proxy del Container registry de GitHub cuando los trabajos de Dependabot empiezan a ejecutarse.

Comprobación de la configuración de los ejecutores de Dependabot

  1. En un repositorio de prueba, configura Dependabot para que acceda a registros privados, y quita el acceso a los registros públicos. Para obtener más información, vea «Configuración del acceso a registros privados para Dependabot» y «Eliminación del acceso de Dependabot a registros públicos».
  2. En la pestaña Datos del repositorio, haz clic en Gráfico de dependencias para ver los detalles de las dependencias.
  3. Haz clic en Dependabot para ver los ecosistemas configurados para las actualizaciones de versiones.
  4. Con respecto a los ecosistemas que quieras comprobar, haz clic en Comprobado por última vez hace TIEMPO para abrir la vista "Registros de actualización".
  5. Haz clic en Buscar actualizaciones para buscar las nuevas actualizaciones de las dependencias de ese ecosistema.

Cuando finalice la comprobación de actualizaciones, debes consultar la vista "Registros de actualización" y confirmar que Dependabot ha accedido a los registros privados configurados en tu instancia de GitHub Enterprise Server para ver si hay actualizaciones de versiones.

Tras comprobar que la configuración es correcta, pide a los administradores del repositorio que actualicen sus configuraciones de Dependabot para que solo usen registros privados. Para obtener más información, vea «Eliminación del acceso de Dependabot a registros públicos».