Perisian tegar pada penghala pengguna atau NAS selalunya membina semula konfigurasi OpenVPN pada setiap permulaan, jadi arahan yang anda tambah hanya bertahan tepat sehingga but seterusnya. Perkara sama berlaku pada kunci yang ditaip dalam borang web, di mana nilai tersimpan boleh kembali rosak selepas disimpan. Tiada satu pun gejala ini bermakna perubahan itu ditolak. Ia bermakna suntingan itu mendarat dalam fail yang dianggap oleh perisian tegar sebagai output, dan tempat kekal berada satu langkah lebih awal dalam jujukan but.

Mengapa fail yang disunting dijana semula

Skrip permulaan memasang konfigurasi pelayan daripada templat dan kemudian melancarkan daemon, yang menjadikan fail yang dipaparkan sebagai artifak binaan dan bukan sumber. Apa-apa yang ditambah selepas permulaan tidak kelihatan kepada larian seterusnya skrip itu. Corak kedua lebih halus: input kunci dan sijil dalam antara muka web disimpan dalam bentuk terlepas, dan menyimpan borang boleh menolak teks terlepas itu ke dalam fail yang dibaca oleh daemon. Sama ada cara, konfigurasi yang dipaparkan ialah tempat yang salah untuk perubahan kekal.

Lihat apa yang ditulis oleh jujukan but dan bila. Jawapannya hampir selalu skrip dalam direktori init atau autojalan perisian tegar.

Masukkan arahan di tempat skrip membina fail

Peranti QTS menjana semula konfigurasi pelayan OpenVPN di dalam skrip init yang memulakan daemon, jadi suntingan mesti berlaku di situ. Tambah lampiran itu tepat sebelum arahan permulaan dan bukan menyunting fail yang dijana.

sed -i '/daemon_mgr/i echo client-config-dir clientconfig >>/etc/openvpn/server.conf' /etc/init.d/vpn_openvpn.sh
grep -c client-config-dir /etc/openvpn/server.conf

Sauhkan sisipan pada arahan yang tidak akan bergerak, kerana nombor baris berubah antara binaan. Oleh sebab skrip init itu sendiri diganti semasa but, perubahan itu mesti dikeluarkan semula daripada cangkuk autojalan perisian tegar setiap kali sistem bermula. Selepas satu but semula, kira kejadian dalam fail yang dijana: satu baris bermakna tampalan berkesan, manakala dua bermakna cangkuk berjalan lebih daripada sekali. Siasat larian berganda secara berasingan, kerana ia bukan kerosakan yang sama seperti perubahan yang hilang.

Baiki borang yang menyimpan kunci terlepas

Pada halaman gaya Asus, medan sijil dan kunci memaparkan teks terlepas, dan menyimpan selepas pelarasan tidak berkaitan boleh menulis entiti itu semula ke cakera. Bekerja daripada salinan yang dinyahkod dan simpan sekali sahaja, apabila semua suntingan sedia.

openssl dhparam -out dh2048.pem 2048
grep -n "BEGIN DH PARAMETERS" dh2048.pem

Apabila menukar set parameter baharu, tampal hanya muatan base64 jika label meminta badan kunci, dan kekalkan baris perisai hanya apabila medan menjangkakan blok PEM penuh. Memulihkan halaman yang sudah disimpan dalam bentuk terlepas biasanya bermaksud mengosongkan input terjejas dan mengaplikasi, yang membolehkan perisian tegar membinanya semula. Jana apa-apa melebihi 2048 bit pada stesen kerja, kerana bekalan entropi penghala menjadikan operasi itu perlahan dan kadangkala tidak boleh dipercayai. Simpan fail parameter di tempat yang boleh anda capai selepas set semula kilang.

Semak semula selepas peningkatan

Kemas kini perisian tegar menggantikan skrip init dan boleh memadam direktori autojalan, jadi tampalan mesti dipasang semula dan diuji semula. Bandingkan fail yang dijana semula dengan salinan yang anda simpan dan sahkan bahawa arahan itu hadir tepat sekali. Nilai yang kelihatan dalam antara muka web bukan bukti bahawa daemon menerimanya, kerana halaman membaca medan tersimpan. Tulis arahan tampalan dan versi perisian tegar dalam nota penyelenggaraan supaya kemas kini seterusnya membawanya ke hadapan.

Kemudian sambungkan klien dan baca log pelayan untuk pilihan yang ditolak. Tetapan yang pernah wujud hanya dalam borang ialah tetapan yang tiada siapa telah uji.

Artikel berkaitan