Instalar OpenVPN fácil y rápido + Cloudflare Tunnel (sin abrir puertos)
Configurar una red VPN puede parecer complicado, pero gracias a la comunidad de software libre existen soluciones que nos hacen la vida más fácil.
Hoy aprenderás a instalar OpenVPN en tu servidor de forma rápida, segura y automatizada, usando un script creado por Angristan.
Si estás montando tu servidor VPN en casa (por ejemplo, en una Raspberry Pi o un PC con Ubuntu), lo normal sería tener que abrir el puerto 1194 en tu router.
Pero con Cloudflare Tunnel no necesitas abrir nada.
Cloudflare actúa como un túnel inverso cifrado entre tu servidor y el mundo exterior, evitando la exposición directa de tu IP doméstica.
Contents
Instalar y configurar Cloudflared
wget https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb
sudo dpkg -i cloudflared-linux-amd64.deb
Si usas ARM (como en Raspberry Pi), usa el
.deb
para ARM64 desde el mismo repo de GitHub.
Iniciar sesión con tu cuenta de Cloudflare
cloudflared tunnel login
Esto abrirá un enlace en tu navegador. Inicia sesión y autoriza el dominio que usarás.
Crear un túnel
cloudflared tunnel create openvpn-tunnel
Esto generará un ID único para tu túnel y guardará las credenciales en ~/.cloudflared
.
Crear una configuración para enrutar tráfico
Edita o crea un archivo config.yml
en ~/.cloudflared/
:
tunnel: openvpn-tunnel
credentials-file: /home/tu_usuario/.cloudflared/XXXXXX.json
ingress:
- hostname: vpn.tudominio.com
service: tcp://localhost:1194
- service: http_status:404
Este archivo le dice al túnel: “cualquier conexión a vpn.tudominio.com → redirígela al puerto 1194 local”.
Crear un registro CNAME en tu dominio
En el panel de Cloudflare:
- Ve a la zona DNS
- Crea un CNAME:
vpn.tudominio.com → UUID.tunnel.cloudflare.com
(Ese UUID te lo da el comando del paso 3)
Levantar el túnel
cloudflared tunnel run openvpn-tunnel
¡Listo! Tu puerto 1194 ahora es accesible mediante el dominio vpn.tudominio.com
sin necesidad de tocar tu router.
Y además, todo pasa por la red segura de Cloudflare.
Instalar y configurar OpenVPN
Actualizar el sistema
Conéctate a tu servidor por SSH y actualiza los paquetes:
sudo apt update && sudo apt upgrade -y
Descargar el script
Clona el repositorio o simplemente descarga el script desde GitHub:
curl -O https://raw.githubusercontent.com/angristan/openvpn-install/master/openvpn-install.sh
chmod +x openvpn-install.sh
Ejecutar el script
Ahora inicia la instalación con:
sudo ./openvpn-install.sh
El script es interactivo y muy fácil de seguir. Te preguntará:
- ¿Qué dirección IP usar?: Aqui pondremos el dominio que creamos en cloudflare
- ¿Qué puerto quieres usar?: 1194
- ¿Qué protocolo usar?: tcp
- ¿Quieres usar DNS de Cloudflare, Google, etc.?: Escogemos el que querramos, recomiendo el de cloudflare
- Nombre del cliente inicial: Cualquier usuario que quieras
Generar un perfil .ovpn
Cuando termine, tendrás un archivo .ovpn
con el nombre del cliente que ingresaste.
Por ejemplo: admin.ovpn
.
Puedes copiarlo a tu computadora o teléfono para usarlo con cualquier cliente OpenVPN.
Usar el archivo .ovpn
En Windows o macOS:
- Descarga OpenVPN GUI
- Importa el archivo
.ovpn
- Conéctate
En Android:
- Usa la app OpenVPN for Android
- Importa el perfil desde tus archivos
En Linux:
- Conecta con:
sudo openvpn --config admin.ovpn
Gestión del servidor VPN
Si quieres agregar más usuarios o revocar accesos, solo vuelve a ejecutar el script:
sudo ./openvpn-install.sh
Verás un menú con opciones para:
- Agregar nuevos clientes
- Revocar clientes
- Desinstalar el servidor
Agradecimientos
Este tutorial se basa completamente en el excelente script de Angristan.
No es de mi autoría, simplemente documenté el proceso de uso paso a paso para facilitar la vida a quienes quieren montar una VPN rápidamente.