Estamos usando CloudFlare para uno de nuestros dominios y necesitamos instalar o renovar un certificado de Letsencrypt. CloudFlare es un servicio que, entre otras, proporciona un proxy (intermediario) entre los visitantes del sitio y el servidor donde está hospedado el sitio web.
Configuración de Cloudflare
Gestionar un sitio web desde CloudFlare es sencillo. Después de crear una cuenta gratuita, añadimos un dominio de nuestra propiedad. CloudFlare nos proporcionará un par direcciones de DNS que usaremos en nuestro proveedor del dominio en vez de las de éste. Y ya está, nuestro dominio se encuentra protegido detrás del sistema de CloudFlare con lo que dispondremos de una serie de herramientas para mejorar la seguridad, velocidad y rendimiento de nuestro sitio web en general.
En el apartado Crypto, CloudFlare nos permite, por ejemplo, forzar todas las peticiones http a https, incluso usar su certificado ssl (Universal – Shared) para nuestro dominio.
Si marcamos la conexión como full strict, obliga a que las comunicaciones entre CloudFlare y nuestro servidor estén bajo SSL también. Para eso necesitamos un certificado SSL instalado en nuestro servidor también.
Problema
Al tener nuestro sitio web detrás del proxy de CloudFlare no nos vale con usar cerbot para actualizar el certificado, tal y como cuento aquí.
$sudo certbot--nginx-dcertbot.technoage.netCerbot no va a resolver nuestro sitio web correctamente al estar usar la IP del proxy de CloudFlare.
Solución
Instalar letsencrypt desde el repositorio de github y renovar el certificado usando la opción –webroot:
$cd$git clonehttps://github.com/letsencrypt/letsencrypt$ cd letsencrypt
Y lanzamos el siguiente comando para instalar letsencrypt:
$./letsencrypt-auto
Cuando acabe de instalarse, si ofrece la opción de renovar los certicados, salimos del programa y usamos el siguiente comando (uso el dominio technoage.net a modo de ejemplo):
sudo letsencrypt--webroot--webroot-path/var/www/technoage.net/public/--renew-by-default--email info@technoage.net--text--agree-tos-dtechnoage.net-dwww.technoage.net
Nota: sustituir el path de directorio público de la aplicación y nombre del domino por los adecuados. Tambien hay que tener en cuenta que para que funcione, los registros de tipo A de los dominios han de estar apuntando a nuestro servidor y, además, nuestro servidor web configurado correctamente.
Escenario En mi trabajo usamos gpg para cifrar los documentos con información sensible. Problema Resulta que, en su día, di de alta la clave con una esperanza de vida de dos años. Y dos años pasan muy rápido. Solución Estos son los comandos que hay que ejecutar para extender la fecha de caducidad. Para listar…
Escenario Estoy trabajando en una aplicación multi-lenguaje desarrollada con la plataforma spring boot. Para quien no conozca esta plataforma de desarrollo, spring boot te permite gestionar varios lenguajes gracias a un sistema que utiliza ficheros de tipo propiedades para almacenar las traducciones. Los nombres de estos ficheros han de respetar la siguiente convención, messages_{código ISO…
Escenario Me gusta que las aplicaciones Spring Boot en las que trabajo consten de un fichero de tipo markdown con el histórico de cambios por los que ha pasado el código. Dado que el número de versión aumenta cada vez que publico un cambio en el entorno de producción, gracias a un formato de este…
Escenario Cloudatcost es una empresa canadiense que, entre otras cosas, ofrece un servicio de hosting que, en vez de pagar todos los meses, lo compras con un único pago. Te permiten comprar un número de CPUs, espacio en disco y cantidad de memoria RAM para que la gestiones como mejor te convenga, distribuyendo los recursos…
Escenario Hay que migrar una servicio API a una nueva plataforma. Esto implica rehacer el código desde cero y al mismo tiempo respetar todos los endpoints y aceptar las peticiones de los clientes del API tal y como se estaban mandando hasta ahora. Problema Las peticiones del cliente vienen mal formadas: se estaban mandado usando…
A menudo me he encontrado con que, para corregir un bug de un programa o simplemente añadir una funcionalidad nueva, basta con aplicar un parche (patch) al código fuente. En Linux / UNIX disponemos de un comando llamado patch que aplica un fichero diff o patch a un fichero de código fuente.
Un comentario
Gracias, había seguido otros consejos, pero el de aquí explicó lo que me faltaba (/public). Gracias
Gracias, había seguido otros consejos, pero el de aquí explicó lo que me faltaba (/public). Gracias