Servidor VPN propio: instalar WireGuard en un VPS con Monero
Publicado 15 Oct 2026
Monta tu propio servidor VPN con WireGuard en un VPS barato pagado en Monero: instalación paso a paso, costes reales y lo que una VPN personal no oculta.

Una VPN autoalojada es un servidor WireGuard en un pequeño VPS que alquilas: tu teléfono y tu portátil abren un túnel hasta él, y los sitios que visitas ven la dirección del servidor en lugar de la de tu conexión de casa. Montar tu propio servidor VPN lleva un puñado de comandos y cuesta, más o menos, entre 3 € y 10 $ al mes; si lo pagas en Monero a un proveedor que como mucho pide un correo, la factura no lleva ningún nombre. No te hace anónimo, y esa contrapartida es el punto de partida de esta guía.
Comprobado el 1 de octubre de 2026.
VPS vs VPN: qué oculta cada uno
Un VPS (servidor privado virtual) es una máquina virtual alquilada; por sí solo no oculta nada. Una VPN (red privada virtual) es un túnel cifrado entre tu dispositivo y un servidor: tu red ve paquetes cifrados hacia una sola dirección, y los sitios ven el servidor en lugar de verte a ti.
Instala software de VPN en un VPS y tendrás la tuya; suscríbete a Mullvad o IVPN y compartirás la suya. Quién ve qué:
| Quién ve qué | Sin VPN | Tu propia VPN en un VPS | VPN comercial compartida |
|---|---|---|---|
| Tu proveedor de internet o el wifi de la cafetería | Cada sitio que visitas | UDP cifrado hacia un solo servidor | Tráfico cifrado hacia el servidor de la VPN |
| Los sitios que visitas | La IP de tu casa | La IP de tu servidor, que solo usas tú | Una IP compartida por muchos clientes |
| Quien gestiona el servidor | No interviene ningún servidor | Tu proveedor de hosting puede ver el volumen y las IP que se conectan | La empresa de la VPN, según su política de registros |
Cuándo tiene sentido un servidor VPN propio y cuándo es mejor una VPN compartida
Antes de crear tu propia VPN, decide de quién te escondes. Una VPN casera gana cuando la amenaza es la red a la que estás conectado: el wifi del hotel, un proveedor de internet que registra tu navegación, un filtro en la oficina. Además te da una dirección de salida fija y ninguna empresa de VPN en la que tener que confiar.
Pierde cuando la amenaza está en el otro extremo. Una IP de salida que solo usas tú funciona como una huella: inicia sesión en una sola cuenta que lleve tu nombre y la dirección también quedará ligada a él. Tu proveedor de hosting sabe además que detrás de esa IP hay un único cliente y, si guarda registros de flujos, qué dirección se conecta a ella cada mañana: la de tu casa.
Una VPN compartida te esconde entre la multitud: cada dirección de salida apunta a la empresa de la VPN, no a una persona. Nuestra bahía de VPN y proxies recoge las que aceptan Monero. Para ser anónimo frente a los propios sitios, ninguna de las dos sustituye a Tor Browser.
Qué necesitas: un VPS KVM, una ubicación y un pago en Monero
KVM, no contenedores. Un VPS KVM tiene su propio kernel de Linux, que ya incluye WireGuard; un VPS de contenedores (OpenVZ, LXC) comparte el kernel del proveedor y puede que no te deje cargarlo.
Con uno pequeño basta. Un servidor VPN personal necesita poca CPU y poca memoria; fíjate más bien en el tráfico incluido. Un terabyte al mes equivale a unos 3 Mbit/s las 24 horas del día.
Una ubicación cerca de ti, porque la distancia añade latencia. La jurisdicción decide quién puede pedir registros al proveedor; nuestra guía sobre los VPS offshore lo explica.
Un registro que no deshaga lo que logra el pago. Monero mantiene tu nombre fuera de la factura, pero un número de teléfono o una verificación de identidad lo vuelven a meter. El procedimiento completo para hacer el pedido está en nuestra guía paso a paso sin KYC.
Opciones de VPS para WireGuard que aceptan Monero, por orden alfabético, según las páginas de cada proveedor:
| Proveedor | Plan más pequeño | Tráfico | El registro pide | Notas |
|---|---|---|---|---|
| 1984 Hosting | 8,72 € / mes (1 CPU, 1 GB de RAM) | 1 TB | Correo, teléfono opcional | Islandia; imagen de WireGuard lista para usar |
| Cockbox | 10 $ / mes (0,5 vCPU, 1 GB de RAM) | «Ilimitado» en Moldavia | Correo (sin verificar) y contraseña | Moldavia, Rumanía; Bitcoin o Monero |
| Kyun | Unos 3,10 € / mes (1 núcleo, 1 GiB, 10 GB, una IPv4) | No publicado | Contraseña y un desafío de prueba de trabajo | Solo Monero; EE. UU., Países Bajos, Rumanía |
| Servers Guru | 4,99 € / mes (1 vCPU, 2 GB de RAM) | 20 TB de salida, la entrada no se contabiliza | Correo | Países Bajos, Finlandia, Singapur, Canadá |
| SporeStack | 4 $ / mes (Slow Servers, 768 MiB, IPv4) | 0,375 TiB | Nada: recargas un token | Los Slow Servers están en Spokane (EE. UU.) y tardan hasta 48 horas; los servidores de DigitalOcean y Vultr se ponen en marcha en minutos, desde 7,50 $ por 30 días |
Mynymbox (desde 4 € al mes, solo correo) permite servicios de VPN en su política de uso aceptable, pero todos sus planes VPS aparecían agotados ese día. Más en la bahía de VPS.
Instalar WireGuard en el VPS
WireGuard forma parte del kernel de Linux desde la versión 5.6, publicada en marzo de 2020 (anuncio), así que en Debian 12 o 13, o en Ubuntu 24.04 y posteriores, no hay nada que compilar. Entra como root con tu clave SSH y elige una de las dos vías.
Opción A: WireGuard a secas con wg-quick
El servidor WireGuard completo, configurado a mano. Ejecuta ip route show default y anota la palabra que va después de dev (a menudo eth0 o ens3): úsala allí donde aparezca eth0 más abajo.
apt update && apt install -y wireguard iptables qrencode
cd /etc/wireguard
umask 077
wg genkey | tee server.key | wg pubkey > server.pub
wg genkey | tee phone.key | wg pubkey > phone.pub
Crea /etc/wireguard/wg0.conf:
[Interface]
Address = 10.66.66.1/24
ListenPort = 51820
PrivateKey = <contents of server.key>
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
[Peer]
PublicKey = <contents of phone.pub>
AllowedIPs = 10.66.66.2/32
Y el archivo del cliente, phone.conf:
[Interface]
PrivateKey = <contents of phone.key>
Address = 10.66.66.2/32
DNS = 9.9.9.9
[Peer]
PublicKey = <contents of server.pub>
Endpoint = <server IP>:51820
AllowedIPs = 0.0.0.0/0, ::/0
PersistentKeepalive = 25
AllowedIPs = 0.0.0.0/0, ::/0 manda todo por el túnel; como este servidor solo reenvía IPv4, el tráfico IPv6 falla en lugar de escaparse por fuera del túnel. Arranca el servidor y muestra la configuración del cliente como código QR para la app de WireGuard:
systemctl enable --now wg-quick@wg0
qrencode -t ansiutf8 < phone.conf
Cada dispositivo adicional es otro par de claves y otro bloque [Peer] (10.66.66.3/32, y así sucesivamente), y después systemctl restart wg-quick@wg0. En cuanto un dispositivo tenga su configuración, borra sus archivos .key y .conf del servidor.
Opción B: wg-easy en Docker, con interfaz web
wg-easy empaqueta WireGuard en un contenedor con una interfaz web para añadir clientes y mostrar códigos QR. Su página de GitHub indica la licencia AGPL-3.0-only, la versión 15.4.0 de agosto de 2026 y commits de finales de septiembre de 2026. Instala Docker y descarga el archivo compose:
curl -sSL https://get.docker.com | sh
mkdir -p /etc/docker/containers/wg-easy
cd /etc/docker/containers/wg-easy
curl -o docker-compose.yml https://raw.githubusercontent.com/wg-easy/wg-easy/master/docker-compose.yml
El archivo ejecuta ghcr.io/wg-easy/wg-easy:15, con WireGuard en UDP 51820 y la interfaz web en TCP 51821, abierta a internet. El proyecto sugiere un proxy inverso HTTPS para acceder a la interfaz desde fuera; para una sola persona es más sencillo mantenerla privada. Cambia su línea de puerto a "127.0.0.1:51821:51821/tcp" y luego descomenta la línea environment: y la línea INSECURE que hay debajo, con el valor true. El HTTP sin cifrar solo es aceptable aquí porque nada de fuera llega hasta él, que es justo la condición que fija la guía sin proxy inverso del proyecto. Ejecuta docker compose up -d, abre un túnel desde tu equipo y entra en http://localhost:51821:
ssh -L 51821:127.0.0.1:51821 root@<server IP>
Y no recurras a ufw para ocultar el puerto en lugar de esto: la documentación de Docker advierte de que los puertos publicados se saltan las reglas de ufw.
Reenvío de IP, cortafuegos y DNS
La opción A necesita el reenvío de paquetes (el archivo compose de wg-easy lo activa para su contenedor) y después un cortafuegos que solo admita SSH y WireGuard. Cambia el 22 si tu SSH escucha en otro puerto, y responde y cuando ufw enable avise sobre SSH:
echo "net.ipv4.ip_forward=1" > /etc/sysctl.d/99-wireguard.conf
sysctl --system
apt install -y ufw
ufw allow 22/tcp
ufw allow 51820/udp
ufw route allow in on wg0 out on eth0
ufw enable
La línea DNS = decide quién responde a tus consultas DNS. Con 9.9.9.9 (Quad9) las consultas viajan por el túnel, así que tu proveedor de internet deja de verlas, pero Quad9 sí las ve. Para no implicar a ningún tercero, ejecuta en el servidor un resolvedor como Unbound que escuche en 10.66.66.1, ábrelo al túnel con ufw allow in on wg0 to any port 53 y apunta DNS = hacia él.
Para probarlo, abre cualquier página del tipo «cuál es mi IP» con el túnel activado: debería mostrar la dirección del servidor.
En redes censuradas: AmneziaWG, Outline y VLESS
WireGuard no se disfraza: su documentación deja la ofuscación a una capa superior, y no tiene modo TCP (limitaciones conocidas). Una red que inspecciona los paquetes puede detectarlo y descartarlo. Tres proyectos de código abierto están pensados para ese caso, todos sobre el mismo tipo de VPS:
- AmneziaWG, un fork de WireGuard-Go creado por el proyecto Amnezia, envía paquetes basura antes del handshake, sustituye las cabeceras fijas de los mensajes de WireGuard por valores que tú eliges y rellena los paquetes para que sus tamaños dejen de coincidir. Con esas opciones desactivadas sigue siendo compatible con WireGuard (documentación). La app AmneziaVPN lo instala en tu servidor por SSH.
- Outline ejecuta un servidor Shadowsocks que se gestiona desde una app de escritorio. Lanzado en 2018 por Jigsaw, una incubadora dentro de Google, pasó en 2026 a la Outline Foundation, una fundación independiente (preguntas frecuentes).
- VLESS es el protocolo de transporte ligero del proyecto Xray (especificación), que suele funcionar en el puerto 443 sobre TLS o sobre REALITY de Xray, para que la conexión se parezca a un tráfico HTTPS corriente.
Estas herramientas existen porque algunos Estados restringen las VPN. A fecha de 1 de octubre de 2026, a modo de resumen y no de asesoramiento jurídico:
- China: un aviso de enero de 2017 del Ministerio de Industria y Tecnología de la Información prohíbe crear o alquilar canales VPN para operaciones transfronterizas sin autorización (texto oficial).
- Rusia: la Ley Federal n.º 281-FZ, de 31 de julio de 2025, en vigor desde el 1 de septiembre de 2025, multa a quien haga publicidad de herramientas para acceder a recursos bloqueados, como las VPN, y a quien busque y abra a sabiendas material incluido en la lista oficial de materiales extremistas, con o sin una de esas herramientas.
- Irán: en febrero de 2024 el Consejo Supremo del Ciberespacio anunció una resolución que prohíbe las VPN sin permiso legal; su secretario dijo después que iba dirigida a los organismos del Estado y no al público, lo que deja poco claro su alcance.
Las normas y su aplicación cambian. Consulta la ley vigente allí donde estés.
Evita que el servidor filtre datos
Solo claves para SSH. Pon
PasswordAuthentication noen/etc/ssh/sshd_config.d/10-keys.conf, ejecutasystemctl reload sshy comprueba en una segunda ventana que tu clave te sigue dejando entrar. Usa una clave creada solo para este servidor.Actualizaciones de seguridad automáticas.
apt install -y unattended-upgradesy despuésdpkg-reconfigure -plow unattended-upgradespara activarlas.Registros en memoria.
wg showguarda en la RAM la última dirección de cada peer, y SSH registra cada inicio de sesión con su IP de origen. Mantén también en la RAM el journal del sistema:mkdir -p /etc/systemd/journald.conf.d printf '[Journal]\nStorage=volatile\n' > /etc/systemd/journald.conf.d/volatile.conf systemctl restart systemd-journaldEl journal pasa entonces a vivir en
/run/log/journaly desaparece al reiniciar. Sirsyslogestá instalado, escribe sus propios archivos en/var/log.SSH a través del túnel. Con la opción A funcionando, ejecuta
ufw allow in on wg0 to any port 22 proto tcpyufw delete allow 22/tcp, y luego conéctate a10.66.66.1. Si el túnel llega a romperse, la consola web o serie del proveedor, si la ofrece, es tu forma de volver a entrar.Una identidad por servidor. No reutilices el correo, la clave SSH ni el nombre de usuario de tus otras cuentas.
Cuánto cuesta frente a Mullvad o IVPN
| Opción | Al mes | Dispositivos | Dirección de salida |
|---|---|---|---|
| Tu propio VPS (tabla de arriba) | Entre unos 3,10 € y 10 $ | Tantos como configures | Solo tuya |
| Mullvad | 5 €, tarifa plana sea cual sea la duración | 5 | Compartida |
| IVPN Standard | 6 $ (2 $ a la semana, 60 $ al año) | 5 | Compartida |
| cryptostorm | 6 $ | 1 | Compartida |
Los tres servicios aceptan Monero. Los servidores más baratos salen por menos, pero lo pagas en configuración, actualizaciones y una dirección de salida que siempre apunta a ti. También puedes combinar las dos cosas: tu propio servidor para el wifi del hotel y una VPN compartida para todo lo que no deba poder rastrearse hasta un único usuario.
Preguntas frecuentes
¿Es posible montar tu propio servidor VPN?
Sí. Cualquier VPS Linux con KVM y una dirección IPv4 pública puede ejecutar WireGuard, que forma parte del kernel desde Linux 5.6. La opción A de arriba es el método completo, y wg-easy añade una interfaz web. Una Raspberry Pi en casa también sirve, pero entonces la dirección de salida es la IP de tu casa.
¿Es más seguro un VPS que una VPN?
Son cosas distintas: un VPS es un servidor, una VPN es un túnel. Tener tu propia VPN en un VPS significa no tener que fiarte de ninguna empresa de VPN, pero eres el único usuario de tu dirección de salida y quien tiene que aplicarle los parches. Para pasar desapercibido, la mejor herramienta es una VPN compartida sin registros pagada en Monero.
¿Puedo usar mi VPS como VPN?
Normalmente sí: basta con un plan KVM con el reenvío de IP activado, siempre que las normas del proveedor lo permitan. La política de uso aceptable de Mynymbox permite servicios de VPN, la página de VPS con Monero de Servers Guru cita las VPN entre los usos previstos, Cockbox permite cualquier cosa que sea legal en Rumanía y 1984 Hosting ofrece una imagen de WireGuard lista para usar. Los servidores de SporeStack también deben cumplir las normas de DigitalOcean o de Vultr. Vigila el tráfico incluido.
¿Qué inconvenientes tiene usar WireGuard como VPN?
No intenta ofuscarse y no tiene modo TCP, así que una red que lo bloquee o que solo permita TCP lo detendrá. El servidor guarda en memoria la última dirección IP de cada peer. El protocolo no ofrece seguridad poscuántica por defecto, aunque una clave precompartida añade una capa más.
¿Es ilegal usar una VPN en Estados Unidos?
Ninguna ley federal lo prohíbe, y la Comisión Federal de Comercio publica consejos para elegir una app de VPN (febrero de 2018). Lo que hagas a través del túnel está sujeto a las mismas leyes que sin él, y las condiciones de un sitio web pueden seguir prohibiendo el acceso por VPN. Esto es un resumen, no asesoramiento jurídico.
En resumen
Alquila un VPS KVM pequeño con Monero, instala WireGuard con wg-quick o wg-easy, cierra todo salvo SSH y UDP 51820, y mantén los registros en la RAM y el SSH detrás del túnel. Con eso consigues privacidad frente a la red a la que te conectas. La privacidad entre la multitud es lo que vende una VPN compartida, y el anonimato es cosa de Tor.