Anda menambah laluan cawangan, ia berfungsi, dan kemudian kemas kini firmware atau simpanan dari UI web mengalihkannya. Dua pembetulan kelihatan sama wajar pada saat itu: letak laluan dalam sumber konfigurasi peranti yang disokong, atau tambahnya pada fail yang dijana dari skrip permulaan. Kedua-duanya berkelakuan sama selama seminggu dan berbeza pada peningkatan kedua. Artikel ini membandingkan apa yang sebenarnya dimiliki setiap satu.

Kedua-dua calon memiliki perkara yang berbeza

Sumber konfigurasi yang disokong ialah semua yang peranti anggap sebagai input: medan GUI, profil yang diimport, direktori didokumenkan bagi setiap klien, pangkalan data tetapan yang dibaca oleh pakej pengurusan. Fail server.conf yang dijana ialah output. Menyunting output berfungsi sehingga penjana berjalan semula, dan itu berlaku semasa simpan, semasa but semula dan semasa peningkatan.

Pendekatan skrip menampal output itu selepas penjana selesai. Ia teknik yang sah untuk makmal, dan ia lalai yang salah untuk pejabat cawangan, kerana ia menjadikan laluan bergantung pada padanan teks dan bukannya medan yang didokumenkan.

QuestionSupported config sourcePost-generation script
Survives a GUI saveYesOnly if the save does not regenerate the file
Survives a package upgradeUsually, when the field is documentedNo guarantee; the wrapper can be replaced
Supportable by the vendorYesNo
Obvious to the next adminYes, it is in the UINo, it lives in a wrapper

Apa yang dijana semula oleh peranti, dan bila

Pakej pengurusan biasanya menyimpan tetapan dalam pangkalan data atau set templat dan menjana konfigurasi daemon semasa bermula. Simpanan dari UI web sering menulis semula seluruh fail dan bukannya menampal satu baris. Jika perubahan anda berada dalam fail itu, ia kini hilang, dan tiada apa yang merekodkan amaran kerana dari sudut pandangan peranti tiada apa yang hilang.

Pembalut permulaan mempunyai mod kegagalan kedua. grep untuk arahan dengan jarak tertentu berhenti sepadan selepas perubahan templat, dan skrip itu senyap tidak melakukan apa-apa. Lebih teruk, kemas kini firmware boleh menggantikan pembalut dengan versi baharu, membawa tampalan itu bersamanya. Anda kemudian mempunyai laluan yang wujud selama setahun dan hilang semasa penyelenggaraan yang tiada siapa kaitkan dengan penghalaan.

Apa yang perlu dinyatakan oleh pemilik yang disokong

Awalan cawangan memerlukan tiga pernyataan, bukan satu. Klien mesti mempelajari laluan, pelayan mesti tahu klien yang disahkan mana memiliki awalan, dan bahagian cawangan mesti memulangkan trafik ke alamat terowong yang diberikan kepadanya. Dalam istilah OpenVPN itu bermaksud route yang ditolak, iroute yang sepadan terikat pada klien, dan laluan balik di sisi jauh.

Di sinilah UI peranti mengelirukan. Kotak semak berlabel “benarkan klien mengakses LAN pelayan” menerangkan trafik ke arah rangkaian pelayan itu sendiri. Cawangan anda ialah arah bertentangan: rangkaian di belakang satu klien, boleh dicapai dari sisi pelayan. Label yang sama tidak bermakna sokongan untuk itu, dan arahan yang sah dalam fail bukan janji bahawa pakej akan memeliharanya.

Apabila tiada kawalan yang disokong

Kadang-kadang keluaran yang dipasang benar-benar tidak dapat menyatakan laluan khusus rakan. Maka pilihan jujur ialah get laluan lain yang anda kawal, atau mod tapak-ke-tapak yang disokong di kedua-dua hujung. Kedua-dua hujung mesti bertutur dengannya. Halaman produk yang menyebut tapak-ke-tapak tidak menjadikan profil OpenVPN sembarangan boleh ditukar ganti dengan terowong protokol lain, dan memaksa pasangan itu biasanya menghasilkan terowong separuh bersambung yang kelihatan baik pada halaman status.

Pilih pilihan yang anda boleh terangkan dalam satu ayat kepada sesiapa yang mewarisi rangkaian. Jika jawapannya memerlukan menyebut laluan skrip dan corak teks, reka bentuk itu sudah rapuh.

Jadikan niat boleh diaudit

Rekodkan kontrak di luar peranti: identiti klien berkesan, awalan, get laluan balik, dan medan yang disokong yang membekalkan setiap satu. Eksport konfigurasi melalui mekanisme yang disokong supaya pembinaan semula mempunyai rujukan, dan sahkan perkhidmatan selepas sambung semula, mula semula dan peningkatan dan bukan hanya selepas perubahan.

Bandingkan hasil yang dijana dengan rekod itu apabila sesuatu rosak, dan bukannya memulihkan baris yang tidak dijelaskan dan berharap.rujukan OpenVPN 2.6 ialah tempat untuk mengesahkan bagaimana route dan iroute berinteraksi sebelum anda berhujah dengan UI.

Senarai semak untuk perubahan seterusnya: namakan pemilik, nyatakan kontrak tiga bahagian, eksport niat, dan uji semula selepas peristiwa kitaran hayat peranti itu sendiri dan bukan selepas suntingan anda.

Artikel berkaitan