Este artículo contiene enlaces de afiliado. He contratado personalmente el VPS de RackNerd utilizado aquí y he comprobado la configuración y conexión de WireGuard.
Cómo monté mi propia VPN WireGuard en un VPS KVM de RackNerd (probado en macOS)
Alquilé un VPS pequeño en el extranjero y lo convertí en una VPN WireGuard personal. El procedimiento real fue: RackNerd 1 GB KVM VPS, Ubuntu 24.04, autenticación SSH por clave, bloqueo del acceso root y de las contraseñas SSH, UFW, WireGuard y un cliente macOS. Finalmente comprobé que la IPv4 pública cambiaba a la del VPS y que el handshake de WireGuard funcionaba.
Importante: esto no te hace “completamente anónimo”. Crea un túnel cifrado entre tu dispositivo y tu VPS y cambia el punto de salida IPv4. El proveedor del VPS puede conservar datos de cuenta y registros de conexión.
El VPS utilizado
A fecha de 14 de septiembre de 2026, contraté un “1 GB KVM VPS Special” mostrado a 21,99 USD al año. El importe final en tu moneda depende del cambio y de las comisiones de la tarjeta. Precio, stock y ubicaciones pueden cambiar.
| CPU | 1 vCPU |
|---|---|
| RAM | 1 GB |
| Almacenamiento | 20 GB SSD |
| Transferencia mensual | 3000 GB |
| Red | Puerto público de 1 Gbps |
| IPv4 | 1 IPv4 dedicada |
| Virtualización | KVM |
| Acceso | root completo |
Ver RackNerd
Este es un enlace de afiliado. Si compras a través de él, este sitio puede recibir una comisión.
Por qué crear mi propia VPN
Las VPN comerciales son más cómodas si quieres cambiar de país con un clic. Una VPN autogestionada te da un servidor y una IP de salida bajo tu control, pero también te obliga a mantener el sistema, firewall, claves y copias de seguridad. Mi objetivo era aprender el funcionamiento real y disponer de una salida dedicada.
1. Arrancar el VPS y revisar el panel
Tras el pedido, RackNerd envió la IP, los datos de root y el acceso a NerdVM/SolusVM. El panel mostraba Ubuntu 24.04 de 64 bits, 20 GB de disco, 1 GB de RAM y el servidor online.
2. Conectar desde macOS y actualizar Ubuntu
ssh root@YOUR_VPS_IP
whoami
hostname
cat /etc/os-release
ip addr
free -h
df -h
apt update
apt upgrade -y
Durante la actualización mantuve English (US) y, cuando OpenSSH preguntó por un sshd_config modificado, conservé la versión local para endurecer SSH después de forma controlada.
reboot
# volver a conectar
uname -r
systemctl --failed
apt list --upgradable
3. Crear un usuario administrador y usar claves SSH
adduser vpnadmin
usermod -aG sudo vpnadmin
id vpnadmin
En el Mac:
ssh-keygen -t ed25519 -a 100 \
-f ~/.ssh/racknerd_wireguard \
-C "racknerd-wireguard"
scp ~/.ssh/racknerd_wireguard.pub \
root@YOUR_VPS_IP:/tmp/racknerd_wireguard.pub
En el VPS:
install -d -m 700 -o vpnadmin -g vpnadmin /home/vpnadmin/.ssh
cat /tmp/racknerd_wireguard.pub > /home/vpnadmin/.ssh/authorized_keys
chown vpnadmin:vpnadmin /home/vpnadmin/.ssh/authorized_keys
chmod 600 /home/vpnadmin/.ssh/authorized_keys
rm /tmp/racknerd_wireguard.pub
ssh -i ~/.ssh/racknerd_wireguard vpnadmin@YOUR_VPS_IP
whoami
sudo whoami
Antes de tocar la configuración SSH confirmé que podía entrar con la clave y obtener privilegios con sudo.
4. Desactivar root por SSH y las contraseñas
sudo nano /etc/ssh/sshd_config.d/00-racknerd-hardening.conf
PermitRootLogin no
PasswordAuthentication no
KbdInteractiveAuthentication no
PubkeyAuthentication yes
sudo sshd -t
sudo systemctl reload ssh
sudo sshd -T | grep -E \
'permitrootlogin|passwordauthentication|pubkeyauthentication|kbdinteractiveauthentication'
El resultado efectivo fue: root desactivado, clave pública activada y autenticación por contraseña/teclado desactivada. Conviene probar una segunda sesión SSH por clave antes de cerrar la sesión actual.
5. Activar UFW
sudo ufw allow 22/tcp
sudo ufw allow 51820/udp
sudo ufw enable
sudo ufw status verbose
6. Instalar WireGuard y activar el reenvío IPv4
sudo apt install -y wireguard
sudo nano /etc/sysctl.d/99-wireguard-forward.conf
net.ipv4.ip_forward=1
sudo sysctl --system
sysctl net.ipv4.ip_forward
sudo ufw route allow in on wg0 out on eth0
7. Crear las claves del servidor y wg0
sudo install -d -m 700 /etc/wireguard
sudo sh -c 'umask 077; wg genkey > /etc/wireguard/server_private.key'
sudo sh -c 'wg pubkey < /etc/wireguard/server_private.key > /etc/wireguard/server_public.key'
sudo bash -c 'umask 077
{
echo "[Interface]"
echo "Address = 10.66.66.1/24"
echo "ListenPort = 51820"
printf "PrivateKey = "
cat /etc/wireguard/server_private.key
echo "PostUp = iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE"
echo "PostDown = iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE"
} > /etc/wireguard/wg0.conf'
sudo chmod 600 /etc/wireguard/wg0.conf
sudo systemctl enable --now wg-quick@wg0
8. Crear el cliente macOS
mkdir -p ~/.wireguard
chmod 700 ~/.wireguard
umask 077
wg genkey | tee ~/.wireguard/mac_private.key | \
wg pubkey > ~/.wireguard/mac_public.key
Peer del Mac en el servidor:
[Peer]
PublicKey = MAC_PUBLIC_KEY
AllowedIPs = 10.66.66.2/32
sudo wg-quick strip wg0 | sudo wg syncconf wg0 /dev/stdin
Configuración del Mac:
[Interface]
PrivateKey = MAC_PRIVATE_KEY
Address = 10.66.66.2/32
DNS = 1.1.1.1
[Peer]
PublicKey = SERVER_PUBLIC_KEY
Endpoint = YOUR_VPS_IP:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 25
9. Prueba real de conexión
sudo wg-quick up ~/.wireguard/racknerd-us.conf
ping -c 4 10.66.66.1
curl -4 ifconfig.me
Obtuve 4/4 respuestas, 0% de pérdida y un ping medio cercano a 300 ms hacia el VPS de New York. Al desactivar WireGuard aparecía la IPv4 normal de mi conexión japonesa; al activarlo, la IPv4 pública pasaba a ser la del VPS. En el servidor, sudo wg show mostraba un handshake reciente y tráfico transferido.
10. IPv6 requiere tratamiento adicional
Con AllowedIPs = 0.0.0.0/0, el túnel anterior cubre IPv4. curl -6 ifconfig.me seguía devolviendo una dirección IPv6.
Además, durante esta prueba había otra VPN WireGuard japonesa activa en la app de macOS, por lo que todavía debo separar si IPv6 salía por la conexión original o por ese otro túnel. Por eso considero verificado aquí el túnel IPv4 mediante el VPS extranjero, no una VPN completamente libre de fugas. Para un túnel total hay que tratar IPv6 y comprobar también el camino DNS.
Ventajas y puntos a tener en cuenta
| Ventajas | Consideraciones |
|---|---|
| 1 GB / 1 vCPU fue suficiente para WireGuard | El VPS es no gestionado |
| IPv4 dedicada como salida propia | No sustituye una app VPN multinacional |
| Control total de SSH, firewall y WireGuard | Claves, copias y actualizaciones son responsabilidad propia |
| La prueba comenzó a 21,99 USD/año | La latencia depende de la ubicación y rutas |
| Cambio de IPv4 y handshake verificados | IPv6 y DNS necesitan verificación independiente |
Para quién puede ser útil
- Quien quiera aprender Linux, SSH y WireGuard
- Quien necesite una salida IPv4 extranjera dedicada
- Quien acepte administrar su propia seguridad
- Quien quiera empezar con un VPS pequeño para experimentar
Revisar las condiciones
Los VPS de RackNerd son no gestionados por defecto. El usuario es responsable de SO, firewall, aplicaciones, datos y copias. Actividades ilegales, spam, fuerza bruta y DDoS saliente están prohibidos.
Conclusión
Conseguí convertir el VPS KVM de 1 GB en una VPN WireGuard y verificar macOS → VPS → Internet sobre IPv4. Para una VPN de túnel total aún hay que resolver y comprobar IPv6 y DNS.
RackNerd utilizado en esta prueba
Consulta precio, disponibilidad y ubicaciones actuales en la web oficial. El siguiente enlace es de afiliado.