Dua direktori yang kelihatan serupa dalam tutorial melakukan kerja yang sama sekali berbeza. Satu menyimpan pihak berkuasa sijil: kunci persendiriannya, pembilang nombor siri dan rekod segala yang telah ditandatanganinya. Satu lagi menyimpan apa yang diperlukan oleh daemon untuk bermula dan melayani klien. Meletakkan kedua-duanya pada hos yang sama di bawah akaun yang sama adalah mudah untuk satu petang dan mahal untuk seluruh hayat penggunaan, kerana daemon kemudian berjalan di sebelah satu-satunya kunci yang boleh mencipta sebarang identiti yang dikehendakinya.

Apa yang terkandung dalam ruang kerja CA

Direktori PKI ialah keadaan pengeluar, bukan konfigurasi. Ia mengandungi kunci persendirian dan sijil CA, fail nombor siri, indeks sijil yang dikeluarkan dan bahan bagi setiap identiti yang dihasilkan daripadanya.

Menandatangani permintaan mengubah keadaan itu, sebab itu ruang kerja milik akaun yang dikawal pentadbir pada hos tempat perkhidmatan VPN tidak berjalan. Sesiapa yang boleh membaca kunci persendirian CA boleh mengeluarkan sijil yang akan dipercayai pelayan, jadi perlindungan kunci itu ialah keseluruhan model kepercayaan dalam satu fail. Menyalinnya ke lokasi kedua untuk menjimatkan satu langkah mencipta benda kedua untuk dilindungi dan benda kedua untuk dilupakan. Setiap tandatangan juga menambah nombor siri dan menambahkan entri pada indeks, sebab itu ruang kerja ialah satu salinan keadaan dan bukan folder fail.

Sijil awam CA berbeza. Ia bertujuan untuk diedarkan, dan itulah yang digunakan klien dan pelayan untuk mengesahkan satu sama lain.

Apa yang dibaca daemon semasa bermula

Pelayan yang berjalan menggunakan set kecil: sijilnya sendiri, kunci persendiriannya sendiri, sijil CA untuk mengesahkan rakan dan bahan kunci apa pun yang diperlukan oleh mod pilihannya. Ia membaca laluan itu semasa bermula dan sekali lagi semasa dimuat semula.

Pemilikan mesti dinilai terhadap unit yang benar-benar dilancarkan, bukan terhadap shell root interaktif. Sandbox yang diisytiharkan boleh menjadikan sebahagian sistem fail sebagai baca sahaja atau tidak kelihatan walaupun ujian manual sebagai root berjaya.

systemctl show -p User -p Group -p ReadOnlyPaths [email protected]
stat -c '%a %U:%G' /etc/openvpn/server/server.key
runuser -u openvpn -- test -r /etc/openvpn/server/server.key; echo $?

Baris ketiga itulah yang orang langkau. Ia bertanya kepada akaun daemon sendiri sama ada ia boleh membaca kunci itu, dan itulah satu-satunya versi soalan yang penting setelah keistimewaan digugurkan. Keluar sifar sebagai root tidak memberitahu apa-apa tentang apa yang berlaku selepas pengguguran itu.

Kedua-dua laluan kegagalan patut dipisahkan sebelum anda mengubah sebarang kebenaran. Kegagalan tandatangan menunjuk kepada direktori PKI, kebenaran carian pada direktori induknya dan akaun yang menjalankan pengeluar. Kegagalan permulaan menunjuk kepada unit, direktori kerjanya dan laluan yang dinamakan dalam konfigurasi pelayan. Menjadikan seluruh pokok boleh dibaca oleh semua tidak membaiki mana-mana satu pun, dan ia menghapuskan sempadan yang menjadi sandaran kedua-duanya.

Mengapa menyalin kunci CA ke pelayan gagal kemudian

Salinan biasanya bermula sebagai langkah penyahpepijatan: seseorang mahu memperbaharui klien pada hos VPN, jadi kunci CA berakhir di /etc/openvpn dan pembaharuan berjaya. Tugas segera berjaya, dan sempadan itu hilang.

Kemudian pelayan disandarkan, dan pihak berkuasa tandatangan menyertai sandaran. Snapshot, himpunan sokongan atau salinan direktori konfigurasi kini membawa keupayaan mengeluarkan identiti dipercayai selagi CA sah. Sesiapa yang memegang salinan itu boleh mencipta sijil untuk mana-mana nama yang diterima pelayan, termasuk nama yang tidak pernah dikeluarkan. Satu-satunya rekod pengeluaran itu ialah yang mereka pilih untuk disimpan.

Pemulihan daripada keadaan itu bukan soal memadam fail. Anda perlu memutuskan sama ada kunci itu terdedah, memutar CA jika ya, dan mengagihkan semula kepercayaan kepada setiap rakan. Ruang kerja berasingan mengelakkan seluruh perbualan itu.

Akaun, direktori, sandaran

Beri pengeluar akaun dan direktori rumah sendiri, dijauhkan daripada hos VPN apabila praktikal. Beri daemon akaun berbeza, dengan akses baca kepada bahan yang digunakan dan akses tulis kepada apa-apa yang mengeluarkan sijil. Gunakan dengan menyalin sijil awam ke luar dan jangan sekali-kali menarik keadaan persendirian pengeluar ke dalam. Sandarkan kedua-dua peranan secara berasingan, kerana kepekaan dan kisah pemulihan mereka berbeza.

Selepas pembatalan, kemas kini fail CRL yang dinamakan oleh konfigurasi pelayan, kemudian muat semula perkhidmatan supaya sambungan baharu membacanya. Dokumentasi Easy-RSA merangkumi susun atur ruang kerja dan aliran tandatangan; peraturan pemilikan di sekelilingnya kekal sebagai keputusan tentang hos anda. Sahkan apa yang dimuatkan oleh perkhidmatan dengan openssl crl -in /etc/openvpn/crl.pem -noout -lastupdate -nextupdate daripada menganggap muat semula telah mengambilnya.

Ujian yang membuktikan pemisahan

Periksa kes negatif, bukan hanya yang berfungsi. Tandatangani sijil daripada akaun pengeluar seperti yang direka, kemudian sahkan bahawa akaun yang sama tidak boleh memulakan perkhidmatan atau membaca kunci persendirian pelayan. Kemudian sahkan bahawa akaun daemon tidak boleh membaca kunci persendirian CA.

Ketiga-tiga pemeriksaan itu mengambil beberapa minit dan bertahan melalui pertukaran kakitangan, kerana ia pernyataan tentang kebenaran dan bukan tentang tabiat. Tuliskan hasilnya bersama laluan dan akaun yang diliputinya, serta tarikh anda menjalankannya. Orang seterusnya yang mewarisi penggunaan ini jika tidak akan memperoleh semula sempadan itu daripada tutorial yang tidak pernah memilikinya. Rekod bertarikh juga yang menjadikan semakan seterusnya mengambil masa beberapa minit dan bukan satu petang.

Artikel berkaitan