USO DE IRONSECUREDOC

Certificación Docker (Cómo funciona para desarrolladores)

Publicado en 14 de enero, 2025
Compartir:

¿Qué es Docker?

Docker es una plataforma gratuita y de código abierto de contenedorización, por lo que facilita el desarrollo, implementación y mantenimiento de aplicaciones. Realmente es solo un poco delgado, la cosa ligera que en realidad contiene una aplicación con todo de lo que depende una aplicación; necesita funcionar en tantos contextos como sea posible, desde la propia computadora del desarrollador hasta el servidor de producción. Estos contenedores son significativamente más eficientes y rápidos porque comparten el sistema operativo.núcleodel sistema anfitrión, a diferencia de las máquinas virtuales estándar.

Certificación de Docker (Cómo Funciona para Desarrolladores): Figura 1

El motor Docker es solo una de varias empresas que ofrecen diferentes modelos para generar, gestionar y compartir esos contenedores. Una versión de este modelo incluso ha sido denominada imágenes de Docker. El tipo especial de repositorio de Docker para compartir y almacenar imágenes de contenedores es Docker Hub. Una de las principales razones por las que las tecnologías de Docker se ven tanto en los flujos de trabajo de desarrollo en la nube y DevOps es su supremacía en escalabilidad, portabilidad y eficiencia. Docker viene con dos versiones: personal y Docker Enterprise Edition.

¿Qué es un certificado Docker?

ACertificado de Dockeres un certificado digital utilizado para crear una comunicación segura entre un cliente Docker y un servidor Docker, como un demonio Docker o un registro Docker, a través de HTTPS. Es un aspecto importante de la configuración TLS de Docker, que permite que solo los clientes y servidores interactúen entre sí. Es bastante útil cuando se despliega Docker en entornos de producción o distribuidos.

Características de los certificados de Docker

Autenticación TLS/SSL: Aplica certificados TLS/SSL para autenticar clientes y servidores, asegurando que provienen de fuentes legítimas.

Cifrado: Docker permite la transmisión de datos cifrados entre los lados del cliente y del servidor mediante certificados. Estos certificados no son legibles para otros.

Autenticación mutua: TLS mutuo implementa la autenticación mutua de certificados entre cliente y servidor. Ofrece seguridad absoluta porque la verificación del certificado de cualquiera de las partes debe preceder a cualquier transferencia de datos.

Tipos de certificados en Docker

Certificado de Servidor: Permite que el cliente autentique el daemon de Docker. El certificado del servidor está instalado en el servidor que ejecuta Docker.

Certificado de cliente: es emitido al cliente de Docker que lo solicitó para autenticación en un servidor. El Certificado de Cliente deberá estar firmado por una CA de confianza.

Certificado CA: Este debe ser el Certificado CA de ambas partes utilizado para firmar el certificado del servidor o del cliente y crear relaciones de confianza entre las dos partes.

Uso de una autoridad de certificación (CA) personalizada

Si estamos ejecutando una CA personalizada, necesitaremos hacer que Docker confíe en esta CA. Normalmente configuraríamos Docker para señalar a tu CA almacenando el certificado de la CA en /etc/docker/certs.d//ca.crt en tu host de Docker.

Debemos pegar nuestro certificado CA en /etc/docker/certs.d//ca.crt en tu host de Docker.

Uso de Docker con TLS

El propio demonio de Docker puede ser protegido por TLS generando certificados de servidor y cliente y luego configurando Docker para usarlos en las comunicaciones.

Generar Certificados

Utilice OpenSSL para generar los certificados necesarios:

openssl genrsa -aes256 -out ca-key.pem 4096
openssl req -new -x509 -days 365 -key ca-key.pem -sha256 -out ca.pem
openssl genrsa -aes256 -out ca-key.pem 4096
openssl req -new -x509 -days 365 -key ca-key.pem -sha256 -out ca.pem
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'openssl genrsa -aes256 -out ca-key.pem 4096 openssl req -New -x509 -days 365 -key ca-key.pem -sha256 -out ca.pem
VB   C#

Certificación Docker (Cómo funciona para desarrolladores): Figura 2

Cree claves y certificados de cliente y servidor ahora:

