Kemudahalihan profil OpenVPN: kunci mudah alih lawan pilihan platform
Fail .ovpn mencampurkan bahan identiti mudah alih dengan arahan yang hanya difahami oleh satu klien. Bandingkan kedua-duanya sebelum menyalahkan sijil atas kegagalan.
Fail .ovpn yang sama membuka terowong dalam satu klien dan gagal dimulakan dalam klien lain, dan sijil biasanya menjadi suspek pertama. Lebih kerap fail mengandungi arahan yang hanya dilaksanakan oleh satu enjin. Profil ialah kontrak dengan klien tertentu, bukan skrip mudah alih.
Pisahkan apa yang bergerak bersama identiti daripada apa yang tergolong pada platform. Kegagalan biasanya kemudian menamakan dirinya sendiri.
Satu fail, dua kontrak
Profil menggabungkan tiga jenis kandungan: bahan identiti seperti sijil CA dan klien serta kunci persendirian, fakta pengangkutan seperti titik akhir jauh dan protokol, dan arahan tingkah laku seperti pengendalian DNS atau pilihan peranti. Dua yang pertama mudah alih secara meluas antara enjin yang menyokong protokol yang sama. Yang ketiga ialah tempat pelaksanaan berbeza. Menganggap keseluruhan fail sebagai satu unit mudah alih itulah yang menghasilkan kegagalan yang mengelirukan.
Fail yang berfungsi dalam GUI pada satu platform tidak semestinya sah untuk klien baris arahan pada platform lain. Walaupun kedua-duanya OpenVPN, penghurai dan set pilihan berbeza. Sebab itu import yang berjaya bukan bukti profil mudah alih.
Bahan mudah alih lawan arahan platform
Bahagian identiti dan pengangkutan ialah bahagian yang perlu dikekalkan. ca, cert, key dan remote menerangkan siapa yang menyambung dan ke mana, dan semuanya membawa maksud yang sama kepada setiap klien yang mematuhi.
Arahan tingkah laku ialah bahagian yang perlu dibandingkan. block-outside-dns, contohnya, wujud untuk menukar tingkah laku DNS dalam Windows. Klien Unix mungkin tidak mengenalinya sama sekali.
Baca senarai pilihan klien penerima, bukan klien penghantar. Manual rujukan OpenVPN 2.6 mendokumenkan pilihan enjin, dan dialog import GUI bukan senarai itu.
Baca ralat penghurai sebelum sijil
Ralat yang menamakan pilihan tidak dikenali ialah kegagalan penghurai, bukan kegagalan pengesahan. Sambungan tidak pernah sampai ke TLS, jadi menukar sijil tidak dapat membantu. Baca ralat pertama daripada klien dan versi sebenar, kemudian buang atau ganti hanya arahan yang tidak dapat dilaksanakan oleh klien itu. Memadam bahagian sijil atau laluan supaya fail dimuatkan ialah cara profil yang berfungsi menjadi tidak selamat.
Jika ralat menyebut jabat tangan, sijil atau sifer, profil telah dihuraikan dan masalahnya di tempat lain.
Simpan fail asal di sebelah fail yang diadaptasi. Apabila fail adaptasi gagal kemudian, fail asal ialah kawalan yang memberitahu sama ada perubahan atau persekitaran yang bergerak.
Keistimewaan ialah sempadan kedua
Keistimewaan ialah sempadan yang lain: mencipta peranti terowong, memasang laluan dan membaca kunci persendirian semuanya bergantung pada kebenaran setempat. Fail kunci yang hanya boleh dibaca oleh root ialah penggunaan biasa, bukan kecacatan profil. Pembetulan terletak pada pemilikan atau keupayaan, bukan pada fail.
Menjalankan klien dengan sudo boleh menyelesaikan penolakan kebenaran setempat, dan ia tidak boleh menambah arahan yang tidak dilaksanakan oleh binari. Ia juga mengubah keyring pengguna mana, laluan konfigurasi dan konteks pengurus rangkaian yang terpakai, jadi hasilnya bukan ujian yang sama.
Sesuaikan dengan sengaja
Apabila pembekal menerbitkan profil berasingan, ambil yang dimaksudkan untuk klien penerima. Menyesuaikan fail platform lain ialah pilihan terakhir. Ia memerlukan rekod setiap pilihan yang diubah dan salinan fail asal.
Uji identiti, penghalaan dan DNS sebagai tiga hasil berasingan. Profil yang mengesahkan dan menghala tetapi memecahkan penyelesaian nama ialah profil yang disesuaikan sebahagiannya, bukan yang berfungsi.