Cifrado de imágenes acoplables (de extremo a extremo); transporte por canales fuera de línea

8

Estamos desarrollando y construyendo imágenes de Docker en nuestra intranet, y necesitamos implementarlas en varios hosts que nos pertenecen (desarrolladores, pruebas internas, pruebas externas, etc.). Algunos de estos están en nuestra intranet, otros son accesibles para terceros en Internet.

La implementación final está dentro de la intranet del cliente en varios nodos (producción, diferentes etapas de prueba). Estos están detrás de firewalls que no les permiten acceder regularmente a cosas fuera de su intranet, es decir, mientras que algunos de ellos pueden acceder a un registro externo para su implementación, otros no pueden y las imágenes tienen que entregarse manualmente a través de alguna carga de software arcano herramienta.

Estoy buscando una manera de tener un registro en Internet (posiblemente ejecutado por nosotros mismos en alguna VM, preferiblemente no) que permita que las imágenes se almacenen encriptadas (preferiblemente GPG o similar, no una contraseña simple). Pero también poder simplemente entregar "la mitad" de las cosas a través de algún mecanismo de carga de forma manual. El cliente es muy paranoico, por lo que es muy importante mantener el cifrado de extremo a extremo.

¿Hay alguna herramienta que se te ocurra y que sea perfectamente capaz de manejar? Una solución sería duplicar el registro completo en las instalaciones del cliente en un host dedicado, manteniendo intacta la parte de cifrado.

Una solución "estándar" sería genial, no me gustaría piratear algo juntos si ya hay algo delgado / ligero / establecido / estable.

EDITAR (+ editar el título): un amplio esquema de permisos como el que ofrece Portus es un buen comienzo, pero estoy buscando idealmente el cifrado de extremo a extremo de las imágenes reales. El cliente es ultra paranoico y recién comienza a usar Docker, servicios basados ​​en la nube, etc.

AnoE
fuente
Gracias, @ 030. Esa pregunta que vinculó considera ocultar las cosas del ojo de los usuarios; mi pregunta es sobre cómo ocultarlo a las personas en el camino (es decir, no necesito cifrado en ninguno de los extremos, solo cuando lo transfiero a través de algún registro).
AnoE
Okay. Entonces, ¿básicamente está buscando SSL para un registro de acoplador como https para un sitio web?
030
@ 030, como se indica en la pregunta,I am looking for a way to have a registry [...] which allows the images to be stored encrypted (preferably GPG or similar, not a simple password).
AnoE

Respuestas:

2

Google Container Registry es una opción potencial.

  1. El registro es privado.
  2. Las capas de imagen se almacenan en un depósito de Google Cloud Storage, que está encriptado por Google (RSA) y puede encriptarse adicionalmente con una clave de cliente (RSA)
  3. El control de acceso es granular para cada objeto individual almacenado en el depósito GCS
  4. La autenticación del lado del cliente se aplica a través de oauth2. Los clientes configuran docker para usar el google cloud sdk como administrador de credenciales
  5. Las imágenes se extraen a través de conexiones SSL

El hecho de que el registro forme parte de la plataforma en la nube de Google también significa que puedes desarrollar otras cosas interesantes. Por ejemplo, puede configurar una VM para que funcione como proxy inverso y configurar el firewall GCP para permitir solo 443 desde un determinado conjunto de IP (como las oficinas de sus clientes).

tazer84
fuente
0

Echa un vistazo a https://github.com/Senetas/crypto-cli

Le permite cifrar / descifrar contenedores al empujar y tirar de un repositorio público o privado.

(Revelación completa, conozco al tipo que lo escribió)

Escombros
fuente