openssl genrsa -out server-key.pem 4096
openssl req -subj "/CN=your-server" -sha256 -new -key server-key.pem -out server.csr
openssl x509 -req -days 365 -sha256 -in server.csr -CA ca.pem -CAkey ca-key.pem -CAcreateserial -out server-cert.pem
openssl genrsa -out server-key.pem 4096
openssl req -subj "/CN=your-server" -sha256 -new -key server-key.pem -out server.csr
openssl x509 -req -days 365 -sha256 -in server.csr -CA ca.pem -CAkey ca-key.pem -CAcreateserial -out server-cert.pem
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'openssl genrsa -out server-key.pem 4096 openssl req -subj "/CN=your-server" -sha256 -New -key server-key.pem -out server.csr openssl x509 -req -days 365 -sha256 -in server.csr -CA ca.pem -CAkey ca-key.pem -CAcreateserial -out server-cert.pem
VB   C#

Finalmente, configure Docker para utilizar estos certificados: colóquelos en los directorios correctos y corrija la configuración del daemon de Docker.

Configurar el demonio Docker

Para utilizar los certificados generados, cambie la configuración del daemon de Docker:

{
  "tls": true,
  "tlsverify": true,
  "tlscacert": "/etc/docker/ca.pem",
  "tlscert": "/etc/docker/server-cert.pem",
  "tlskey": "/etc/docker/server-key.pem",
  "hosts": ["tcp://0.0.0.0:2376", "unix:///var/run/docker.sock"]
}
{
  "tls": true,
  "tlsverify": true,
  "tlscacert": "/etc/docker/ca.pem",
  "tlscert": "/etc/docker/server-cert.pem",
  "tlskey": "/etc/docker/server-key.pem",
  "hosts": ["tcp://0.0.0.0:2376", "unix:///var/run/docker.sock"]
}
If True Then
  "tls": True, "tlsverify": True, "tlscacert": "/etc/docker/ca.pem", "tlscert": "/etc/docker/server-cert.pem", "tlskey": "/etc/docker/server-key.pem", "hosts": ("tcp://0.0.0.0:2376", "unix:///var/run/docker.sock")
End If
VB   C#

Reinicie el demonio Docker para aplicar los cambios.

Examen de certificación Docker

Docker Certified Associate es una certificación reconocida a nivel mundial que tiene como objetivo autenticar la experiencia del candidato en habilidades de Docker. Las certificaciones de Docker contienen aproximadamente 55 preguntas de opción múltiple y selección múltiple, las cuales se plantean en este examen supervisado en línea.(Certificación de Asociado Certificado de Docker), que debería resolverse en 90 minutos.

Incluye seis dominios principales: orquestación, creación y gestión de imágenes, instalación y configuración, redes, seguridad y almacenamiento. Aunque no hay requisitos estrictos, se anima a los candidatos a tener al menos seis meses de experiencia práctica en el uso de Docker y deben tener un buen nivel de comprensión de cómo funcionan las cosas en los flujos de trabajo de aplicaciones contenedorizadas, así como una certificación de Docker válida por dos años.

La preparación incluye estudiar la documentación de Docker, practicar comandos CLI, trabajar con Docker Swarm y Docker Compose, y utilizar exámenes simulados. Adquirir el DCA significa que uno demuestra competencia en Docker y le ofrece mejores perspectivas de carrera dentro de DevOps, el desarrollo nativo en la nube y la orquestación de contenedores. Para obtener más información sobre el curso de capacitación de Docker, consulte aquí.

¿Qué es IronSecureDoc?

IronSecureDoc es un producto recientemente desarrollado por Iron Software, especialmente diseñado con el objetivo de asegurar documentos digitalmente, especialmente PDFs, con una encriptación y controles bastante robustos. Esto permitirá a una organización instalar protocolos de cifrado avanzados como AES-256 para que dicha información sensible no pueda ser vista sin permiso autorizado. La empresa tiene permisos y restricciones personalizados sobre la impresión, edición o copia, lo que significa que el documento solo puede ser abierto por un usuario autorizado. La protección con contraseña, así como las firmas digitales, también aumentan la seguridad y la integridad de los documentos y marca de agua.

Certificación de Docker (Cómo funciona para desarrolladores): Figura 3 - IronSecureDoc: El servidor de seguridad y cumplimiento de PDF

