1, CA crear carpetas para almacenar CA clave privada y una clave pública
mkdir -p / usr / local / ca
cd / usr / / ca locales /
2, genera una CA clave privada y una clave pública
openssl genrsa -aes256 - cabo ca-key.pem 4096
Continua introduzca la contraseña dos veces
3, con el fin de introducir una contraseña, nacional, provincial, ciudad, nombre de la organización, correo electrónico, etc.
openssl req - nuevos -x509 -days 365 tecla ca-key.pem -sha256 - cabo ca.pem
Ahora que tiene CA, A continuación, crear una solicitud de firma del servidor de claves y el certificado (CSR), asegurarse de que el "nombre común" con el nombre que utiliza para conectarse al sistema principal partido de estibador.
4, genera servidor-key.pem
openssl genrsa - cabo servidor key.pem 4096
5, CA para firmar una clave pública
Dado que las conexiones TLS puede ser a través de las direcciones IP y los nombres DNS, es necesario especificar la dirección IP al crear el certificado. Por ejemplo, 10.10.10.20 y permitido conectar a 127.0.0.1:
$ Host IP o nombre de dominio en su propio servidor fuera de la red
openssl req -subj " CN = $ Anfitrión / " -sha256 - nueva tecla servidor key.pem - cabo server.csr
6, la configuración de la lista blanca
1) le permite especificar ip ventana acoplable puede conectar con el servidor, se puede configurar IP, separados por comas.
2) Debido a la conexión ya SSL, por lo que recomienda la configuración 0.0.0.0, que es todo IP se puede conectar (pero sólo tiene un certificado antes de que puedan conectado con éxito), después de que la empresa configurado para que otros también pueden ser utilizados.
eco subjectAltName = IP: propios servidores lo anterior Identificación mencionado, PI: 0.0 . 0.0 >> extfile.cnf
7, la llave se extiende acoplable propiedad demonio para utilizar sólo para el servidor de autenticación
eco extendedKeyUsage = serverauth >> extfile.cnf
8, la generación de un certificado de firma
openssl x509 -req -days 365 -sha256 - en server.csr -CA ca.pem -CAkey ca- key.pem \ -CAcreateserial - cabo servidor cert.pem -extfile extfile.cnf
9, el cliente genera key.pem
openssl genrsa - cabo key.pem 4096 openssl req -subj ' / CN = cliente ' - nueva key.pem tecla - cabo client.csr
10, la clave para la autenticación de cliente
eco extendedKeyUsage = clientAuth >> extfile.cnf
eco extendedKeyUsage = clientAuth> EXTFILE-client.cnf
11, la generación de un certificado de firma
openssl x509 -req -days 365 -sha256 - en client.csr -CA ca.pem -CAkey ca- key.pem \ -CAcreateserial - cabo cert.pem -extfile EXTFILE-client.cnf
Generando cert.pem, para introducir la contraseña establecida previamente.
12, archivos innecesarios de borrado
rm -v client.csr server.csr extfile.cnf EXTFILE-client.cnf
Manera de determinar
13, retire el permiso de escritura sólo se permite para leer
chmod 0400 ca-key.pem key.pem en servidor key.pem chmod -v 0444 ca.pem servidor cert.pem cert.pem
14 , certificado de servidor imputación
servidor CP -. * pem / etc / ventana acoplable /
cp ca.pem / etc / ventana acoplable /
15, modificar acoplable configuración
vim / lib / systemd / sistema / docker.service 将ExecStart = / usr / bin / dockerd替换为: ExecStart = / usr / bin / dockerd --tlsverify --tlscacert = / usr / / ca / ca.pem local - tlscert = / usr / local / ca / server-cert.pem --tlskey = / usr / local / ca / server-key.pem -H tcp: // 0.0.0.0:2375 -H UNIX: // / var / rUN / docker.sock
16, recarga y reinicia la ventana acoplable demonio
systemctl daemon- recarga
systemctl reinicio ventana acoplable
17, guarde el cliente relevante pem archivo a un local de
18, CA IDEA Configuración