Bolehkah kunci awam VPN dikongsi? Semak tiga perkara
Menerbitkan separuh bahagian awam ialah cara protokol berfungsi; menerbitkan separuh bahagian peribadi bermakna menyerahkan identiti. Tiga semakan menentukan nilai mana yang anda pegang.
Anda boleh memberikan kunci awam VPN anda kepada rakan, penyedia atau forum, dan terowong masih berfungsi. Kunci peribadi pula tidak boleh diserahkan, walaupun kepada kakitangan sokongan, tanpa menyerahkan identiti yang dibuktikan oleh kunci itu. Keputusan jarang kekal sesederhana itu, kerana orang keliru tentang separuh pasangan mana yang mereka lihat, dan kerana sesetengah penggunaan menganggap nilai awam sebagai nama. Tiga semakan menyelesaikannya: separuh mana yang anda ada, apa yang penggunaan ikatkan padanya, dan berapa kos penggantian.
Semakan satu: separuh pasangan mana yang ada dalam papan klip anda
Kunci asimetri datang berpasangan, dan arah terbitan itulah pokoknya. Dalam WireGuard kunci peribadi ialah 32 bait rawak dan kunci awam dikira daripadanya; arah sebaliknya tidak mungkin. wg genkey menulis nilai peribadi, wg pubkey menerbitkan nilai awam, dan hanya yang kedua layak masuk mesej kepada rakan.
wg genkey | tee private.key | wg pubkey > public.key
chmod 600 private.key
openssl x509 -noout -pubkey -in server.crt
Dunia sijil menggunakan pembahagian yang sama dengan lebih banyak bahagian bergerak. Sijil pelayan membawa kunci awam serta nama, dan ditandatangani oleh kunci peribadi CA yang tidak pernah meninggalkan CA. Klien yang mengesahkan pelayan itu memerlukan sijil CA, yang bersifat awam, dan tidak berguna kepada kunci tandatangan peribadi CA.
Jika anda tidak pasti nilai mana yang anda pegang, cari penandanya, bukan nama fail. Blok PEM yang bermula dengan -----BEGIN PRIVATE KEY-----, atau bentuk lama BEGIN RSA PRIVATE KEY, ialah separuh rahsia. Nilai yang boleh anda tampal tanpa penanda itu ialah calon untuk dikongsi, bergantung pada dua semakan seterusnya.
Semakan dua: apa yang penggunaan ikatkan pada nilai awam itu
Keselamatan kriptografi dan tanpa nama ialah sifat yang berbeza. Kunci awam rakan WireGuard ialah pengecam stabil dalam penggunaan: konfigurasi pelayan menyenaraikannya, jabat tangan menamakannya, dan pentadbir yang membaca log melihat rentetan yang sama setiap kali rakan itu menyambung. Tampal kunci itu di sebelah soalan tentang persediaan anda, dan anda telah mengaitkan rentetan itu dengan segala-galanya dalam kiriman itu.
Sijil mendedahkan identiti secara reka bentuk. Subject dan subject alternative name boleh dibaca, dan bagi sijil TLS yang dipercayai umum sijil itu sendiri diterbitkan ke log Certificate Transparency, yang boleh dicari. Tiada satu pun daripada itu mendedahkan kunci peribadi, dan semuanya mendedahkan hubungan.
Di sinilah penggunaan berbeza, dan itu menentukan jawapannya. Rakan ujian sekali guna pada pelayan makmal ialah objek berbeza daripada kunci yang mengenal pasti titik hujung tapak-ke-tapak sebuah syarikat, walaupun bait kelihatan serupa.
Semakan tiga: apa yang boleh anda batalkan, dan betapa pantas
Semakan ketiga memisahkan kedua-dua separuh sepenuhnya. Kunci awam yang telah diterbitkan boleh diganti mengikut jadual anda. Kunci peribadi yang telah diterbitkan tidak boleh ditarik balik: memadam salinan anda tidak menyentuh salinan yang sudah diambil, dan setiap rakan yang mempercayainya kini mempercayai sesuatu yang dipegang orang luar.
Pembatalan ialah tindakan konfigurasi, bukan kriptografi. WireGuard tidak menyediakan senarai pembatalan, jadi anda membuang rakan itu:
wg set wg0 peer <peer-public-key> remove
# then delete the [Peer] block from the config so it does not return on restart
OpenVPN penggunaan yang dibina atas sijil membatalkan sijil itu dan menerbitkan CRL yang benar-benar diperiksa oleh pelayan melalui crl-verify. Tanpa arahan itu senarai pembatalan hanyalah hiasan. Dalam kedua-dua kes urutannya sama: keluarkan pengganti, edarkannya melalui saluran yang disokong, kemudian persarakan identiti lama.
Kesilapan yang timbul daripada menggabungkan tiga semakan
Kebanyakan kebocoran sebenar bukanlah seseorang memutuskan untuk menerbitkan kunci peribadi. Ia adalah seluruh profil ditampal ke forum: satu fail .conf WireGuard dengan baris PrivateKey, satu berkas .ovpn dengan blok kunci dalam talian, atau tangkapan skrin tetingkap klien yang kebetulan mengandungi medan kunci. Nilai awam itu mungkin tidak mengapa; ia mengembara bersama bahagian yang bermasalah.
Aliran kerja sokongan ialah sumber kedua. Tiada langkah pengesahan yang sah memerlukan kunci peribadi anda, kerana pihak lain menerbitkan apa yang diperlukannya daripada separuh awam. Apabila borang atau seseorang meminta nilai peribadi, jawapan yang betul ialah nilai awam serta arahan setempat yang menghasilkannya.
Log dan tangkapan skrin tergolong dalam kategori yang sama. Output diagnostik boleh membawa bahan kunci, pengecam sesi dan alamat dalaman, dan menerbitkan semuanya untuk mendapatkan jawapan kepada satu soalan menukar sedikit kemudahan dengan pendedahan yang lebih besar.
Selepas nilai peribadi bocor, persarakan identiti itu
Jika nilai peribadi benar-benar keluar, anggap identiti itu sudah bersara. Hasilkan pasangan baharu, pasang separuh awam di tempat rakan menjangkakannya, buang rakan lama atau batalkan sijil lama, dan semak tempat anda menerbitkannya. Anda tidak boleh memadam salinan yang tidak anda kawal, jadi pembuangan adalah tentang masa depan, bukan masa lalu.
Kemudian tuliskan pengedaran: kunci mana milik peranti mana, siapa memegang salinan, bagaimana pengganti dihantar, dan siapa membuang rakan yang bersara. Itulah bahagian yang orang lupa, dan ia menentukan berapa lama kebocoran kekal berguna.