¿Por qué debería crear un túnel seguro?
Con Tunnel, usted no envía tráfico a una IP externa, en cambio, un daemon ligero en su infraestructura (cloudflared) crea conexiones outbound-only a la red global de Cloudflare; por lo que puede cerrar puertos no utilizados con su firewall en su infraestructura. Para crear su túnel su infraestructura (servidor de dominio+nombre) debe estar dentro del cloudflare red.

¿Qué necesito para crear un túnel seguro?
Una cuenta en cloudflare con su nombre de dominio vinculado a su servidor con las configuraciones del servidor de nombres; la aplicación cloudflared que se puede descargar para cada sistema operativo aquí: https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/downloads/
¿Qué es la aplicación Zero Trust?
Zero Trust es un marco de seguridad que requiere que todos los usuarios, ya sea dentro o fuera de la red de la organización, sean autenticados, autorizados y validados continuamente para la configuración y postura de seguridad antes de ser concedidos o mantener el acceso a aplicaciones y datos. Cuando creas tu túnel para SSH y SFTP con cloudflare tendrá que asociarlo con una aplicación Zero Trust.

Inicie su túnel seguro
Una vez que se descarga cloudflared, puede crear el primer túnel simplemente vía terminal o por webui.
TERMINAL
Escriba este comando para autenticar:
$ cloudflared tunnel loginCrear un túnel y darle un nombre:
$ cloudflared tunnel create Desde la salida del comando, tome nota del UUID del túnel y la ruta hacia el archivo de credenciales de su túnel.
Confirme que el túnel ha sido creado con éxito corriendo:
$ cloudflared tunnel listLea los documentos oficiales para crear un túnel a través de la terminal: https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/install-and-setup/tunnel-guide/local/
WEBUI
- Inicie sesiónZero Trusty ir aAcceso■Tunels.
- SeleccioneCrear un túnel.
- Escribe un nombre para tu túnel. Sugerimos elegir un nombre que refleje el tipo de recursos que desea conectar a través de este túnel (por ejemplo,
enterprise-VPC-01). - SeleccioneGuardar túnel.
- Siguiente, tendrá que instalar
cloudflaredy corre. Para hacerlo, compruebe que el ambiente bajoElija un entornorefleja el sistema operativo en su máquina, luego copiar el comando en el cuadro de abajo y pegarlo en una ventana terminal. Corre el comando. - Una vez que el comando haya terminado de funcionar, su conector aparecerá en Zero Trust.
- SeleccioneSiguiente.
Lea los documentos oficiales para crear un túnel a través de webui: https://developers.cloudflare.com/cloudflare-one/connections/connect-networks/install-and-setup/tunnel-guide/remote/
Conéctese con SSH a través del Tunel Cloudflare
El protocolo Secure Shell (SSH) permite a los usuarios acceder de forma remota a dispositivos a través de la línea de comandos. Con Cloudflare Zero Trust, puede hacer que su servidor SSH esté disponible a través de Internet sin el riesgo de abrir puertos de entrada en el servidor.
Cloudflare Zero Trust ofrece dos soluciones para proporcionar acceso seguro a los servidores SSH:
- Subnet privado enrutándose con Cloudflare WARP a túnel
- Nombre de host público routing con
cloudflared access
El acceso a nubes es el que hemos utilizado aquí.
Recuerde que Cloudflared es un software- [Program/Software: the instructions that control what a computer does; computer programs] - continuamente actualizado y por lo tanto es necesario leer los documentos oficiales para estar seguro de que está utilizando los mejores procedimientos posibles para la versión utilizada.
Use SSH desde terminal o webui
Utilice su nuevo nombre de host público (por ejemplo ssh.example.com) para llegar a su aplicación SSH vía terminal:
$ ssh [username]@ssh.example.comTambién puede utilizar la interfaz web para acceder a la terminal ssh via web; para hacerlo se requieren pasos adicionales: simplemente debe habilitar la reproducción del navegador en su aplicación. Lea el documento oficial sobre estos argumentos aquí: https://developers.cloudflare.com/cloudflare-one/applications/non-http/#rendering-in-the-browser
Use SFTP con el túnel SSH Cloudflare
SFTP, o Protocolo de Transferencia de Archivos Seguros, es un protocolo de transferencia de archivos seguro que utiliza el cifrado de shell seguro para proporcionar un alto nivel de seguridad para enviar y recibir transferencias de archivos. Para utilizar SFTP en sus clientes se requiere un paso adicional para conectar al cliente al túnel; simplemente abra su terminal (del cliente que desea conectar) y escriba este comando:
$ cloudflared access tcp --hostname ssh.example.com --url localhost:2222La próxima vez que desee conectarse a través de SFTP (con cualquier software habilitado) inserte como hostname localhost:2222 y las credenciales de su nombre de usuario SFTP del servidor; cuando cierre su terminal, el extremo de conexión y no será posible conectar de nuevo hasta que abra el terminal y escriba de nuevo este comando.
Ajuste la configuración de seguridad
Cuando todos los procedimientos funcionan perfectamente, ahora puede cerrar los puertos utilizados por SSH y SFTP (generalmente puerto 22) a través del cortafuegos; de esta manera, sólo aquellos en posesión de la aplicación Cloudflared y/o los certificados necesarios podrán conectarse.
Lea siempre los documentos oficiales
Como escribí hace un tiempo, te aconsejo que siempre leas y aprendas del funcionario cloudflare documentos porque este software también podría tener cambios con el tiempo. Este documento está escrito sin haber recibido ningún apoyo oficial de cloudflare y es un ejemplo para aquellos que trabajan en nuestra organización.

