TANZU - Harbor con SSL configurado

 TANZU - Harbor con SSL configurado


En este manual, se describe como añadir un certificado SSL autofirmado en Harbor. De esta manera se puede utilizar HTTPS en Harbor, además de conexión desde el cliente Docker que se utilizará para cargar los contenedores a Harbor.

Para instalar Harbor en Debian 11 ver : TANZU - Instalar Harbor en Debian 11

Hacer conexión SSH a la máquina de Harbor.

Elevarse como root : su -
Crear una carpeta para almacenar los certificados y acceder a ella:
mkdir certs
cd certs


Hay que generar un certificado CA. 
Primero se genera una clave privada, para ello utilizar el siguiente comando:
openssl genrsa -out ca.key 4096


Ahora se genera el certificado CA. Cambiar los valores por los vuestros , y en el CN hay que meter el FQDN del servidor.

Ejemplo:

openssl req -x509 -new -nodes -sha512 -days 3650  \
-subj "/C=ES/ST=Valencia/L=Valencia/O=ticveintitres/OU=Personal/CN=harbor.ticveintitres.com" \
 -key ca.key -out ca.crt


Ahora se tiene que crear el certificado del servidor. 
Primero se genera la clave privada del servidor:

Ejemplo: openssl genrsa -out harbor.ticveintitres.com.key 4096


Lo siguiente es generar la solicitud de firma ( CSR ), recordar cambiar los valores que se ponen aquí de ejemplo por los vuestros y que en CN insertar el FQDN del servidor.

Ejemplo:
openssl req -sha512 -new \
    -subj "/C=ES/ST=Valencia/L=Valencia/O=ticveintitres/OU=Personal/CN=harbor.ticveintitres.com" \
    -key harbor.ticveintitres.com.key \
    -out harbor.ticveintitres.com.csr


Este paso es importante, ya que hay que crear un archivo con la extensión ".ext" para que el certificado que cumpla con la normativa "SAN" y x509 v3. Aquí en los nombres de DNS insertar el FQDN  de harbor.

Ejemplo:
cat > v3.ext <<-EOF
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth
subjectAltName = @alt_names

[alt_names]
DNS.1=harbor.ticveintitres.com
DNS.2=harbor.ticveintitres.com
DNS.3=harbor.ticveintitres.com
EOF


Ahora, este archivo generado se utilizará para crear el CRT para harbor.

Ejemplo:
openssl x509 -req -sha512 -days 3650 \
 -extfile v3.ext -CA ca.crt -CAkey ca.key -CAcreateserial -in harbor.ticveintitres.com.csr -out harbor.ticveintitres.com.crt



Copiar los certificados en las siguientes rutas para luego configurar el harbor.yml.

Ejemplo:
cp harbor.ticveintitres.com.crt /etc/ssl/certs
cp harbor.ticveintitres.com.key /etc/ssl/private


Navegar a la carpeta de harbor, y editar el archivo harbor.yml



En este archivo , hay que comentar las líneas que tienen que ver con la configuración HTTP y descomentar las que hacen referencia a HTTPS.

En las líneas "certificate" y "private_key" se tiene que añadir la ruta de los certificados SSL.

Ejemplo:


Por último, aplicar un install.sh para que se apliquen los cambios en Harbor.

./install.sh







 Fin del Manual




#vcenter7 #tanzu #kubernetes #vmware #debian #harbor #ticveintitres #actitud #motivacion 

Comentarios