Un portátil muere con tres túneles de WireGuard configurados, y los archivos de configuración siguen en el disco. Copiarlos a una máquina de sustitución produce un servicio que arranca y luego se niega a levantarse. Los archivos están protegidos con una clave que pertenece a la cuenta y a la máquina que los crearon, así que los bytes viajan y la capacidad de leerlos no. El recorrido siguiente va desde localizar el archivo hasta la opción que realmente recupera el servicio.

Dónde vive ahora el archivo del túnel

El almacenamiento se ha movido entre versiones. Las instalaciones antiguas guardaban los perfiles en los datos de aplicaciones locales del perfil del sistema dentro de una carpeta WireGuard\Configurations, y las compilaciones actuales usan un directorio de datos dentro del árbol de archivos del programa. Cada túnel es un solo archivo con una doble extensión que nombra la protección:

Get-ChildItem "C:\Program Files\WireGuard\Data\Configurations"

El sufijo .dpapi no es decoración. El archivo es un blob protegido, y el servicio está diseñado para consumirlo exactamente en esa forma. La forma admitida de instalar un túnel a partir de él es una llamada elevada que apunta al blob:

$blob = "C:\Program Files\WireGuard\Data\Configurations\hq.conf.dpapi"
wireguard.exe /installtunnelservice $blob

Ese comando solo tiene éxito en el contexto que puede desenvolver el blob. Instala un servicio; no descifra nada por usted.

Por qué el blob no se abre en otro sitio

La protección deriva su clave de las credenciales de inicio de sesión del usuario y, según el ámbito elegido, de la máquina. La documentación de Microsoft para la llamada de protección dice que el valor predeterminado pertenece al usuario y a la máquina que lo cifraron, y una opción para toda la máquina cambia quién puede desenvolverlo. En ambos casos la clave vive en el material de credenciales del sistema operativo, no dentro del archivo. El texto cifrado es portátil; la clave no.

Tomar posesión de la carpeta cambia una ACL y nada más. Montar el disco antiguo en una carcasa y copiar el blob a un PC nuevo le deja un texto cifrado cuya clave nunca se copió. El fallo es criptográfico, y ninguna reinstalación del servicio lo cambia. La máquina nueva no tiene ninguna clave maestra para esa cuenta, y el almacén de claves antiguo no viaja con el archivo.

Los productos que guardan la configuración en un archivo ofuscado dejan claro el contraste. Una configuración que solo está ofuscada se vuelve legible en cuanto encuentra la marca que desactiva la ofuscación; un blob protegido sigue cerrado sin la clave. Confundir ambas cosas lleva a la gente a buscar un decodificador que no existe.

Qué probar mientras el sistema antiguo aún arranca

Si la instalación aún arranca, exporte los túneles desde el cliente mientras tiene la sesión iniciada con la cuenta que los creó. La exportación produce archivos de configuración normales, y es en ese punto donde una copia de seguridad se vuelve portátil.

Si el disco es legible pero Windows no arranca, los archivos protegidos están efectivamente perdidos. Las herramientas que prometen recuperarlos o bien se ejecutan en el contexto original, que ya no tiene, o bien le piden que entregue el blob y la imagen de su disco antiguo, lo cual es una decisión sobre la que merece la pena detenerse.

Anote lo que aprenda en cualquier caso: los nombres de los túneles, los extremos y las claves públicas. Los nombres y los extremos le permiten reconstruir rápido, y las claves públicas permiten que el otro lado identifique qué entrada eliminar.

Reconstrúyalo desde el lado del par

Para un par que controle, genere un par de claves nuevo y añada la clave pública nueva a la lista del par. Para un extremo corporativo o alojado, pida al administrador que emita una clave nueva y elimine la antigua. Esa solicitud es la misma que haría tras un robo, porque un disco perdido significa que la clave privada antigua debe tratarse como expuesta.

Después reconstruya el túnel con los valores que anotó, y confirme el saludo antes de borrar cualquier otra cosa. La entrada antigua en el par debería desaparecer en el mismo cambio, para que un disco robado no pueda reconectarse después.

La lección pertenece a la política de copias de seguridad y no a una herramienta de recuperación. Una configuración de WireGuard es una credencial: quien tiene la clave privada tiene la identidad del par, y no hay una segunda contraseña de por medio. O bien exporta la configuración a propósito y la guarda con sus otros secretos, o bien acepta que recuperar significa reemitir claves, y anota qué opción se aplica a cada túnel.

Artículos relacionados