Пораката вели дека приватниот клуч има погрешна должина, а таа формулација најпрво упатува на кодирањето, а потоа на криптографијата. WireGuard клучевите кодираат 32 бајти како base64, што дава 44 знаци вклучително со завршното полнење, па вредност со друга големина не е клуч колку и да изгледа случајна. Пополнувањето на низата додека анализаторот не ја прифати создава правилно обликувана вредност што ниту еден партнер никогаш нема да ја препознае.

Зад оваа грешка стојат две различни задачи: поправање на текстот на важечки клуч и замена на идентитет што повеќе не го имате. Нивните последици се различни, а едната го поништува другиот крај.

Што очекува анализаторот

WireGuard клучот е 32 бајти клучен материјал во base64 со стандардно полнење, што дава фиксна низа од 44 знаци. Алатките одбиваат сето што не се декодира точно во 32 бајти, бидејќи основната крива зема 32-бајтен скалар и ништо друго. Јавните и приватните вредности користат исто кодирање, па анализаторот само од форматот не може да каже која од двете ја залепивте. Токму таа двосмисленост предизвикува половина од конфузијата околу оваа грешка.

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

Ако вашата вредност се декодира во 32 бајти, должината е во ред и жалбата доаѓа од друго место во датотеката. Ако се декодира во нешто пократко, имате скратен материјал, а не проблем со форматирање.

Оштетено форматирање или погрешен материјал?

Оштетувањата на форматирањето се собираат на рабовите: наводници додадени од школка, ознака како private_key копирана заедно со вредноста, прелом на ред вметнат од клиент за разговор или завршен простор што го преживеал лепењето. Секоја од тие промени ја менува низата без да ги менува бајтите, па нивното отстранување ја враќа оригиналната идентификација. Споредете ја датотеката со записот за обезбедување знак по знак наместо да отстранувате интерпункција додека анализаторот не замолчи.

Погрешниот материјал е друга ситуација. Лозинка, клуч на сертификат или јавна вредност можат да изгледаат уверливо и да се декодираат во погрешна големина. Ниту едно чистење не ги претвора во скаларот што го очекува партнерот. Тој случај бара нов идентитет, а не уредување.

Јавен клуч во приватното поле

Најчестата конфузија е јавна вредност залепена во приватното поле, или обратно. Двете се важечки 32-бајтни base64, па проверката на должината поминува, а ракувањето подоцна не успева без корисна порака. Приватниот клуч е скаларот што го создава јавниот, па тоа можете да го решите со изведување на јавната вредност и споредување со она што партнерот го овластува. Кога изведената вредност не се совпаѓа со записот, имате погрешен идентитет, а не печатна грешка.

Замената на приватниот клуч на клиентот без ажурирање на овластениот јавен клуч на другиот крај повторно ја создава истата неусогласеност, со дополнителна конфузија што датотеката на клиентот сега изгледа самоусогласена. Променете ги двата краја во една операција, инаку следниот човек ќе ја дебагира погрешната половина.

Поправете го профилот, потоа докажете го ракувањето

Откако клучот ќе се декодира во вистинската големина и ќе одговара на овластениот пар, останува профилот и патеката. Командите подолу создаваат нов пар кога е потребно, ја проверуваат декодираната големина на постоечки клуч и ја читаат јавната вредност што интерфејсот навистина ја користи. Никогаш не лепете приватна вредност во тикет или на страница за декодирање.

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

Проверката на големината одговара дали материјалот има облик на клуч, а прашањето за рутата одговара дали пакетот некогаш ќе стигне до интерфејсот. Редот за ракување што останува празен откако ќе поминат двете проверки ја преместува дијагнозата кон крајната точка на партнерот и дозволените адреси. Прочитајте го јавниот клуч на интерфејсот наспроти записот за обезбедување уште еднаш, бидејќи застарениот зачуван профил може да изгледа точен додека активниот се разликува].

Запишете која вредност ја заменивте и каде е овластеното копие. Следниот што ќе го допре овој партнер мора да знае кој крај се променил.

Поврзани статии