Profil dimuat turun, diimport dan kemudian berhenti pada baris 12 fail dengan mesej Unrecognized option yang menamakan keysize. Tiada apa-apa pada akaun berubah, dan pelayan masih menerima klien lain. Yang berubah ialah klien itu sendiri: Ubuntu 24.04 memasang OpenVPN 2.6, manakala eksport itu ditulis untuk 2.4. Pembaikan ialah satu siri pemadaman pendek, dan urutannya penting kerana setiap pilihan lapuk membatalkan penghuraian sebelum yang seterusnya dibaca.

Baca baris ralat sebelum menyentuh fail

OpenVPN menamakan fail dan baris tempat penghuraian berhenti, jadi anda hanya boleh membaiki satu masalah setiap larian. Mulakan profil dari terminal dan bukan applet desktop, kerana applet biasanya menelan stderr dan nombor baris ialah satu-satunya petunjuk yang boleh dipercayai: sudo openvpn --config /etc/openvpn/client/provider.ovpn. Betulkan baris itu, jalankan semula, dan jangkakan kegagalan seterusnya menamakan pilihan yang berbeza.

Ralat penghuraian sentiasa muncul sebelum sebarang jabat tangan TLS, jadi mesej yang menyebut sijil telah melepasi peringkat sintaks. Perbezaan itu menghalang anda daripada menyunting fail yang hanya gagal pengesahan. Baca perkataan pertama mesej itu dan bukan bahagian tengahnya.

Tiga kelas kegagalan, tiga pembaikan berbeza

Eksport lama gagal dalam tiga cara yang boleh dibezakan, dan melipatnya menjadi satu masalah ialah sebab orang memasang semula pakej yang tidak pernah rosak. Perkataan dalam mesej memberitahu anda kelas mana anda berada sebelum anda membuka fail.

  • Ralat penghuraian menamakan fail dan baris, dan berhenti sebelum sebarang trafik wujud.
  • Ralat rundingan bersambung, kemudian melaporkan bahawa kedua-dua hujung tidak dapat bersetuju pada sifer kongsi atau saluran data yang boleh diterima.
  • Ralat pengesahan paling jauh dan menamakan sijil, pengguna atau kelayakan yang ditolak.

Suntingan profil hanya membaiki kelas pertama. Rundingan memerlukan keputusan di kedua-dua hujung terowong, dan kelayakan yang ditolak bukan masalah sintaks sama sekali. Jika mesej anda menyebut sifer kongsi atau saluran data, pemadaman di bawah tidak akan mengubah apa-apa.

Padam pilihan yang dibuang oleh 2.6, dalam urutan ini

Setiap baris ini menghentikan penghuraian sendiri, jadi klien melaporkannya satu demi satu. Turun senarai dan jalankan semula selepas setiap pemadaman.

Buang keysize dahulu, kerana ia tiada padanan moden dan kehadirannya biasanya menandakan sifer yang klien semasa memang menolak. Kemudian buang ncp-disable, yang mengawal rundingan sifer, telah ditamatkan dalam 2.5 dan tiada dalam 2.6. Gantikan ns-cert-type server dengan remote-cert-tls server, yang menyatakan niat yang sama melalui semakan yang disokong.Sejarah perubahan 2.6 menyenaraikan baki pemadaman di sebelah penggantinya, jadi apa-apa yang masih ditolak oleh penghurai mempunyai jawapan yang didokumenkan.

Simpan salinan profil asal sebelum suntingan pertama. Penyedia memang menjana semula eksport, dan perbezaan dengan fail yang tidak disentuh ialah cara terpantas untuk memisahkan perubahan anda daripada perubahan mereka. Jika pemadaman membolehkan klien bermula tetapi terowong masih gagal,anda telah beralih ke kelas rundingan dan baris yang tinggal bukan puncanya. Letakkan versi klien dalam nama fail supaya orang seterusnya tahu keluaran mana yang disasarkan oleh suntingan itu.

Kekalkan BF-CBC hanya sebagai sandaran terbatas

Sesetengah penyedia masih menamatkan pada BF-CBC, yang tidak akan dirundingkan oleh OpenVPN 2.6 tanpa bantuan kerana sifer itu mempunyai blok 64-bit. Pembaikan yang sempit ialah senarai sandaran serta penyedia legacy OpenSSL, bukan penurunan taraf seluruh klien.

providers legacy default
data-ciphers AES-256-GCM:AES-128-GCM
data-ciphers-fallback BF-CBC

Baris pertama memuatkan penyedia legacy supaya OpenSSL masih boleh mencipta sifer itu, yang kedua mengekalkan rundingan moden untuk rakan sebaya yang menyokongnya, dan yang ketiga terpakai hanya apabila pelayan tidak menawarkan apa-apa yang lebih baik. Itu ialah pelemahan terowong yang disengajakan, jadi catat sebabnya di sebelah fail. Minta eksport yang dijana semula daripada penyedia pada masa yang sama, kerana sandaran ialah jambatan dan bukan destinasi.

Jangan gunakan --compat-mode sebagai jawapan menyeluruh. Ia mengubah beberapa tingkah laku sekali gus, termasuk lalai rundingan dan rundingan semula, jadi anda tidak pernah tahu perubahan mana yang penting. Utamakan tiga baris eksplisit di atas, kerana setiap satu menyatakan kesannya sendiri.

Sahkan dengan profil yang benar-benar dimuatkan oleh klien

Sambungan yang diimport selalunya disalin ke direktori sistem, jadi menyunting fail dalam folder muat turun anda mungkin tidak mengubah apa-apa. Cari salinan yang berjalan: sudo grep -rl "remote " /etc/NetworkManager/system-connections /etc/openvpn. Kemudian mulakan terowong dan baca baris log yang melaporkan sifer saluran data yang benar-benar dipilih. Sambungan yang melengkapkan jabat tangan pada sandaran memberitahu anda pelayan tidak pernah menawarkan apa-apa yang moden.

Uji dari rangkaian yang bukan yang dijangka oleh penyedia, supaya portal tawanan atau rangkaian tetamu yang ditapis tidak menyamar sebagai kerosakan profil. Catat versi klien bersama apa-apa permintaan sokongan.

Sebaik terowong naik, hantar satu permintaan yang mesti melaluinya dan satu yang tidak boleh, kemudian sahkan jawapan penyelesai berubah seperti yang anda jangkakan. Jika profil kini dihuraikan tetapi sambungan masih gagal, anda telah meninggalkan masalah sintaks dan teks ralat akan menamakan kelas baharu. Simpan fail yang disunting dalam kawalan versi di sebelah nota yang menamakan keluaran OpenVPN yang disasarkannya.

Artikel berkaitan