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 Por un lado una aplicación que permite al usuario personalizar el idioma del sitio. Por otro, una gráfica de tipo línea temporal generada con la biblioteca Chart.js, integrada en un módulo de React con react-chartjs-2. Problema Según un comentario de un usuario de Stackoverflow, basta con un
require('moment/min/moment-with-locales'); y establecer el valor de la…
Ésta va a ser rápida. Es solo un recordatorio personal de cómo configurar varias instancias de gunicorn en una máquina con systemd. De modo que si no sabes qué es unicorn o systemd es muy posible que no te vaya interesar nada de lo que vaya a contar. Si aun sigues ahí a pesar de…
Escenario Llevo tiempo lamentándome cada vez que, con Firefox, tengo que abrir el explorador de ficheros. Por ejemplo para elegir una fichero para subir a un sitio o elegir la carpeta donde quiero dejar un fichero que voy a descargar. Problema Firefox, en vez de usar el explorador de ficheros del sistema —en mi caso…
Escenario Estaba yo cargando un dump de unos ocho gigas en un servidor de MySql cuando de repente el proceso se queda parado. Lo estaba cargando con un source de un fichero generado con mysqldump. Un show processlist muestra el proceso bloqueado. Lo mato con un kill pero el source sigue sin avanzar. Para detener…
Escenario En una aplicación Spring Boot v2.3.4 hay dos entidades
Balance y
Shop. Una tienda (shop) puede tener varios saldos y un saldo (Balance) ha de estar relacionado con una tienda. Además existen panaderías (Bakery) y sastrerías (TailorShop) que extienden la clase
Shop:
Escenario Después de 5 años campando en un Ubuntu 16.04 ha llegado la hora de migrar la aplicación osTicket a un nuevo servidor. Para quien no la conozca osTicket es un sistema de incidencias que podemos desplegar en un servidor propio. La aplicación web cuenta con una herramienta que automáticamente detecta una diferencia de versiones…
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