piapia123
es

Generador y validador de configuración WireGuard

Web

Todo se ejecuta en tu navegador: no se sube nada

Entrada
Arrastra un archivo aquí para cargarlo
Resultado

Dos modos. Generar: pega una clave privada (o créala con `crypto.getRandomValues`) y la herramienta deriva la clave pública correspondiente y monta una configuración de cliente lista para usar: rellena la clave del servidor, el endpoint, el DNS y el keepalive. Validar: pega un `.conf` entero y obtén un veredicto línea a línea: si cada clave mide 32 bytes, si el puerto está entre 1 y 65535, si las `AllowedIPs` son CIDR válidos, si hay claves de peer repetidas y el clásico error de intercambiar `Address` y `AllowedIPs`. La clave pública se deriva con X25519 (RFC 7748) implementado en JavaScript puro, no con `crypto.subtle`, que solo existe en contexto seguro (https); esta es una página estática y puede abrirse por http. La clave privada se muestra como `<REDACTED>` y no se puede copiar. Todo ocurre en tu navegador: no se sube nada.

Funciones

  • Dos modos: montar una config o validar un .conf existente
  • Deriva la clave pública a partir de la privada (X25519, implementado localmente)
  • Config completa de cliente [Interface] / [Peer] con un clic
  • Clave privada aleatoria opcional con crypto.getRandomValues, nunca Math.random
  • La clave privada se muestra censurada en los resultados para evitar fugas por captura
  • Validación línea a línea: claves de 32 bytes, rango de puerto, CIDR válidos en AllowedIPs
  • Detecta claves de peer duplicadas y Address / AllowedIPs intercambiados por error
  • Todo ocurre en tu navegador; no se sube nada

Cómo se usa

  1. Elige Generar o Validar
  2. Generar: pega una clave privada (o marca la casilla de aleatoria) y rellena la clave del servidor, el endpoint y las opciones
  3. Copia la clave pública, o copia el bloque de configuración entero
  4. Validar: pega un .conf entero y lee los veredictos línea a línea

Preguntas frecuentes

¿Se sube mi clave privada a algún servidor?
No. Toda la derivación y la validación ocurren en JavaScript dentro de tu navegador. La página no hace ninguna petición de red, así que ni la clave privada ni la configuración salen de tu dispositivo.
¿Por qué no veo mi clave privada en los resultados?
Esa fila muestra siempre <REDACTED> y no se puede copiar, para que una captura de pantalla o un copiado accidental no la filtren. Sigue apareciendo dentro de la config lista para usar de abajo (PrivateKey = …): trátala como un secreto y no la reenvíes.
¿Por qué se calcula la clave aquí y no con la API criptográfica del navegador?
Porque crypto.subtle solo existe en un contexto seguro (https o localhost). Esta es una página estática que puede abrirse por http o alojarse en una IP interna, donde crypto.subtle no está disponible. Por eso X25519 (RFC 7748) está implementado en JavaScript puro y da el mismo resultado en cualquier entorno.
¿Qué comprueba de verdad el modo Validar?
Que cada clave sea Base64 de 32 bytes, que el puerto del endpoint esté entre 1 y 65535, que AllowedIPs y Address sean CIDR válidos, que no haya claves públicas de peer repetidas y el error habitual de intercambiar Address y AllowedIPs: AllowedIPs solo va en [Peer] y Address solo en [Interface]. Cada línea recibe su propio veredicto.

Herramientas relacionadas