
Actualmente estoy implementando unServidor Docker Registry privado nginx
configurado para reenviar https
el tráfico de forma segura a la instancia de Docker Registry en ejecución (es decir docker-compose
, )en una red privada (con DNS, DHCP configurado).
Tengo toda la configuración funcionando como se esperaba, pero tuve quecrear certificados autofirmadosya que no tengo permiso para usar"Cifremos"(requisito estricto). Implementé el .crt
archivo /usr/local/share/ca-certificates
en todos los hosts de Ubuntu en mi red y actualicé el almacén de certificados (es decir, a través de sudo update-ca-certificates -f
).
Sin embargo, aunque el certificado sea "confiable" (del paso anterior), el certificado todavía está registrado como "autofirmado" yLa única manera de hacer que Docker Registry funcione completamente es creando un archivo., /etc/docker/daemon.json
con el siguiente contenido (suponiendo que mi instancia de Docker Registry se esté ejecutando en el registry
host de mi lan
dominio):
{
"insecure-registries" : [ "registry.lan:5000" ]
}
Esto hace que algunas funciones se rompan (es decir, hay algunos complementos que no funcionarán si los "registros inseguros" están habilitados).
Pregunta
¿Cómo puedo configurar mi red privada (es decir, suponiendo que ni siquiera esté conectada a Internet la mayor parte del tiempo) para que todas las máquinas de la red "confíen plenamente" en el certificado (es decir, para que el certificado sea "confiable públicamente" entre los hosts de la red local)?es decir, ¿qué comando puedo ejecutar o qué archivo de configuración puedo modificar?
Esta parece una posible solución: crear una clave de servidor CA plus en mi red privada.
Gracias.
Respuesta1
No es suficiente agregar su certificado /usr/local/share/ca-certificates
. Debe asegurarse de haber leído chmod para otros y también agregar su ruta relativa al archivo /usr/local/share/ca-certificates
.
Digamos que su certificado es/usr/local/share/ca-certificates/self-signed/yourcert.crt
Deberías editar/etc/ca-certificates.conf
editor sudo /etc/ca-certificates.conf
y agregue su ruta relativa, relativa a /usr/local/share/ca-certificates/
para ser exactos.
Entonces debería ser algo como:
autofirmado/yourcert.crt
Entonces corre
sudo actualización-ca-certificados
Debería ver 1 certificado agregado en el resultado del comando anterior.
Tenga en cuenta que este certificado será confiable solo en este host específico. También debe implementarlo en sus contenedores acoplables si desea que se confíe en él internamente.