Activar Cloudflared Argo Tunnel en el inicio del sistema
Cloudflared te permite proteger y cifrar rápidamente el tráfico de aplicaciones a cualquier tipo de infraestructura, lo que te permite concentrarse en la entrega de aplicaciones excelentes.

Como habiamos visto en el artículo anterior referente a Cloudflared Argo Tunnel en Raspberry Pi, este servicio te permite proteger y cifrar rápidamente el tráfico de aplicaciones a cualquier tipo de infraestructura.
Si bien es cierto que ya sabemos como instalar cloudflared argo en nuestro raspberri pi u otro sistema Linux, sería tedioso tener que estar escribiendo todos los comandos cada vez que se reinicie o apague nuestro dispositivo.
Por esta razón, hoy estaremos viendo como convertir nuestra instalación de Cloudflared Argo Tunnel en un servicio del sistema y pasarle los parametros que nos sean necesarios en el arranque.
Para instalar el servicio de CloudFlared existen dos métodos que podemos utilizar, el automático y el método manual.
En mi caso yo siempre me decanto por el método manual ya que nos pérmite un grado de personalización que muchas veces vamos a necesitar.
Sin más que decir comenzamos.
Primeramente crearemos un usuario que sería el encargado de ejecutar nuestros tuneles en cada arranque.
sudo useradd -s /usr/sbin/nologin -r -M cloudflared
Ahora creamos un archivo de configuración en el que pasaremos los valores de los parámetros que se cargaran al iniciar el servicio.
sudo nano /etc/default/cloudflared
Aunque como nombre del archivo de configuración yo elegi cloudflared por obvias razones, tu puedes elegir el nombre que sea de tu agrado.
# Commandline args for cloudflared, using Cloudflare DNS
CLOUDFLARED_OPTS=--hostname midominio.com --url localhost:80
Como podemos ver aqui el parámetro es CLOUDFLARED_OPTS y podría ser cualquier otro nombre que desees en el lo que hacemos es cargar cloudflared con el tunel midominio.com y haciendo el tunel hacia el servidor local en el puerto 80, podría ser cualquier otro servicio que tengas instalado.
Ahora le damos permiso a nuestro usuario para el archivo de configuración que hemos creado.
sudo chown cloudflared:cloudflared /etc/default/cloudflared
sudo chown cloudflared:cloudflared /usr/local/bin/cloudflared
Ahora vamos a crear el servicio en la carpeta de servicios /etc/systemd/system/cloudflared.service
sudo nano /etc/systemd/system/cloudflared.service
Puedes copiar y pegar en el archivo que estas creando este código a continuación.
[Unit]
Description=cloudflared mi sitio web local en internet
After=syslog.target network-online.target
[Service]
Type=simple
User=cloudflared
EnvironmentFile=/etc/default/cloudflared
ExecStart=/usr/local/bin/cloudflared $CLOUDFLARED_OPTS
Restart=on-failure
RestartSec=10
KillMode=process
[Install]
WantedBy=multi-user.target
Ahora procedemos a habilitar, iniciar y mostrar el status de nuestro servicio.
sudo systemctl enable cloudflared
sudo systemctl start cloudflared
sudo systemctl status cloudflared
Y listo, ya tenemos nuestro servicio corriendo de manera automática cada ves que se arranque el sistema operativo.