IronSecureDoc es amigable para los desarrolladores y puede adaptarse fácilmente a aplicaciones a través de Docker u otros entornos de programación, por lo que debería poder adaptarse a muchos flujos de trabajo empresariales. Por ejemplo, en las industrias de salud, finanzas y legal, la confidencialidad de los documentos lo significa todo. IronSecureDoc combinará las características de cifrado y control de los documentos dentro de una organización y garantizará su protección para facilitar el cumplimiento y el intercambio seguro y fácil con un socio o cliente externo.

Cómo los certificados mejoran la seguridad de IronSecureDoc

Autenticación: Los certificados son tales que es posible la autenticación del usuario o del sistema en el documento asegurado, y solo la persona autorizada podrá acceder al archivo. Esto es muy fundamental para el cumplimiento y la seguridad interna, especialmente donde industrias reguladas tienen su participación, como en finanzas y salud.

Cifrado: En el cifrado de clave pública, los archivos pueden ser cifrados por IronSecureDoc de manera que un archivo cifrado con él solo pueda ser abierto por una persona que tenga la clave privada correspondiente. Por lo tanto, no importa cuán difícil lo intente, el contenido interceptado no puede ser accedido.

Firmas digitales: Los certificados permiten la firma digital, lo que otorga origen e integridad al documento. Una firma válida asegura que el documento no ha cambiado, garantizando así más confianza y cumpliendo con los criterios legales para transacciones digitales.

Instalación y ejecución de IronSecureDoc

Ejecute el siguiente comando en el símbolo del sistema o en una ventana de terminal abierta para extraer la imagen de Docker de IronSecureDoc del repositorio.

docker pull ironsoftwareofficial/ironsecuredoc
docker pull ironsoftwareofficial/ironsecuredoc
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'docker pull ironsoftwareofficial/ironsecuredoc
VB   C#

Certificación de Docker (Cómo funciona para los desarrolladores): Figura 4

Después de extraer una imagen del contenedor de Docker, podemos emplear otro comando para iniciar IronSecureDoc, un contenedor operativo.

docker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest
docker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'docker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest
VB   C#

El comando de ejecución de Docker mencionado anteriormente creará una instancia de contenedor de IronSecureDoc.

Usando IronSecureDoc

La API REST de IronSecureDoc permite a los usuarios redactar, certificar y cifrar documentos directamente en la instalación e inicio en Docker. también se ha mencionado en otros lugares. Aquí está elenlacea la documentación.

Certificación de Docker (Cómo funciona para desarrolladores): Figura 5

Por ejemplo, para cifrar un documento, puedes realizar un POST a la API de IronSecureDoc:

curl -X 'POST' \
  'http://localhost:8080/v1/document-services/pdfs/encrypt?user_password=demo' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@test.pdf;type=application/pdf'
curl -X 'POST' \
  'http://localhost:8080/v1/document-services/pdfs/encrypt?user_password=demo' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@test.pdf;type=application/pdf'
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'curl -X 'POST' \ 'http: -H 'accept: */ *' \ -H 'Content-Type: multipart/form-data' \ -F 'pdf_file=@test.pdf;type=application/pdf'
VB   C#

Esto enviará automáticamente el documento a IronSecureDoc, donde será cifrado adecuadamente.

Conclusión

Los certificados de Docker e IronSecureDoc forman así un marco integral y seguro para gestionar documentos en entornos con contenedores. Los certificados de Docker facilitan la comunicación encriptada y autenticada entre clientes y servidores de Docker para garantizar el despliegue y la gestión seguros de aplicaciones de alojamiento de contenedores como IronSecureDoc. Solo las entidades de confianza tendrán acceso y podrán modificar los contenedores de Docker, evitando así cualquier acción no autorizada dentro del entorno del servidor.

Esto es compatible con IronSecureDoc, en el cual se pueden añadir características de seguridad específicas para documentos, como la encriptación de archivos, la implementación de controles de acceso y la autenticación de la autenticidad del documento a través de firmas digitales. Junto con los certificados de Docker y IronSecureDoc, se ofrece una protección de seguridad completa tanto de la infraestructura como de los datos sensibles almacenados. Para obtener más información sobre la licencia de IronSecureDoc, haz clic en este página. Para obtener información sobre muchos de los productos de Iron Software, siga este enlace.

< ANTERIOR
Cómo asegurar la API de PDF en Docker usando C#
SIGUIENTE >
Zabbix Docker (Cómo funciona para desarrolladores)