Una vez que tenemos configurado Cloudflare y opcionálmente Cloudflared cualquier persona que se conecte a cualquiera de los servicios que tengamos publicados en Cloudflare hace presísamente eso, en lugar de conectarse diréctamente, por ejemplo, a nuestro nas lo hace a Cloudflare y al hacerlo de esta manera recibe una conexión https con lo que se conoce como un certificado https de perímetro que es gestionado por Cloudflare.
A continuación lo que ocurre es que el propio Cloudflare se conecta a nuestro servidor que en este caso sería nuestro nas para proporcionar al visitante el contenido publicado. Para proteger esa conexión entre Cloudflare y el nas se nos proporciona gratuítamente lo que se conoce como Certificado para el Servidor de Origen y este certificado lo tenemos que crear nosotros desde la interfaz de Cloudflare y a continuación se lo tenemos que poner en el nas. Hecho todo esto en la interfaz de Cloudflare activamos la opción Extracción de origen autenticadas.
A la hora de crear ese certificado que tendrá una validez de 15 años lo podemos hacer de manera automática con algunos matices que luego comentaré. A la hora de crear ese certificado necesitaremos tener también la correspondiente clave y Cloudflare al escoger el método automático nos permite usar una clave RSA de 2048 bits.
El propósito de este mini-tutorial es explicar como aumentar la seguridad de ese procedimiento utilizando una clave RSA de 4096 bits en lugar de la de 2048 bits predeterminada, a continuación crear el correspondiente certificado en Cloudflare para el nas y para terminar instalarlo todo en el nas.
Lo primero que vamos a hacer es entrar en el apartado Servidor de origen de nuestro dominio en Cloudflare:
Como se puede ver yo ya tengo uno creado. Si queremos crear uno nuevo nos aparece lo siguiente:
De forma predeterminada se nos ofrece la obligatoriedad de crear una clave RSA de 2048 bits para la creación del certificado pero en lugar de eso vamos a utilizar la otra opción de usar mi clave privada y CSR
Llegados a este punto nos olvidamos por el momento de Cloudflare y en un ordenador Windows - Linux creamos una carpeta nueva vacía y dentro de esa carpeta abrimos un Terminal. A continuación vamos a crear una clave de 4096 bits que va a tener el nombre de private.key con el siguiente comando:
openssl genrsa -out private.key 4096
Sin cerrar ese Terminal abierto a continuación vamos a crear lo que se conoce como una solicitud de certificado CSR a partir de la clave que acabamos de crear y el archivo resultante tendrá el nombre de device.csr
Lo haremos ejecutando el siguiente comando: openssl req -new -key private.key -out device.csr
Una vez ejecutado se nos va haciendo un cuestionario que tenemos que ir rrellenando dentro del mismo Terminal
Terminado el cuestionario ya podemos cerrar el Terminal y el resultado de todo esto es que dentro de la carpeta que creamos al principio tendremos dos nuevos archivos, uno es la clave y el otro el CSR
Lo siguiente es abrir el archivo CSR con un editor de texto y copiar el contenido:
Ahora volvemos al punto que estábamos antes en Cloudflare:
Y pegamos el contenido del archivo CSR que copiamos antes:
Hecho esto lo siguiente es crear el certificado, al hacerlo nos aparecerá lo siguiente:
En la imagen que acabo de poner el certificado está en formato PEM y Cloudflare nos da la opción de copiarlo así que lo hacemos. En la carpeta anterior de nuestro ordenador creamos un nuevo archivo que va a tener la extensión .pem y que le podemos poner el nombre que nos apetezca, por ejemplo, certificate.pem
Abrimos ese archivo nuevo certificate.pem con un editor de textos y le ponemos el contenido del certificado de Cloudflare que hemos copiado antes.
Llegados a este punto en la carpeta de nuestro ordenador tendremos 3 archivos:
- certificate.pem que es el certificado
- private.key que es la clave
- device.csr que es el CSR y que ya podemos ELIMINAR.
Nos falta un cuarto archivo, un certificado CA root que no tenemos que crear sino que tenemos que descargar a nuestro ordenador desde aquí:
https://developers.cloudflare.com/ssl/or...origin-ca/
Con esto tendríamos en nuestra carpeta del ordenador 4 archivos aunque ya he dicho que el archivo device.csr ya no es necesario:
Ya lo tenemos todo así que ahora vamos a instalarlo todo en el nas. En el Panel de Control nos vamos al apartado Seguridad - Certificado SSL y clave privada, lo que vamos a hacer es reemplazar el certificado que tengamos instalado en el nas por el que acabamos de crear en Cloudflare:
Le indicamos la ubicación en nuestro ordenador de los tres archivos necesarios:
- certificate.pem certificado
- private.key clave
- origin ca rsa root.pem el certificado CA que descargamos de la web de Cloudflare
Aplicamos los cambios y ya tenemos instalados el certificado y la clave de Cloudflare para validar los orígenes autentificados para la conexión entre el nas y Cloudflare: