Ada dua nama yang berperan sebelum klien terhubung: nama file di laptop (nuc.ovpn) dan identitas yang diturunkan server dari kredensial. Pencarian client-config-dir memakai yang kedua. Mengganti nama profil di klien, atau menambahkan .conf ke file di server, tidak mengubah file mana yang dibuka server.

Perbandingan yang berguna bukan «nama mana yang saya pakai» melainkan «aturan mana yang diterapkan server», karena autentikasi sertifikat dan autentikasi nama pengguna/kata sandi dapat menghasilkan nama efektif berbeda dari login yang sama.

Nama profil versus common name sertifikat

Pada penyiapan berbasis sertifikat bawaan, server mengambil common name X.509 dan mencari file dengan nama persis itu di dalam client-config-dir. Profil bernama nuc.ovpn yang sertifikatnya bertuliskan tester akan mengarah ke /etc/openvpn/server/ccd/tester. Nama file klien tidak pernah masuk perhitungan. Di situlah ketidakcocokan pertama bersembunyi.

Karena itu direktori berisi profil dengan nama rapi bisa selalu meleset. File tidak dicocokkan berdasarkan subject, alamat surel, atau nama yang tampil di GUI; file dicocokkan berdasarkan string common name.

Pada sistem file yang peka huruf besar-kecil, Tester dan tester adalah dua file berbeda, dan hanya satu yang pernah dibuka. Periksa common name dari sertifikat yang benar-benar disajikan klien, bukan dari salinan di catatan Anda.

username-as-common-name membalik aturannya

Saat server menjalankan autentikasi nama pengguna/kata sandi dengan username-as-common-name, nama pengguna yang terautentikasi menggantikan common name sertifikat untuk pencarian ini.

Bandingkan kedua kasus secara langsung: dengan identitas sertifikat, file mengikuti sertifikat dan perubahan kata sandi tidak relevan; dengan identitas nama pengguna, file mengikuti nama login dan penerbitan ulang sertifikat tidak relevan. Kolom mana yang disubstitusi server, itulah yang menjadi acuan penggantian nama. Sertifikat yang diterbitkan ulang dengan CN baru diam-diam mengubah target pencarian, dan file CCD lama tetap ada di disk dan tampak benar.

Ada konfigurasi campuran, dan di situlah sebagian besar kebingungan dimulai. Jika satu blok layanan mengaktifkan substitusi dan yang lain tidak, nama efektif bergantung pada instans mana yang menangani koneksi. Pastikan konfigurasi yang aktif alih-alih mengasumsikan file global berlaku. Referensi opsi server hulu mendokumentasikan pencarian file bernama dan fallback opsional.

Apa yang dibaca server, dan apa yang diam-diam dilewatinya

Dua perbedaan kecil menentukan apakah sebuah file dipilih. Yang pertama adalah ekstensi tambahan. Yang kedua adalah karakter nyasar di nama.

OpenVPN tidak menambahkan .conf pada nama yang dicarinya, jadi tester.conf tidak cocok dengan tester. Editor yang menyembunyikan ekstensi bisa meninggalkan file yang tampak benar di daftar dan tidak pernah cocok.

Bila tidak ada file yang cocok, server dapat beralih ke file bernama DEFAULT. Jadi masuknya sebagian pengaturan bukan bukti bahwa file per klien dipakai. Bandingkan alamat yang diberikan atau rute yang didorong dengan apa yang akan dihasilkan file per klien. Izin adalah filter ketiga, karena server membuka file setelah melepas hak istimewa; shell root yang bisa membacanya tidak membuktikan apa pun.

Nama file yang benar tidak memvalidasi isinya

Pemilihan dan isi adalah kegagalan yang terpisah. Setelah file yang tepat dibuka, direktifnya masih harus valid untuk klien itu.

ifconfig-push harus memberikan alamat yang benar-benar dapat dipakai topologi, dan iroute hanya masuk akal untuk subnet terarah di belakang klien itu.

Satu identitas, beberapa perangkat

Dua laptop yang menyajikan common name sama memilih file yang sama dan menerima pengaturan khusus klien yang sama. Jika Anda perlu alamat terpisah atau pencabutan terpisah, Anda perlu identitas terpisah, bukan dua salinan satu file.

Perbandingannya adalah antara berbagi identitas dan menerbitkan satu sertifikat per perangkat. Berbagi lebih sederhana dikelola dan lebih kasar dicabut, sedangkan sertifikat per perangkat memakan lebih banyak penyiapan dan memberi Anda unit bersih untuk dinonaktifkan.

Artikel terkait