guía para configurar wireguard

Publicado 13 de Abril de 2026 a las 16:31 por marco-ml

Guía Completa de WireGuard con Panel Web (wg-easy)

Introducción

WireGuard es una VPN moderna, rápida y segura que permite crear túneles cifrados entre dispositivos. En esta guía aprenderás a configurarlo en un VPS (como Contabo) usando wg-easy, una solución que añade un panel web para gestionar usuarios fácilmente.

Requisitos

  • Un VPS (ej. Contabo VPS 10)
  • Acceso SSH como root
  • Sistema Ubuntu o Debian
  • IP pública del servidor

Instalación de Docker


# Verificar si Docker está instalado
command -v docker >/dev/null 2>&1 && echo "Docker instalado" || echo "Docker no instalado"

# Instalar Docker si no existe
apt update && apt install -y docker.io && systemctl enable --now docker

Configuración de Firewall


# Instalar y habilitar UFW
apt install -y ufw

# Abrir puertos necesarios
ufw allow 51820/udp
ufw allow 51821/tcp

# Activar firewall
ufw --force enable

Despliegue de WireGuard con Panel Web


# Crear directorio de trabajo
mkdir -p /opt/wg-easy && cd /opt/wg-easy

# Ejecutar contenedor
docker run -d \
--name=wg-easy \
--restart unless-stopped \
-e WG_HOST="TU_IP_PUBLICA" \
-e PASSWORD="TU_PASSWORD_FUERTE" \
-v /opt/wg-easy:/etc/wireguard \
-p 51820:51820/udp \
-p 51821:51821/tcp \
--cap-add=NET_ADMIN \
--cap-add=SYS_MODULE \
--sysctl="net.ipv4.conf.all.src_valid_mark=1" \
--sysctl="net.ipv4.ip_forward=1" \
weejewel/wg-easy

Acceso al Panel Web

Una vez iniciado el contenedor, accede al panel desde tu navegador:

http://TU_IP:51821
  • Usuario: admin
  • Contraseña: la definida en PASSWORD

Creación de Clientes

Desde el panel web puedes:

  • Crear nuevos clientes
  • Descargar archivos .conf
  • Escanear códigos QR
  • Eliminar accesos

Conexión desde Dispositivos


# Pasos generales:
1. Instalar la app WireGuard en tu dispositivo
2. Importar archivo .conf o escanear QR
3. Activar la conexión

Verificación de Funcionamiento


# Ver contenedor activo
docker ps

# Ver logs
docker logs wg-easy --tail 50

Para verificar conexión, revisa tu IP pública desde el dispositivo conectado.

Configuraciones Importantes

  • Usar un cliente por dispositivo
  • No compartir configuraciones
  • Respaldar /opt/wg-easy regularmente

Manejo de Errores


# Ver logs detallados
docker logs wg-easy --tail 200

# Verificar puertos abiertos
ss -lntp | grep 51821

Solución de Problemas

Problemas Comunes:
  • Puerto 51820 bloqueado (VPN no conecta)
  • Puerto 51821 bloqueado (panel no abre)
  • WG_HOST incorrecto
  • Firewall mal configurado

Seguridad

  • Usar contraseñas fuertes
  • No exponer el panel públicamente sin protección adicional
  • Considerar uso de HTTPS con proxy inverso

Ejemplo Completo


# Instalación completa en una sola secuencia

apt update && apt install -y docker.io ufw && \
systemctl enable --now docker && \
ufw allow 51820/udp && ufw allow 51821/tcp && ufw --force enable && \
mkdir -p /opt/wg-easy && cd /opt/wg-easy && \
docker run -d \
--name=wg-easy \
--restart unless-stopped \
-e WG_HOST="TU_IP_PUBLICA" \
-e PASSWORD="TU_PASSWORD_FUERTE" \
-v /opt/wg-easy:/etc/wireguard \
-p 51820:51820/udp \
-p 51821:51821/tcp \
--cap-add=NET_ADMIN \
--cap-add=SYS_MODULE \
--sysctl="net.ipv4.conf.all.src_valid_mark=1" \
--sysctl="net.ipv4.ip_forward=1" \
weejewel/wg-easy

Volver al listado