Profil OpenVPN memiliki tiga blok sertifikat: mana yang rahasia?
Sebuah profil membawa sertifikat CA, sertifikat klien, dan kunci privat yang tampak serupa. Hanya satu yang rahasia, dan masing-masing gagal dengan cara berbeda.
Anda membuka berkas .ovpn untuk mengubah satu baris dan menemukan tiga blok base64 yang semuanya tampak seperti kredensial. Satu aman untuk diterbitkan, satu sama sensitifnya dengan kata sandi, dan satu adalah kunci publik yang tidak berarti apa pun kecuali ada hal lain yang ditandatangani dengan pasangannya. Orang menempelkan seluruh berkas ke utas dukungan karena blok-bloknya tampak bisa dipertukarkan, dan begitulah kunci klien berakhir di arsip publik. Memilah blok mana melakukan apa menjelaskan sebagian besar kebingungan seputar profil ini, dan juga memberi tahu Anda kegagalan mana yang menjadi tugas Anda untuk diperbaiki.
Satu berkas, tiga blok, tugas berbeda
Profil biasa menyematkan blok ca, blok cert, dan blok key di antara penanda BEGIN dan END, atau menunjuk ketiganya sebagai berkas terpisah. Beberapa profil menambahkan blok keempat untuk kunci tls-auth atau tls-crypt, yang merupakan rahasia bersama dan bukan sertifikat. Klien membaca setiap blok menurut direktif yang menamainya, jadi label lebih penting daripada urutan kemunculannya.
Perlakukan profil yang dirangkai sebagai sensitif sampai Anda benar-benar melihat ke dalamnya. Sertifikat publik dan kunci privat bisa berjarak beberapa baris dalam berkas yang sama, dan tangkapan layar yang menyertakan tajuk bisa memuat keduanya. Menyamarkan base64 yang terlihat dengan tangan juga tidak andal, karena blok sebagian tetap membocorkan metadata sertifikat yang menamai penerapan Anda. Menyalin ketiga direktif tanpa nilainya biasanya cukup untuk mengajukan pertanyaan yang berguna.
Direktif di sekitar blok menentukan cara penggunaannya. Ubah ca dan klien memercayai otoritas lain; ubah cert tanpa mengubah key dan jabat tangan gagal dengan ketidakcocokan yang tidak ada kaitannya dengan kepercayaan.
Blok CA bersifat publik, kunci CA tidak pernah
Otoritas sertifikat menandatangani sertifikat yang mengikat kunci publik ke identitas, dan sertifikatnya sendiri adalah jangkar yang dipakai klien untuk memutuskan apakah rantai dapat dipercaya. Sertifikat itu publik secara desain: mengirimkannya di dalam setiap profil adalah hal normal, dan itulah sebabnya penerapan yang ditandatangani sendiri bisa berjalan tanpa otoritas komersial.
Yang tidak boleh pernah muncul di profil klien adalah kunci penandatanganan privat otoritas. Klien tidak membutuhkannya untuk memvalidasi apa pun, dan keberadaannya berarti siapa pun yang memegang profil dapat mencetak identitas baru untuk seluruh penerapan.
Memercayai otoritas juga lebih sempit daripada kedengarannya. Klien yang menerima sertifikat apa pun yang ditandatangani CA tetap akan menerima sertifikat yang diterbitkan untuk layanan lain pada CA yang sama. Opsi yang memaku peran atau nama server yang diharapkan menutup celah itu, dan Referensi opsi TLS mencantumkan direktif verifikasi yang melakukannya.
Sertifikat server dan klien menunjuk ke arah berlawanan
Sertifikat server adalah yang diperiksa klien untuk memastikan sudah mencapai titik akhir yang benar. Sertifikat klien Anda berjalan sebaliknya: server memakainya untuk memutuskan bahwa perangkat atau pengguna ini adalah yang ia daftarkan. Format sama, arah kepercayaan berlawanan.
Alamat bukan identitas. Mencapai IP yang benar tidak membuktikan apa pun tentang siapa yang menjawab, karena itu pemeriksaan nama host atau nama sertifikat tetap termasuk dalam profil. Kata sandi akun juga tidak diam-diam menggantikan sertifikat klien yang diwajibkan, karena keduanya diperiksa pada tahap berbeda dan penerapan bisa menuntut keduanya.
Kunci privat klien adalah bagian yang harus tetap privat. Jika mungkin telah terbuka, menghapus berkas dari laptop Anda tidak mengubah apa pun di server, yang akan terus menerima sertifikat terkait sampai operator mencabutnya. Meminta operator mengganti atau mencabut identitas itu adalah satu-satunya perbaikan yang ikut berpindah bersama Anda.
Dua permintaan yang tampak identik dan tidak
Kunci yang disimpan dalam bentuk terenkripsi meminta frasa sandi sebelum klien dapat memakainya. Layanan VPN mungkin meminta kata sandi akun secara terpisah, dan kedua permintaan bisa muncul berselang detik dengan kata-kata yang hampir sama. Frasa sandi melindungi berkas di disk Anda; kata sandi membuktikan akun ke server. Mencampuradukkan keduanya mengirim orang ke pengaturan ulang kata sandi yang tidak mungkin membantu.
Baca permintaannya sebelum mengatur ulang apa pun. Pengaturan ulang kata sandi akun tidak melakukan apa pun untuk frasa sandi kunci yang terlupa, sertifikat yang dicabut, atau yang kedaluwarsa, dan mengatur ulang kata sandi ketika kegagalannya adalah validasi sertifikat mengubah perbaikan dua menit menjadi kasus dukungan. Jika keluhan menyebut tanggal berlaku, periksa jam perangkat lebih dulu, lalu jendela sertifikat yang disebut.
Ketika sertifikat benar-benar kedaluwarsa, penggantinya harus datang dari siapa pun yang menerbitkannya. Kunci milik orang lain bukan jalur pembaruan, dan meminjam profil yang berfungsi dari rekan juga bukan.
Apa yang dibuktikan jabat tangan bersih dan apa yang tidak
Mencapai jabat tangan TLS yang selesai berarti hubungan identitas yang dikonfigurasi bertahan: sertifikat server terangkai ke CA Anda dan sertifikat Anda diterima. Itu tidak mengatakan apa pun tentang kebijakan pencatatan operator, dan tidak tentang apakah aplikasi Anda akan berfungsi setelah terowongan naik.
Rute dan DNS adalah tahap selanjutnya dari koneksi, jadi host intranet yang tak terjangkau setelah masuk berhasil adalah masalah konektivitas dan bukan masalah sertifikat. Kerjakan lapisan itu alih-alih menukar kredensial, dan simpan asal profil, materi privatnya, dan pemeriksaan identitasnya bersama-sama saat Anda memberikannya kepada siapa pun.