Guía: Proteger tu Servidor Web con Cloudflare Zero Trust y UFW
Tener un servidor web expuesto a internet es un riesgo constante. En esta guía, vamos a construir una doble barrera de seguridad de nivel empresarial para tu servidor Ubuntu:
El Muro Frontal: Usaremos Cloudflare Zero Trust para obligar a cualquier visitante a iniciar sesión con tu cuenta de Google antes de ver tu web.
El Candado Trasero: Configuraremos el cortafuegos de Ubuntu (UFW) para que tu servidor rechace cualquier conexión directa a su IP pública, a menos que venga de Cloudflare.
PARTE 1: Configurar Cloudflare Zero Trust con Google
Requisito previo: Tu dominio debe estar gestionado en Cloudflare y con el proxy activado (la "nube naranja" en la pestaña DNS).
Paso 1.1: Obtener tu "Team Domain" en Cloudflare
Accede al panel de Zero Trust en Cloudflare.
Ve abajo del todo en el menú lateral y haz clic en Settings.
En las pestañas superiores, elige Team name.
Apunta la URL que aparece bajo Team domain (ej.
https://tu-equipo.cloudflareaccess.com). ¡Guárdala porque la usaremos ahora!
Paso 1.2: Crear las credenciales en Google Cloud
Ve a la Consola de Google Cloud e inicia sesión.
Crea un proyecto nuevo.
Ve a API y servicios > Pantalla de consentimiento de OAuth. Elige "Externo" y rellena tus datos.
Ve a Credenciales > Crear credenciales > ID de cliente de OAuth (Aplicación web).
En Orígenes de JavaScript autorizados, pega tu Team Domain:
https://tu-equipo.cloudflareaccess.comEn URI de redireccionamiento autorizados, añade:
https://tu-equipo.cloudflareaccess.com/cdn-cgi/access/callbackHaz clic en Crear. Copia el ID de cliente y el Secreto de cliente.
Paso 1.3: Conectar Google con Cloudflare
Vuelve al panel de Zero Trust.
Ve a Integrations > Identity providers.
Haz clic en Add new identity provider y selecciona Google.
Pega el ID y el Secreto de cliente y guarda.
Paso 1.4: Proteger tu dominio (Crear el Muro)
Ve a Access controls > Applications y pulsa Add an application (Self-hosted).
Pestaña 1: Ponle un nombre. En Public hostname, escribe tu subdominio (ej.
openclaw) y selecciona tu dominio. Pulsa Next.Pestaña 2: Ponle un nombre a la política (ej.
Administrador) y asegúrate de que la acción es Allow.En Include, elige Emails en el Selector y escribe tu correo exacto. Pulsa Next y guarda.
PARTE 2: Cerrar la "Puerta Trasera" con UFW
Vamos a blindar el servidor para que solo hable con Cloudflare y bloquee intentos de acceso por IP directa.
Paso 2.1: Limpiar las reglas web abiertas
Conéctate por SSH y lista tus reglas numeradas:
sudo ufw status numbered