Como usar un subdominio en Cloudflare para tu servidor de Minecraft
Tabla de contenidos
- Introducción
- Requisitos
- Dominio en Cloudflare
- Tokens de API usuario
- Creación de contenedor Docker
- Port Forwarding/Ruteo de puertos
- Configurar el redireccionamiento
- Conclusión
Introducción
En esta guÃa te mostraré como tener un subdominio en Cloudflare para que tú o tus amigos puedan conectarse a tu servidor de Minecraft pero a través de un DNS, por ejemplo: miserver.papiabi.com en vez de los tÃpicos números de una IP.
Esta guÃa está totalmente basada en mi experiencia, puede variar un poco en cuestión de cuando se esté leyendo esto, ya que se a veces las dependencias cambian pero no deberÃa ser muy diferente.
Requisitos
- IP Pública
- Router que permita el Port Forwarding
- Linux (Ubuntu preferentemente)
- Docker
- Dominio comprado en Cloudflare
- Java JRE
Dominio en Cloudflare
Es fundamental que tengas un dominio en Cloudflare, ya que de esto va la guÃa, si no tienes un dominio en Cloudflare, te dejo esta publicación para que veas como comprarlo, son muy baratos y valen toda la pena.
Con el dominio en Cloudflare, toca crear un registro de tipo A en el DNS del dominio asà como se muestra en la imagen de abajo:
Tipo = A
Nombre = nombre del subdomino (sv1, server, mine… el que gustes)
Dirección IPv4 = 0.0.0.0 (Este dato se actualizará después automáticamente)
Estado de proxy = dejalo deshabilitado
TTL = Automático

Tokens de API usuario
Ahora hay que crear un token que se va a utilizar en un contenedor de Docker que actualiza la IP “0.0.0.0” en Cloudflare a la IP pública de nuestro internet. Si tienes IP pública fija sáltate este paso hasta el Port Forwarding.
Crear API Token
Accede a este link de Cloudflare: https://dash.cloudflare.com/profile/api-tokens
Te saldrá la siguiente pantalla y le das al botón de “Crear token“

Selecciona una plantilla
Y selecciona la plantilla de la primera opción llamada “Editar zona DNS“

Resultado del token personalizado
Y vas a dejar tal cual te aparece en la imagen de abajo, aparecerán más cajas de texto, pero ignóralas, sólo llena las que te muestro en las imagen.

¡IMPORTANTE! ¡IMPORTANTE! ¡IMPORTANTE!
Aquà Cloudflare te mostrará el token de usuario, que servirá para que el contenedor de Docker pueda actualizar la IP pública en el DNS a través de la API de Cloudflare. Guarda muy bien este token, porque sólo te lo muestra una vez.

Creación de contenedor Docker
Este contenedor únicamente se utilizará para que se actualice cada 5 minutos la IP en el registro tipo A de Cloudflare. Si no cuentas con Docker, aquà te dejo otra guÃa para que lo puedas instalar.
Creación del Docker Compose
Crea o dirÃgete a una carpeta para guardar el Docker Compose para crear el contenedor de Docker y crea le yml.
nano docker-compose.yml
Es importante cambiar los valores por los tuyos.
ZONE = dominio que hayas contratado y elegido al momento de crear el token.
SUBDOMAIN = el subdominio al que quieres apuntar.
API_KEY = el token que generaste anteriormente.
#
# Docker compose para la actualización de IP pública dinámica al registro de Cloudflare.
#
services:
cloudflare-ddns:
image: oznu/cloudflare-ddns
environment:
- ZONE=papiabi.com
- SUBDOMAIN=sv1
- API_KEY=LAKICN5wtZyB91q4p8___________IW0 #Aquà pegas el token que generaste
Levantar el contenedor
Para levantar el contenedor es tan fácil como ejecutar el siguiente comando.
docker compose up -d
Sabrás que funcionó porque en el registro tipo A de Cloudflare ya no debe aparecer la IP “0.0.0.0“, sino la que corresponde a tu IP pública.

Port Forwarding/Ruteo de puertos
Esta es la parte más importante y lo que realmente hace funcionar a esta guÃa. Comprueba que tu router tiene habilitada las opciones para el Port Forwarding e inicia sesión. En mi caso sé que si están esas herramientas.

Configurar el redireccionamiento
Esta es la parte más importante y lo que realmente hace funcionar a esta guÃa. Comprueba que tu router tiene habilitada las opciones para el Port Forwarding e inicia sesión. En mi caso sé que si están esas herramientas.
Si eres de México y cuentas con el servicio de Telmex, puedes ir a la pestaña “reglas de desvÃo” y en la opción de “Port Forwarding”.
Independientemente de que compañÃa seas, las reglas son muy parecidas, hay que copiar lo que se muestra en la imagen de abajo y ajustarlas a tu router.

Conclusión
Esto tendrÃa que ser suficiente y para repasar lo que este flujo hace es lo siguiente:
1. El contenedor de Docker estará actualizando la IP pública para que el DNS de Cloudflare siempre esté apuntando de forma correcta a la IP pública de tu servidor/ISP.
2. Tu router tiene abiertos los puertos que este caso son los de Minecraft, pero bien podrÃa ser alguna aplicación o cualquier otro puerto, esto es decisión de lo que requieras.
3. Cloudflare va a exponer siempre todo el rango de puertos de sobre la IP que tiene en el DNS, es por eso que es muy importante no aplicar un DMZ o desmilitarización en el router, porque estarÃas dejando expuesto todos los puertos.
En esta guÃa sólo dejé expuesto el puerto de Minecraft, que es el “25565”, por lo que de forma externa sólo estoy exponiendo este puerto.
Espero esta guÃa sea clara y te haya ayudado.
¡Hasta luego!
Publicar comentario