Помилка реєстру Easy-RSA у Windows: перевірте подання реєстру
Це повідомлення реєстру — невдалий пошук інструментів, а не зламаний CA. Порівняйте подання 32 і 64 біт, перш ніж змінювати пакетний файл або PKI.
Пакетний файл зупиняється з повідомленням «Система не вдалося знайти вказаний розділ або значення реєстру», і всі вважають, що центр сертифікації зламаний. Це не так, або принаймні поки що не так: скрипт завершився помилкою під час пошуку програмного забезпечення, перш ніж попросити Easy-RSA щось зробити з ключем. Цей порядок важливий, бо означає, що виправлення — це проблема пошуку, а PKI лише спостерігач. Прочитати рядок, що не спрацював, — це весь діагноз, і це швидше за будь-який обхідний шлях.
Помилка виникає до того, як CA буде зачеплено
Старі пакетні файли Easy-RSA 2 знаходять OpenSSL або встановлення OpenVPN запитом до реєстру, а потім задають змінні за знайденим. Якщо запит нічого не повертає, скрипт переривається до виконання будь-якої операції з сертифікатом.
Отже, повідомлення про ключ реєстру — це доказ про середовище скрипта, а не про каталог CA.
Два подання реєстру, один пакетний файл
32-бітний і 64-бітний процеси можуть бачити різні подання реєстру, і пакетний файл, що виходить з одного, може пропустити запис, який є в іншому. Ці порівняння лише для читання показують різницю для старого ключа, який використовують деякі старі скрипти:
reg query "HKLM\SOFTWARE\OpenVPN" /reg:32
reg query "HKLM\SOFTWARE\OpenVPN" /reg:64
Довідка reg query описує селектори подання. Запустіть обидві команди в тому самому контексті, що й скрипт, який не спрацював, бо подання залежить від того, як запускається процес, а також від прапорців. Якщо запис є лише в одному поданні, порівняйте шлях, на який він указує, зі встановленими інструментами, перш ніж щось змінювати. Ключ, який існує, але вказує на старий каталог встановлення, — це інша несправність, ніж відсутній ключ.
Якщо запису немає в жодному поданні, інсталятор його ніколи не створював, і створене вручну значення не змусить інструменти працювати.
Не додавайте /reg:64 без умов
Спокусливе виправлення — додати 64-бітний селектор до кожного запиту й рухатися далі. У деяких встановленнях це правильно, в інших це надсилає скрипт у подання, де справді нічого немає.
Змінюйте пошук лише після того, як побачите, у якому поданні є очікуване значення.
Виявлення — це не ремонт PKI
Ця помилка не доводить, що сертифікат CA, ключ підпису, файл серійних номерів або база відкликання пошкоджені. Запуск clean-all, скопійованого зі старого посібника, знищить зовсім інший набір об'єктів, а пошук залишиться зламаним. Тримайте ці дві дії окремо в голові та в заявці. Якщо пізніше операція з сертифікатом не вдасться, оцінюйте її за її власними доказами.
Зробіть резервну копію каталогу CA перед будь-яким експериментом, навіть якщо впевнені, що він лише для читання.
Перехід на Easy-RSA 3 — це міграція
Установка, яку підтримують, має використовувати власний засіб запуску та модель конфігурації поточного пакета, і Easy-RSA 3 — це не той самий робочий процес із пакетними файлами, що й Easy-RSA 2. Його швидкий старт для нового PKI не є інструкцією з міграції для наявного центру. Перш ніж змінювати версії, збережіть матеріал CA, а також записи видачі й відкликання, і дотримуйтеся вказівок з оновлення цієї версії. Ініціалізація замінного CA в авторитетному каталозі, щоб помилка виявлення інструментів зникла, — найгірший варіант у списку.
Зміна версії — це проєкт; помилка реєстру — це півдня.
Порівняння, яке справді це вирішує
Запишіть чотири речі й порівняйте їх безпосередньо:
- Який скрипт запускався й який рядок не спрацював.
- Яке подання реєстру запитував цей рядок.
- Який шлях до виконуваного файлу очікував скрипт.
- Яке встановлення насправді є на машині.
Коли ці чотири збігаються, помилка зникає, і будь-яку залишкову проблему з сертифікатом можна читати за її власними доказами, а не звинувачувати CA.