Por que OpenVPN, y cuando elegirlo
OpenVPN es el veterano de las VPN autoalojadas: tiene mas de veinte anos, ha sido auditado hasta el cansancio y es compatible con todas las apps de VPN y routers del planeta. No es la opcion mas rapida - WireGuard le gana en velocidad y bateria - pero tiene un truco que a WireGuard le falta: puede funcionar sobre TCP en el puerto 443, el mismo puerto que el HTTPS normal. Eso le permite colarse por los firewalls restrictivos de hoteles, oficinas y aeropuertos que bloquean todo excepto el trafico web.
Donde OpenVPN no es la herramienta adecuada es en la censura pesada basada en DPI. Sistemas como el TSPU de Rusia pueden identificar y bloquear el OpenVPN simple igual que bloquean el WireGuard simple. Si tu objetivo es evadir ese tipo de bloqueo, usa mejor nuestra guia de VLESS + Reality. Elige OpenVPN cuando quieras una VPN personal solida como una roca, universalmente compatible, y con la libertad de esconderte en el puerto 443.
- Un VPS basado en KVM barato con Ubuntu 22.04 o 24.04 (el instalador es compatible con Ubuntu 18.04 y versiones posteriores).
- Acceso SSH como root - tu proveedor te lo envia por correo despues de que pagas.
- Unos 10 minutos. Un script bien mantenido hace las partes dificiles (certificados, firewall, enrutamiento) por ti.
root. Prefieres el protocolo moderno mas rapido? Mira nuestra guia WireGuard.Paso 1: Conectar y actualizar el servidor
Inicia sesion por SSH (reemplaza con la IP de tu servidor) e instala las ultimas actualizaciones:
ssh root@YOUR_SERVER_IP
apt update && apt upgrade -y
Paso 2: Descargar el instalador
Vamos a usar el conocido script de codigo abierto angristan/openvpn-install. Instala OpenVPN, genera todos los certificados, configura el firewall y el enrutamiento, y gestiona los archivos de cliente - las partes que hacen dolorosa una configuracion manual de OpenVPN. Descargalo y hazlo ejecutable:
curl -O https://raw.githubusercontent.com/angristan/openvpn-install/master/openvpn-install.sh
chmod +x openvpn-install.sh
Paso 3: Ejecutarlo y responder las preguntas
Inicia el instalador:
./openvpn-install.sh
Hace una breve lista de preguntas. Para la mayoria de la gente los valores por defecto son correctos - esto es lo que hay que elegir:
- IP publica: detecta la IP de tu servidor automaticamente. Aceptala salvo que el servidor este detras de NAT.
- Protocolo:
UDPes el valor por defecto y es mas rapido - mantenlo para el uso diario. EligeTCPsolo si necesitas especificamente esconderte en el puerto 443 (mira el consejo de abajo). - Puerto: manten el valor por defecto
1194para UDP. Si elegiste TCP para atravesar un firewall estricto, pon el puerto en443. - DNS: elige un resolvedor publico como Cloudflare o Quad9 para que tus consultas no se filtren a tu proveedor local.
- Cifrado y certificado: simplemente acepta los valores por defecto - el script usa configuraciones modernas y seguras (AES-128-GCM, ECDSA).
- Nombre del cliente: escribe un nombre corto para tu primer dispositivo, por ejemplo
phone. - Proteccion con contrasena: el script pregunta si el cliente debe ir sin contrasena o protegido con contrasena. Anadir una contrasena hace que un archivo
.ovpnrobado sea inutil sin ella - vale la pena para un telefono o portatil que podria perderse.
El script se ejecuta durante un minuto y termina creando un archivo de configuracion de cliente que acaba en .ovpn en la carpeta /root.
TCP y el puerto 443 en estas preguntas - decidelo ahora, porque para cambiar el protocolo o el puerto mas adelante tienes que eliminar OpenVPN y reinstalarlo. En el 443 tu VPN usa el mismo puerto que HTTPS, asi que pasa por los firewalls de hoteles, cafeterias y aeropuertos que filtran solo por numero de puerto. Sin embargo, no es invisible: un DPI inteligente todavia puede detectar que es una VPN, asi que esto no es una forma de evadir la censura (para eso usa VLESS + Reality, enlazado arriba). Y TCP es notablemente mas lento - envolver tu trafico TCP dentro de un tunel TCP puede colapsar ante la perdida de paquetes (el efecto "TCP meltdown") - asi que usalo solo cuando una red bloquee UDP.Paso 4: Llevar el archivo .ovpn a tu dispositivo
Todo lo que un cliente necesita esta dentro de ese unico archivo .ovpn - claves, certificados y ajustes. Copialo del servidor a tu ordenador con scp (ejecuta esto en tu ordenador, reemplazando el nombre y la IP):
scp root@YOUR_SERVER_IP:/root/phone.ovpn .
Para llevarlo a un telefono, usa lo que tengas a mano: enviate el .ovpn a ti mismo en los "Mensajes guardados" de un mensajero, ponlo en tu unidad en la nube y borralo despues, o descargalo del servidor con una app SFTP grafica como Cyberduck o FileZilla. Trata el archivo como una contrasena - cualquiera que lo tenga puede conectarse como tu, asi que borra las copias sueltas una vez que tu dispositivo este configurado.
Paso 5: Instalar una app de cliente y conectar
La app oficial OpenVPN Connect funciona en todas las plataformas; en el escritorio tambien puedes usar alternativas mas ligeras. Elige la tuya, importa el archivo .ovpn y conecta.
Android: instala OpenVPN Connect desde Google Play. Abrela, elige Import Profile -> File, selecciona tu archivo .ovpn y luego toca el interruptor para conectar.
iPhone y iPad: instala OpenVPN Connect desde la App Store. Comparte el archivo .ovpn con la app (o usa Import -> File), luego activala y permite el perfil de VPN.
Windows: instala OpenVPN Connect, haz clic en Import Profile -> Upload File, selecciona tu .ovpn y luego pulsa conectar.
macOS: instala OpenVPN Connect o el gratuito Tunnelblick. Importa el archivo .ovpn y conecta.
Escritorio Linux: instala la CLI con apt install openvpn y conecta con openvpn --config phone.ovpn, o importa el archivo en NetworkManager para un interruptor de conexion con un clic.
Paso 6: Anadir o quitar dispositivos mas adelante
Dale a cada dispositivo su propio perfil para poder revocar uno sin molestar a los demas. Para anadir un portatil o revocar un telefono perdido, solo vuelve a ejecutar el instalador - detecta el servidor existente y ofrece un menu:
./openvpn-install.sh
Elige Add a new user para crear otro .ovpn, o Revoke existing user para cortar un dispositivo definitivamente.
Paso 7: Verificar que funciona
Con el cliente conectado, confirma dos cosas en nuestra propia pagina de Herramientas de red. Primero, internet deberia mostrar ahora la IP de tu servidor - se muestra en la parte superior de la pagina. Segundo, abre la pestana DNS Leak Test: los resolvedores listados deberian ser el DNS que elegiste en el Paso 3, nunca tu proveedor de internet de casa. Si ambos se ven bien, tu tunel OpenVPN esta activo.
Errores comunes
- Firewall del proveedor de nube. Los grandes hosts - AWS, Oracle Cloud, Azure, Google Cloud - tienen sus propios Security Groups en el panel web, separados del firewall de Ubuntu, y tu puerto suele estar cerrado ahi por defecto. Abre tu puerto elegido (
1194/udp, o443/tcp) tambien en el panel del proveedor, no solo enufw. - Expectativas equivocadas del protocolo. UDP es mas rapido pero algunas redes restrictivas lo bloquean - si una Wi-Fi publica se niega a conectar, ahi es cuando la version TCP-443 justifica su valor.
- Compartir un solo perfil. Cargar el mismo
.ovpnen dos dispositivos a la vez causa cortes. Genera un perfil separado por dispositivo. - OpenVPN para censura. El OpenVPN simple, incluso en 443, es detectable por DPI avanzado. En redes muy censuradas usa mejor VLESS + Reality.
Los limites honestos
Un servidor OpenVPN autoalojado es privado frente a tu red local y tu proveedor de internet, pero siguen aplicando los limites habituales del autoalojamiento: tu proveedor de VPS puede ver las direcciones IP que se conectan al servidor y, en una maquina virtual, puede hacer una instantanea de su RAM. Para reducir lo que tu propio servidor guarda en disco, continua con nuestra guia sobre como hacer que tu VPS no guarde logs. Y como siempre, una VPN cambia el lugar desde donde parece venir tu trafico - no te pone por encima de la ley del lugar donde vives.
/etc/openvpn/ en un lugar seguro, manten el sistema actualizado con apt upgrade y revoca cualquier perfil que ya no uses. Si alguna vez quieres eliminarlo todo, vuelve a ejecutar el instalador y elige Remove OpenVPN.