Fail batch berhenti dengan mesej “Sistem tidak dapat menemui kunci atau nilai registri yang dinyatakan” dan semua orang menganggap pihak berkuasa sijil sudah rosak. Ia tidak, atau sekurang-kurangnya belum lagi: skrip gagal semasa mencari perisian, sebelum meminta Easy-RSA melakukan apa-apa dengan kunci. Urutan itu penting, kerana ia bermakna pembaikan ialah masalah carian dan PKI hanyalah penonton. Membaca baris yang gagal ialah keseluruhan diagnosis, dan ia mengambil masa lebih singkat daripada mana-mana jalan pintas.

Ralat berlaku sebelum CA disentuh

Fail batch Easy-RSA 2 lama mencari OpenSSL atau pemasangan OpenVPN dengan menanyakan registri, kemudian menetapkan pemboleh ubah berdasarkan apa yang ditemui. Apabila pertanyaan tidak mengembalikan apa-apa, skrip berhenti sebelum sebarang operasi sijil dijalankan.

Jadi mesej tentang kunci registri ialah bukti tentang persekitaran skrip, bukan tentang direktori CA.

Dua paparan registri, satu fail batch

Proses 32-bit dan proses 64-bit boleh melihat paparan registri yang berbeza, dan fail batch yang menganggap satu daripadanya mungkin terlepas entri yang wujud dalam yang lain. Perbandingan baca-sahaja ini menunjukkan perbezaan bagi kunci lama yang digunakan oleh sesetengah skrip lama:

reg query "HKLM\SOFTWARE\OpenVPN" /reg:32
reg query "HKLM\SOFTWARE\OpenVPN" /reg:64

Rujukan reg query mendokumenkan pemilih paparan. Jalankan kedua-duanya dalam konteks yang sama dengan skrip yang gagal, kerana paparan bergantung pada cara proses dimulakan serta pada bendera. Jika entri hanya wujud dalam satu paparan, bandingkan laluan yang ditunjuknya dengan alat yang dipasang sebelum mengubah apa-apa. Kunci yang wujud tetapi menunjuk direktori pemasangan lama ialah kerosakan berbeza daripada kunci yang tiada.

Jika kedua-dua paparan tiada entri itu, pemasang tidak pernah menciptanya, dan membuat nilai secara manual tidak akan membuat alat itu berfungsi.

Jangan tambah /reg:64 tanpa syarat

Pembaikan yang menggoda ialah menambah pemilih 64-bit pada setiap pertanyaan dan teruskan. Pada sesetengah pemasangan itu betul, dan pada yang lain ia menghantar skrip ke paparan yang benar-benar tiada apa-apa.

Tukar carian hanya selepas anda melihat paparan mana yang memegang nilai yang dijangka.

Penemuan bukan pembaikan PKI

Ralat ini tidak membuktikan bahawa sijil CA, kunci tandatangan, fail siri atau pangkalan data pembatalan rosak. Menjalankan clean-all yang disalin daripada tutorial lama akan memusnahkan set objek yang sama sekali berbeza sambil membiarkan carian rosak. Asingkan kedua-dua aktiviti dalam fikiran anda dan dalam tiket. Jika operasi sijil kemudiannya gagal, nilainya berdasarkan buktinya sendiri.

Buat sandaran direktori CA sebelum sebarang eksperimen, walaupun yang anda pasti hanya-baca.

Berpindah ke Easy-RSA 3 ialah migrasi

Pemasangan yang diselenggara harus menggunakan pelancar dan model konfigurasi pakej semasa itu sendiri, dan Easy-RSA 3 bukan aliran kerja fail batch yang sama seperti Easy-RSA 2. Panduan mula pantasnya untuk PKI baharu bukan arahan migrasi untuk pihak berkuasa sedia ada. Sebelum menukar versi, simpan bahan CA serta rekod pengeluaran dan pembatalan, dan ikut panduan peningkatan versi itu. Memulakan CA pengganti di dalam direktori berwibawa supaya ralat penemuan alat hilang ialah pilihan terburuk dalam senarai.

Perubahan versi ialah projek; ralat registri ialah satu petang.

Perbandingan yang benar-benar menyelesaikannya

Tulis empat perkara dan bandingkan terus:

  • Skrip mana yang berjalan, dan baris mana yang gagal.
  • Paparan registri mana yang ditanya oleh baris itu.
  • Laluan boleh laku mana yang dijangkakan skrip.
  • Pemasangan mana yang benar-benar ada pada mesin.

Apabila keempat-empatnya sepadan, ralat hilang, dan sebarang masalah sijil yang tinggal boleh dibaca berdasarkan buktinya sendiri dan bukannya menyalahkan CA.

Artikel berkaitan