A mensaxe di que a clave privada ten unha lonxitude incorrecta, e esa redacción apunta primeiro á codificación e só despois á criptografía. As claves de WireGuard codifican 32 bytes en base64, o que dá 44 caracteres incluído un recheo final, así que un valor doutro tamaño non é unha clave por moi aleatorio que pareza. Encher a cadea ata que o analizador a acepte produce un valor ben formado que ningún par recoñecerá xamais.

Detrás deste erro agóchanse dúas tarefas distintas: reparar o texto dunha clave válida e substituír unha identidade que xa non posúes. Teñen consecuencias diferentes, e unha delas invalida o outro extremo.

Que espera o analizador

Unha clave de WireGuard son 32 bytes de material de clave en base64 con recheo estándar, o que dá unha cadea fixa de 44 caracteres. As ferramentas rexeitan todo o que non se decodifique exactamente a 32 bytes, porque a curva subxacente toma un escalar de 32 bytes e nada máis. Os valores públicos e privados usan a mesma codificación, así que o analizador non pode saber só polo formato cal dos dous pegaches. Esa ambigüidade causa a metade da confusión arredor deste erro.

wg genkey | tee private.key | wg pubkey > public.key
base64 -d private.key | wc -c
wc -c private.key
wg show wg0 public-key

Se o teu valor se decodifica a 32 bytes, a lonxitude está ben e a queixa vén doutro lugar do ficheiro. Se se decodifica a algo máis curto, tes material truncado e non un problema de formato.

Dano de formato ou material equivocado?

O dano de formato concéntrase nos bordos: comiñas engadidas por unha shell, unha etiqueta como private_key copiada xunto co valor, un salto de liña inserido por un cliente de chat ou un espazo final que sobreviviu ao pegamento. Cada un deses cambios altera a cadea sen cambiar os bytes, así que eliminalo restaura a identidade orixinal. Compara o ficheiro co rexistro de aprovisionamento carácter por carácter en lugar de quitar puntuación ata que o analizador calle.

O material equivocado é outra situación. Un contrasinal, unha clave de certificado ou un valor público poden parecer plausibles e decodificarse ao tamaño equivocado. Ningunha limpeza converte a ningún deles no escalar que o par espera. Ese caso necesita unha identidade nova en lugar dunha edición.

Unha clave pública no campo privado

A confusión máis común é un valor público pegado no campo privado, ou ao revés. Ambos son base64 válidos de 32 bytes, así que a comprobación de lonxitude pasa e o handshake falla despois sen unha mensaxe útil. Unha clave privada é o escalar que produce a pública, así que podes resolvelo derivando o valor público e comparándoo co que autoriza o par. Cando o valor derivado non coincide co rexistro, tes a identidade equivocada e non unha errata.

Substituír a clave privada do cliente sen actualizar a clave pública autorizada no outro extremo recrea o mesmo desaxuste, coa confusión engadida de que o ficheiro do propio cliente agora parece coherente. Cambia ambos os extremos nunha soa operación, ou a seguinte persoa depurará a metade equivocada.

Repara o perfil e despois demostra o handshake

Unha vez que a clave se decodifica ao tamaño correcto e coincide co par autorizado, o traballo restante é o perfil e a ruta. Os comandos seguintes xeran un par novo cando fai falta, verifican o tamaño decodificado dunha clave existente e len o valor público que a interface usa realmente. Nunca peguen un valor privado nun ticket nin nun sitio de decodificación.

wg genkey | tee new.key | wg pubkey > new.pub
base64 -d private.key | wc -c
ip route get 10.60.9.5
wg show wg0 latest-handshakes

A comprobación de tamaño responde se o material ten forma de clave, e a consulta de ruta responde se un paquete chegaría algunha vez á interface. Unha liña de handshake que segue baleira despois de pasar ambas comprobacións traslada o diagnóstico ao extremo do par e ás direccións permitidas. Le a clave pública da interface contra o rexistro de aprovisionamento unha última vez, porque un perfil gardado obsoleto pode parecer correcto mentres o activo difire].

Anota que valor substituíches e onde vive a copia autorizada. Quen toque este par a continuación debe saber que extremo cambiou.

Artigos relacionados