Generador y validador de configuración WireGuard
WebTodo se ejecuta en tu navegador: no se sube nada
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
- Elige Generar o Validar
- Generar: pega una clave privada (o marca la casilla de aleatoria) y rellena la clave del servidor, el endpoint y las opciones
- Copia la clave pública, o copia el bloque de configuración entero
- 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
Calculadora CIDR
WebConvierte 192.168.1.0/24 en la dirección de red, la de difusión, la máscara, la máscara comodín y el rango de hosts utilizables. En tu navegador.
Validador de config
WebComprueba package.json, .env, robots.txt, sitemap.xml o cabeceras HTTP. Hallazgos en tres niveles —errores, avisos y sugerencias—, cada uno explicado.
Comprobación de correo
WebComprueba el correo de un dominio: MX, las consultas DNS del SPF y su terminador, la política DMARC y la clave DKIM bajo un selector que indiques.
Analizador de URL
WebDescompone una URL en esquema, host, puerto, ruta, parámetros y ancla, con cada parámetro en crudo y decodificado. Todo en tu navegador.
Analizador de UA
WebAnaliza un User-Agent: navegador, versión, sistema, tipo de dispositivo y motor, con las reglas que coinciden. Solo coincidencia de patrones.
Códigos de estado HTTP
WebConsulta un código de estado HTTP: significado, clase 1xx–5xx, usos típicos y trampas habituales. También busca por palabra clave. Todo local.