Памылка 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.