Ground-Zerro / Phobos Public
Code Issues Pull requests Actions Releases View on GitHub ↗
13.5 KB json
{
  "pages": {
    "me": "Cuenta",
    "clients": "Clientes",
    "admin": {
      "panel": "Panel de Admin.",
      "general": "General",
      "config": "Configuración",
      "interface": "Interfaz",
      "hooks": "Hooks",
      "warp": "WARP"
    }
  },
  "user": {
    "email": "Correo electrónico"
  },
  "me": {
    "currentPassword": "Contraseña actual",
    "enable2fa": "Habilitar autenticación en dos pasos",
    "enable2faDesc": "Escanea el código QR con tu aplicación de autenticación o introduce la clave manualmente.",
    "2faKey": "Clave TOTP",
    "2faCodeDesc": "Introduce el código de tu aplicación de autenticación.",
    "disable2fa": "Desactivar autenticación en dos pasos",
    "disable2faDesc": "Introduce tu contraseña para desactivar la autenticación en dos pasos."
  },
  "general": {
    "name": "Nombre",
    "username": "Usuario",
    "password": "Contraseña",
    "newPassword": "Nueva contraseña",
    "updatePassword": "Actualizar contraseña",
    "mtu": "MTU",
    "allowedIps": "IPs permitidas",
    "dns": "DNS",
    "persistentKeepalive": "Keepalive persistente",
    "logout": "Cerrar sesión",
    "continue": "Continuar",
    "host": "Host",
    "port": "Puerto",
    "yes": "Sí",
    "no": "No",
    "confirmPassword": "Confirmar contraseña",
    "loading": "Cargando...",
    "2fa": "Autenticación en dos pasos",
    "2faCode": "Código TOTP"
  },
  "setup": {
    "welcome": "Bienvenido a tu primera configuración de PhobosWG",
    "welcomeDesc": "Has encontrado la forma más sencilla de implementar un WireGuard resiliente",
    "existingSetup": "¿Tienes una configuración existente?",
    "createAdminDesc": "Por favor, introduce un nombre de usuario y una contraseña segura. Esta información se usará para iniciar sesión en el panel de administración.",
    "setupConfigDesc": "Introduce la información del host y puerto. Se utilizará para la configuración del cliente al instalar WireGuard en sus dispositivos.",
    "setupMigrationDesc": "Proporciona el archivo de copia de seguridad si deseas migrar tus datos desde una versión anterior de wg-easy a esta nueva configuración.",
    "upload": "Subir",
    "migration": "Restaurar copia de seguridad:",
    "createAccount": "Crear cuenta",
    "successful": "Configuración completada",
    "hostDesc": "Nombre de host público al que se conectarán los clientes",
    "portDesc": "Puerto UDP público al que se conectarán los clientes y que escuchará WireGuard"
  },
  "theme": {
    "dark": "Tema oscuro",
    "light": "Tema claro",
    "system": "Tema del sistema"
  },
  "layout": {
    "toggleCharts": "Mostrar/ocultar gráficos",
    "donate": "Donar"
  },
  "login": {
    "signIn": "Iniciar sesión",
    "rememberMe": "Recordarme",
    "rememberMeDesc": "Mantener sesión iniciada tras cerrar el navegador",
    "2faRequired": "Se requiere autenticación en dos pasos",
    "2faWrong": "El código de autenticación en dos pasos es incorrecto"
  },
  "client": {
    "empty": "No hay clientes todavía.",
    "newShort": "Nuevo",
    "sort": "Ordenar",
    "create": "Crear cliente",
    "created": "Cliente creado",
    "new": "Nuevo cliente",
    "name": "Nombre",
    "expireDate": "Fecha de expiración",
    "expireDateDesc": "Fecha en que el cliente será desactivado. En blanco = permanente",
    "deleteClient": "Eliminar cliente",
    "deleteDialog1": "¿Estás seguro de que deseas eliminar a",
    "deleteDialog2": "Esta acción no se puede deshacer.",
    "enabled": "Habilitado",
    "address": "Dirección",
    "serverAllowedIps": "IPs permitidas del servidor",
    "permanent": "Permanente",
    "createdOn": "Creado el ",
    "lastSeen": "Última conexión el ",
    "totalDownload": "Descarga total: ",
    "totalUpload": "Subida total: ",
    "newClient": "Nuevo cliente",
    "disableClient": "Desactivar cliente",
    "enableClient": "Activar cliente",
    "noPrivKey": "Este cliente no tiene clave privada conocida. No se puede crear la configuración.",
    "showQR": "Mostrar código QR",
    "allowedIpsDesc": "Qué IPs se enrutarán por la VPN (anula la configuración global)",
    "serverAllowedIpsDesc": "Qué IPs el servidor enviará al cliente",
    "mtuDesc": "Tamaño máximo de paquete (MTU) para el túnel VPN",
    "persistentKeepaliveDesc": "Intervalo (en segundos) para los paquetes keep-alive. 0 lo desactiva",
    "hooks": "Hooks",
    "hooksDescription": "Los hooks solo funcionan con wg-quick",
    "hooksLeaveEmpty": "Solo para wg-quick. En caso contrario, dejar vacío",
    "dnsDesc": "Servidor DNS que usarán los clientes (anula la configuración global)",
    "notConnected": "Cliente no conectado",
    "endpoint": "Punto de conexión",
    "endpointDesc": "IP del cliente desde donde se establece la conexión WireGuard",
    "search": "Buscar clientes...",
    "config": "Configuración",
    "viewConfig": "Ver configuración",
    "firewallIps": "IPs permitidas del cortafuegos",
    "firewallIpsDesc": "IPs/CIDRs de destino a las que este cliente puede acceder (aplicado en el servidor). Deja vacío para usar IPs permitidas. Admite filtrado opcional de puertos y protocolos. Consulta la documentación para la sintaxis.",
    "downloadPng": "Descargar PNG",
    "copyInstallLink": "Copy install command",
    "installLinkCopied": "Install command copied to clipboard",
    "installLinkFailed": "Failed to generate install link",
    "downloadPackage": "Download install package"
  },
  "dialog": {
    "change": "Cambiar",
    "cancel": "Cancelar",
    "create": "Crear"
  },
  "toast": {
    "success": "Éxito",
    "saved": "Guardado",
    "error": "Error",
    "unknown": "Error desconocido. Revisa la consola para más detalles"
  },
  "form": {
    "actions": "Acciones",
    "save": "Guardar",
    "revert": "Revertir",
    "sectionGeneral": "General",
    "sectionAdvanced": "Avanzado",
    "noItems": "Sin elementos",
    "nullNoItems": "Sin elementos. Usando configuración global",
    "add": "Añadir"
  },
  "admin": {
    "general": {
      "sessionTimeout": "Tiempo de sesión",
      "sessionTimeoutDesc": "Duración de sesión con 'Recordarme' (en segundos)",
      "metrics": "Métricas",
      "metricsPassword": "Contraseña",
      "metricsPasswordDesc": "Contraseña Bearer para el endpoint de métricas (contraseña o hash argon2)",
      "json": "JSON",
      "jsonDesc": "Ruta para métricas en formato JSON",
      "prometheus": "Prometheus",
      "prometheusDesc": "Ruta para métricas de Prometheus"
    },
    "config": {
      "connection": "Conexión",
      "hostDesc": "Nombre de host público al que se conectarán los clientes (invalida config)",
      "portDesc": "Puerto UDP público al que se conectarán los clientes (invalida config, también debes cambiar el puerto de interfaz)",
      "allowedIpsDesc": "IPs permitidas que usarán los clientes (configuración global)",
      "dnsDesc": "Servidor DNS que usarán los clientes (configuración global)",
      "mtuDesc": "MTU que usarán los clientes (solo para nuevos clientes)",
      "persistentKeepaliveDesc": "Intervalo en segundos para enviar keepalives al servidor. 0 = desactivado (solo para nuevos clientes)"
    },
    "interface": {
      "cidrSuccess": "CIDR cambiado",
      "device": "Dispositivo",
      "deviceDesc": "Dispositivo Ethernet por donde se reenviará el tráfico de WireGuard",
      "mtuDesc": "MTU que usará WireGuard",
      "portDesc": "Puerto UDP en el que escuchará WireGuard (debes cambiar también el puerto de config)",
      "changeCidr": "Cambiar CIDR",
      "restart": "Reiniciar interfaz",
      "restartDesc": "Reiniciar la interfaz de WireGuard",
      "restartWarn": "¿Estás seguro de reiniciar la interfaz? Esto desconectará a todos los clientes.",
      "restartSuccess": "Interfaz reiniciada",
      "firewall": "Filtrado de tráfico",
      "firewallEnabled": "Habilitar cortafuegos por cliente",
      "firewallEnabledDesc": "Restringe el tráfico del cliente a IPs de destino específicas usando iptables. Cuando está activado, cada cliente puede configurarse con destinos permitidos.",
      "egress": "Salida",
      "egressWarp": "Enrutar tráfico de clientes a través de WARP",
      "egressWarpDesc": "Cuando está activado, los clientes salen a través de Cloudflare WARP en lugar del WAN del servidor, ocultando la IP del servidor. Requiere una configuración WARP registrada. Es posible que se necesite un MTU de cliente más bajo."
    },
    "introText": "Bienvenido al panel de administración.\n\nAquí puedes gestionar los ajustes generales, la configuración, la interfaz y los hooks.\n\nEmpieza eligiendo una de las secciones en la barra lateral.",
    "warp": {
      "title": "Cloudflare WARP",
      "intro": "Registre una cuenta gratuita de Cloudflare WARP para usarla como salida para sus clientes. Los clientes saldrán con una IP de Cloudflare en lugar de la IP del servidor.",
      "register": "Obtener WARP",
      "registerSuccess": "WARP registrado",
      "status": "Estado",
      "deviceId": "ID de dispositivo",
      "addressV4": "Dirección IPv4",
      "addressV6": "Dirección IPv6",
      "endpoint": "Punto de acceso",
      "license": "Licencia WARP+",
      "licenseKey": "Clave de licencia",
      "licenseKeyDesc": "Ingrese una clave de licencia WARP+ para habilitar WARP+.",
      "licenseSet": "Licencia configurada",
      "licenseUnset": "Sin licencia",
      "licenseSuccess": "Licencia aplicada",
      "applyLicense": "Aplicar licencia",
      "autoRotate": "Rotación automática de IP",
      "intervalDays": "Intervalo (días)",
      "intervalDaysDesc": "0 para desactivar. Rota la IP de WARP automáticamente.",
      "changeIp": "Cambiar IP",
      "changeIpSuccess": "IP de WARP cambiada",
      "delete": "Eliminar WARP",
      "deleteSuccess": "Configuración de WARP eliminada",
      "importConfig": "Editar configuración",
      "importTitle": "Configuración WARP manual",
      "importDesc": "Pegue una configuración WireGuard. El sistema comprobará la conexión — si se establece el handshake, se guardará la configuración. Table, PostUp y PostDown se gestionan automáticamente.",
      "importApply": "Aplicar",
      "importSuccess": "Configuración WARP aplicada",
      "connection": "Conexión",
      "online": "En línea",
      "offline": "Sin conexión",
      "checkNow": "Comprobar conexión",
      "checking": "Comprobando…",
      "checkOnline": "WARP está en línea",
      "checkOffline": "WARP está sin conexión",
      "notActiveEgress": "WARP no está activo como salida",
      "notActiveEgressTip": "Activa \"Enrutar el tráfico de clientes a través de WARP\" en la sección Interfaz de red para usar y probar el túnel WARP."
    }
  },
  "zod": {
    "generic": {
      "required": "{0} es obligatorio",
      "validNumber": "{0} debe ser un número válido",
      "validNumberRange": "{0} debe ser un número válido o un rango de números",
      "validString": "{0} debe ser una cadena válida",
      "validBoolean": "{0} debe ser un booleano válido",
      "validArray": "{0} debe ser una lista válida",
      "stringMin": "{0} debe tener al menos {1} caracteres",
      "numberMin": "{0} debe ser al menos {1}"
    },
    "client": {
      "id": "ID del cliente",
      "name": "Nombre",
      "expiresAt": "Expira el",
      "address4": "Dirección IPv4",
      "address6": "Dirección IPv6",
      "serverAllowedIps": "IPs permitidas del servidor",
      "firewallIps": "IPs permitidas del cortafuegos",
      "firewallIpsInvalid": "Entrada de IP de cortafuegos no válida. Consulta la documentación para la sintaxis compatible."
    },
    "user": {
      "username": "Usuario",
      "password": "Contraseña",
      "remember": "Recordar",
      "name": "Nombre",
      "email": "Correo electrónico",
      "emailInvalid": "El correo electrónico debe ser válido",
      "passwordMatch": "Las contraseñas deben coincidir",
      "totpEnable": "Activar TOTP",
      "totpEnableTrue": "Debe estar activado",
      "totpCode": "Código TOTP"
    },
    "userConfig": {
      "host": "Host"
    },
    "general": {
      "sessionTimeout": "Tiempo de sesión",
      "metricsEnabled": "Métricas",
      "metricsPassword": "Contraseña de métricas"
    },
    "interface": {
      "cidr": "CIDR",
      "device": "Dispositivo",
      "cidrValid": "El CIDR debe ser válido",
      "egressMode": "Modo de salida",
      "domainValid": "Domain must be a valid hostname"
    },
    "stringMalformed": "Cadena malformada",
    "body": "El cuerpo debe ser un objeto válido",
    "hook": "Hook",
    "enabled": "Habilitado",
    "mtu": "MTU",
    "port": "Puerto",
    "persistentKeepalive": "Keepalive persistente",
    "address": "Dirección IP",
    "dns": "DNS",
    "allowedIps": "IPs permitidas",
    "file": "Archivo",
    "installLink": {
      "token": "Install token"
    },
    "obfuscator": {
      "extPort": "Obfuscator external port",
      "key": "Obfuscator key",
      "masking": "Masking mode",
      "idle": "Obfuscator idle timeout",
      "dummy": "Max dummy bytes",
      "publicIpV4": "Server public IPv4",
      "publicIpV6": "Server public IPv6",
      "clientWgLocalPort": "Client local WG port"
    },
    "warp": {
      "addressV4": "Dirección IPv4",
      "addressV6": "Dirección IPv6",
      "endpoint": "Punto de acceso (host:puerto)",
      "interval": "Intervalo de actualización (días)",
      "key": "Clave WireGuard",
      "license": "Clave de licencia WARP+ (mín. 26 caracteres)"
    }
  },
  "hooks": {
    "preUp": "PreUp",
    "postUp": "PostUp",
    "preDown": "PreDown",
    "postDown": "PostDown"
  },
  "copy": {
    "notSupported": "La copia no es compatible",
    "copied": "¡Copiado!",
    "failed": "Error al copiar",
    "copy": "Copiar"
  }
}