WireGuard menyatakan panjang kunci peribadi salah: apa seterusnya?
Kunci 32 bait dalam base64 ialah 44 aksara. Tentukan sama ada teks anda rosak atau identitinya salah sebelum menjana semula apa-apa.
Mesej itu menyatakan kunci peribadi mempunyai panjang yang salah, dan perkataan itu menunjuk kepada pengekodan dahulu, kemudian kriptografi. Kunci WireGuard mengekod 32 bait sebagai base64, yang menghasilkan 44 aksara termasuk pelapik akhir, jadi nilai bersaiz lain bukan kunci walau bagaimana rawak ia kelihatan. Mengisi rentetan sehingga penghurai menerimanya menghasilkan nilai yang terbentuk rapi yang tidak akan dikenali oleh mana-mana rakan sebaya.
Di sebalik ralat ini tersembunyi dua tugas berbeza: membaiki teks kunci yang sah, dan menggantikan identiti yang anda tidak lagi miliki. Kesannya berbeza, dan salah satunya membatalkan hujung yang lain.
Apa yang dijangka oleh penghurai
Kunci WireGuard ialah 32 bait bahan kunci dalam base64 dengan pelapik piawai, yang menghasilkan rentetan tetap 44 aksara. Alat menolak apa-apa yang tidak dinyahkod tepat kepada 32 bait, kerana lengkung asas mengambil skalar 32 bait dan tiada yang lain. Nilai awam dan peribadi menggunakan pengekodan yang sama, jadi penghurai tidak dapat mengetahui daripada format sahaja yang mana anda tampal. Kekaburan itulah yang menyebabkan separuh kekeliruan sekitar ralat ini.
wg genkey | tee private.key | wg pubkey > public.key
base64 -d private.key | wc -c
wc -c private.key
wg show wg0 public-key
Jika nilai anda dinyahkod kepada 32 bait, panjangnya betul dan aduan datang dari tempat lain dalam fail. Jika ia dinyahkod kepada sesuatu yang lebih pendek, anda mempunyai bahan yang terpotong, bukan masalah pemformatan.
Kerosakan pemformatan atau bahan yang salah?
Kerosakan pemformatan berkumpul di tepi: tanda petik yang ditambah oleh shell, label seperti private_key yang disalin bersama nilai, pemisah baris yang dimasukkan oleh klien sembang, atau ruang akhir yang terselamat daripada tampalan. Setiap perubahan itu mengubah rentetan tanpa mengubah bait, jadi membuangnya memulihkan identiti asal. Bandingkan fail dengan rekod peruntukan aksara demi aksara dan bukan membuang tanda baca sehingga penghurai senyap.
Bahan yang salah ialah situasi lain. Kata laluan, kunci sijil atau nilai awam semuanya boleh kelihatan munasabah dan dinyahkod kepada saiz yang salah. Tiada pembersihan menjadikan mana-mana daripadanya skalar yang dijangka oleh rakan sebaya. Kes itu memerlukan identiti baharu, bukan suntingan.
Kunci awam dalam medan peribadi
Kekeliruan paling biasa ialah nilai awam ditampal ke dalam medan peribadi, atau sebaliknya. Kedua-duanya base64 sah 32 bait, jadi semakan panjang lulus dan jabat tangan gagal kemudian tanpa mesej yang berguna. Kunci peribadi ialah skalar yang menghasilkan yang awam, jadi anda boleh memutuskannya dengan memperoleh nilai awam dan membandingkannya dengan apa yang dibenarkan oleh rakan sebaya. Apabila nilai yang diperoleh tidak sepadan dengan rekod, anda memegang identiti yang salah, bukan salah taip.
Menggantikan kunci peribadi klien tanpa mengemas kini kunci awam yang dibenarkan di hujung sana mencipta semula ketidakpadanan yang sama, dengan kekeliruan tambahan bahawa fail klien itu sendiri kini kelihatan konsisten. Tukar kedua-dua hujung dalam satu operasi, jika tidak orang seterusnya akan menyahpepijat separuh yang salah.
Baiki profil, kemudian buktikan jabat tangan
Setelah kunci dinyahkod kepada saiz yang betul dan sepadan dengan pasangan yang dibenarkan, kerja yang tinggal ialah profil dan laluan. Perintah di bawah menjana pasangan baharu apabila perlu, mengesahkan saiz dinyahkod bagi kunci sedia ada dan membaca nilai awam yang benar-benar digunakan oleh antara muka. Jangan sekali-kali tampal nilai peribadi ke dalam tiket atau tapak nyahkod.
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
Semakan saiz menjawab sama ada bahan itu berbentuk kunci, dan pertanyaan laluan menjawab sama ada paket akan sampai ke antara muka. Baris jabat tangan yang kekal kosong selepas kedua-dua semakan lulus memindahkan diagnosis ke titik akhir rakan sebaya dan alamat yang dibenarkan. Baca kunci awam antara muka terhadap rekod peruntukan sekali lagi, kerana profil tersimpan yang lama boleh kelihatan betul sedangkan yang aktif berbeza].
Catat nilai mana yang anda ganti dan di mana salinan yang dibenarkan berada. Sesiapa yang menyentuh rakan sebaya ini seterusnya perlu tahu hujung mana yang berubah.