¡Use el túnel CloudFlare para publicar su servidor hogareño Ubuntu (Docker)!

¡Use el túnel CloudFlare para publicar su servidor hogareño Ubuntu (Docker)!

Originalmente estaba usando un VPS XServer, pero debido a la falta de memoria, estaba incurriendo en demasiados costos operativos, por lo que planeo usar mi PC de casa como servidor para publicarla en el túnel Cloudflare

Las siguientes PC se usaron para mi servidor doméstico:
es una mini PC que se ha vuelto popular en estos días. Tiene bonitas especificaciones para alrededor de 50,000 yenes a la venta, y no ocupa mucho espacio incluso cuando se coloca en casa, ¡así que es bastante bueno! (Hay muchos fabricantes diferentes, pero Minisforum parece ser bueno).

Tabla de contenido

Regístrese como una cuenta de CloudFlare

No explicaré esto, pero regístrese como una cuenta de CloudFlare.
Si solo está usando el túnel CloudFlare, creo que el plan gratuito estaría bien.

Además, se requiere un dominio separado.
Si aún no ha registrado su dominio, intente registrarse a través de "Registro de dominio> Dominios de registro".
Está bien obtener un dominio usando Oname.com o Xserver VPS.

Registre el sitio

Una vez que haya obtenido el dominio, vincule el dominio desde "Agregar sitio".

Instalar CloudFlared en Ubuntu

Desde aquí, trabajará en el servidor que desea publicar.
Instale la nubefolina en Ubuntu.

  1. Se agregó la clave de firma de paquetes de nubeflare
sudo mkdir -p --mode = 0755/usr/share/keyrings curl -fssl https://pkg.cloudflare.com/cloudflare-main.gpg | sudo tee /usr/share/keyrings/cloudflare-main.gpg>/dev/null
  1. Repositorio de apt en CloudFlare agregado
echo "Deb [firmado-by =/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/cloudflare jammy main" | sudo tee /etc/apt/sources.list.d/cloudflare.list

Este comando ha sido cambiado del procedimiento oficial. Esto se debe a que no hay nubefolvo en el último repositorio.
Oficial "echo" Deb [firmado-by =/usr/share/keyrings/cloudflare-memain.gpg] https://pkg.cloudflare.com/cloudflare $ (lsb_release -cs) principal "| sudoe /etc/apt/sources.list.d/cloudflare.list"

Error: 10 https://pkg.cloudflare.com/cloudflare noble versión 404 no encontrado [ip: 2606: 4700 :: 6812: 176 443] Carga de la lista de paquetes ... terminado e: repositorio https://pkg.cloudflare.com/cloudflare noble liberación no tiene un archivo de lanzamiento. N: Las actualizaciones se deshabilitan de forma predeterminada porque las actualizaciones no se pueden hacer de manera segura desde dicho repositorio. N: Para obtener más información sobre la creación de un repositorio y configurar un usuario, consulte la página del hombre Apt-Secure (8).
  1. Actualizar el repositorio e instalar CloudFlared
sudo apt-get actualización && sudo apt-get install nubeClared

Inicie sesión en CloudFlare

Creo que pude instalar CloudFlared.
Quiero crear un túnel o algo usando un comando, así que inicio sesión en CloudFlare.

  1. Inicie sesión en CloudFlare
inicio de sesión de túnel con nubes en la nube

El navegador le mostrará si lo permitirá, así que asegúrese de permitir el dominio objetivo.
Si se lo permite, creo que se vería así:

$ CloudFoled Tunnel Iniciar sesión Una ventana del navegador debe haber abierto en la siguiente URL: https: // ****** Si el navegador no se abrió, visite la URL anterior directamente en su navegador. Ha iniciado sesión con éxito. Si desea copiar sus credenciales a un servidor, se han guardado en: /Home /********

Crea un túnel CloudFlare

Una vez que haya iniciado sesión, comenzará a crear un túnel.
Esto también se puede crear con el comando.

  1. Crea un túnel CloudFlare
CloudFlared Tunnel Cree [cualquier nombre] Credenciales de túnel escritas a /home/****/****.json. CloudFlared Elija este archivo en función de donde se encontró su certificado de origen. Mantenga este archivo en secreto. Para revocar estas credenciales, elimine el túnel. Túnel creado ***** con ID *****

La "ruta JSON" y "ID" se utilizarán en el archivo de configuración, así que guárdelo.

Crear un archivo de configuración

A continuación, cree un archivo de configuración. Específicamente, enumeraremos el contenido del túnel.

  1. Creación de un archivo de configuración (esta vez, Docker usa 81 puertos, por lo que Tunnel Localhost: 81.)
$ sudo mkdir -p/etc/nubeFlared $ cd nubeFlared/$ sudo nano config.yml $ gat config.yml url: http: // localhost: 81 túnel: [ID (creado con túnel con calado create)] File de credenciales: [JSON Rath (creado con túnel con túnel con nubes Cloud)]]]]]]]

Comenzar a enrutar

  1. Asigne registros que dirijan el tráfico CNAME al subdominio del túnel
Ruta de túnel con caloges DNS [ID] [dominio] 2024-11-03T14: 32: 58Z INF agregó Cname [dominio] que enrutará a este túnel Tunnelid = [ID]

Túnel de inicio

Una vez que haya hecho esto, puede comenzar el túnel.

  1. Ejecutar la ejecución del túnelfleado de la nube
Cloudfoled Tunnel Run [ID]

¡Creo que su servidor doméstico ahora está abierto al público!

Iniciar Cloudflare con el servicio

Si esto continúa, el túnel no se iniciará a menos que se inicie el comando, así que registrelo como un servicio.

  1. Cree una configuración de servicio (ingrese la ID del túnel para [ID]).
$ sudo nano /etc/systemd/system/cloudflared.service $ cat /etc/systemd/system/cloudflared.service [unit] Descripción = Cloudflare Tunnel después = network.target [servicio] type = simple ejecutart =/usr/local/bin/cloud tunnel run [ir] reiniciar = user in-failure = root [instalación Wantedby byyBy byyby byyBy byyby/Multi-milli-milli-tar.Tar.Targar. Tunnel Run [ID] reiniciar = user in-failure = root [instalación Wantedby byyBy byyBy byyby sencillo
  1. Iniciar el servicio
  2. Cambiar servicio para habilitar
$ sudo SystemCTL Reload de demonio $ sudo SystemCTL Inicio CloudFlared $ sudo SystemCTL Habilitar CloudFlared

Ahora, si el sistema está arriba, el túnel continuará funcionando.

¡Comparte si quieres!

Quien escribió este artículo

Este es un blog que comencé a estudiar la seguridad de la información. Como nuevo empleado, sería feliz si pudieras mirar con un corazón amplio.
También está Teech Lab, que es una oportunidad para estudiar diversión de programación, por lo que si está interesado en el desarrollo de software, ¡asegúrese de echar un vistazo!

Tabla de contenido