WireGuard segir lengd einkalykilsins rangt: hvað er til ráða?
Lykill sem er 32 bæti í base64 er 44 stafir. Ákvarðaðu hvort textinn er skemmdur eða auðkennið rangt áður en þú endurskapar nokkuð.
Skilaboðin segja að einkalykillinn hafi ranga lengd, og sú orðalag vísar fyrst á kóðun og síðan á dulritun. WireGuard-lyklar kóða 32 bæti sem base64, sem gefur 44 stafi þar með talda lokafyllingu, svo gildi af annarri stærð er ekki lykill sama hversu slembnum hann lítur út. Að fylla strenginn þar til þáttarinn samþykkir hann framleiðir vel mótað gildi sem enginn hliðstæðingur mun nokkurn tíma þekkja.
Tvö ólík verk leynast bak við þessa villu: að laga textann í gildum lykli, og að skipta út auðkenni sem þú hefur ekki lengur. Þau hafa ólíkar afleiðingar, og annað ógildir hinn endann.
Hvað þáttarinn væntir
WireGuard-lykill er 32 bæti af lykilefni í base64 með staðlaðri fyllingu, sem gefur fastan 44 stafa streng. Verkfærin hafna öllu sem afkóðast ekki nákvæmlega í 32 bæti, vegna þess að ferillinn undir tekur 32 bæta stigstærð og ekkert annað. Opinber og einkagildi nota sömu kóðun, svo þáttarinn getur ekki einungis út frá sniðinu séð hvort þú límdir. Sú tvíræðni veldur helmingi ruglingsins í kringum þessa villu.
wg genkey | tee private.key | wg pubkey > public.key
base64 -d private.key | wc -c
wc -c private.key
wg show wg0 public-key
Ef gildið þitt afkóðast í 32 bæti er lengdin í lagi og kvörtunin kemur annars staðar frá í skránni. Ef það afkóðast í eitthvað styttra hefurðu stytt efni en ekki sniðvandamál.
Sniðskemmdir eða rangt efni?
Sniðskemmdir safnast við jaðrana: gæsalappir sem skel bætti við, merki eins og private_key sem afritað var með gildinu, línubrot sem spjallforrit setti inn, eða lokabil sem lifði af líminguna. Sérhver þessara breytinga breytir strengnum án þess að breyta bætunum, svo að fjarlægja hana endurheimtir upprunalega auðkennið. Berðu skrána saman við útvegunarskrá staf fyrir staf í stað þess að fjarlægja greinarmerki þar til þáttarinn þagnar.
Rangt efni er önnur staða. Lykilorð, skírteinislykill eða opinbert gildi geta öll litið trúverðug út og afkóðast í ranga stærð. Engin hreinsun breytir neinu þeirra í þá stigstærð sem hliðstæðingurinn væntir. Það tilvik þarf nýtt auðkenni en ekki breytingu.
Opinber lykill í einkareitnum
Algengasta ruglingið er opinbert gildi límt í einkareitinn, eða hið gagnstæða. Bæði eru gild base64 af 32 bætum, svo lengdarprófið stenst og handabandið mistekst síðar án gagnlegra skilaboða. Einkalykillinn er stigstærðin sem framleiðir þann opinbera, svo þú getur skorið úr um það með því að leiða út opinbera gildið og bera það saman við það sem hliðstæðingurinn heimilar. Þegar útleidda gildið passar ekki við skrána hefurðu ranga auðkennið en ekki innsláttarvillu.
Að skipta út einkalykli biðlarans án þess að uppfæra heimilaða opinbera lykilinn hinum megin endurskapar sama misræmið, með þeim aukna ruglingi að skrá biðlarans lítur nú út fyrir að vera sjálfri sér samkvæm. Breyttu báðum endum í einni aðgerð, annars kembir næsta manneskja ranga helminginn.
Lagaðu sniðið og sannaðu svo handabandið
Þegar lykillinn hefur afkóðast í rétta stærð og passar við heimilaða parið er það sem eftir er sniðið og leiðin. Skipanirnar hér að neðan búa til nýtt par þegar þörf er á, sannreyna afkóðaða stærð fyrirliggjandi lykils og lesa opinbera gildið sem viðmótið notar í raun. Límdu aldrei einkagildi í miða eða á afkóðunarsíðu.
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
Stærðarprófið svarar því hvort efnið sé lykjalaga, og leiðarfyrirspurnin svarar því hvort pakki myndi nokkurn tíma ná viðmótinu. Handabandslína sem er enn tóm eftir að bæði prófin standast færir greininguna á endapunkt hliðstæðingsins og heimiluðu netföngin. Lestu opinbera lykil viðmótsins gegn útvegunarskránni í síðasta sinn, því gömul vistuð snið getur litið rétt út á meðan hið virka er öðruvísi].
Skráðu hvaða gildi þú skiptir út og hvar heimilaða eintakið er. Næsta manneskja sem snertir þennan hliðstæðing þarf að vita hvorum endanum var breytt.