Easy-RSA кажа, што PKI адсутнічае? Ён глядзіць у іншым месцы
Адсутны ключ CA або index.txt звычайна азначае, што Easy-RSA 3 выбраў іншы каталог. Спачатку праверце селектар PKI, парадак прыярытэту і адбітак эмітэнта.
Каманда спыняецца з адсутным ca.crt або адсутным index.txt, а CA выдае сертыфікаты ўжо месяцы. У самім цэнтры сертыфікацыі нічога не змянілася; каманда проста зірнула ў іншае месца. Easy-RSA 3 вызначае каталог PKI з опцыі, зменнай асяроддзя, файла vars і ўбудаванага значэння па змаўчанні, і любая з гэтых крыніц можа паказваць убок ад цэнтра сертыфікацыі разгортвання. Праверце, якая з іх перамагла, перш чым нешта ствараць.
Памылка называе файл, а не каталог
Каталог усталявання і каталог эмітэнта — два розныя месцы. Знайсці easyrsa на машыне даказвае толькі тое, што інструмент усталяваны, а не што ён знайшоў цэнтр сертыфікацыі, якому давярае ваш VPN.
Таму пераўсталяванне пакета або паўторны запуск кроку init выглядае плённа і нічога не змяняе.
Спачатку праверце селектар
У Easy-RSA 3 селектарам з'яўляецца EASYRSA_PKI або адпаведная опцыя --pki-dir. Перадайце абсалютны шлях, напрыклад --pki-dir=/srv/pki/office, і адказ перастане залежаць ад таго, дзе вы выпадкова стаялі. Гэтая адна звычка прыбірае цэлы клас гэтай памылкі, асабліва для скрыптоў з cron або з копіі CI.
Спачатку пацвердзіце пакаленне, бо звычка Easy-RSA 2 з файлам vars разам з build-key — гэта іншая мадэль, чым тая, якую чакае Easy-RSA 3. easyrsa --version друкуе пакаленне, перш чым рабіць што-небудзь яшчэ, а ./easyrsa --help пералічвае падкаманды: мэта build-key азначае 2.x, тады як build-client-full азначае 3.x. Перанос старога шляху KEY_DIR у выклік 3.x таму, што назва каталога выглядае знаёмай, дае менавіта гэтую памылку.
Калі радок версіі і сінтаксіс каманды не супадаюць, спыніцеся і прачытайце дакументацыю ўсталяванага выпуску.
Прыярытэт тлумачыць прайграны файл vars
Задакументаваны прыярытэт — опцыя каманднага радка, потым асяроддзе, потым файл vars, потым убудаванае значэнне па змаўчанні. Таму правільнае значэнне ў vars прайграе ўспадкаванай зменнай асяроддзя, і гэта ціхая версія гэтай адмовы. Праверце мэтавыя зменныя і выбар файла, а не вылівайце ўсё асяроддзе ў тыкет. Розніца паміж імі звычайна — сакрэт.
Прайдзіце ланцужок па парадку і адзначце, якая крыніца дала шлях, які выкарыстала каманда. Калі вы гэта ведаеце, выпраўленне — гэта сцяг або export, а не новы цэнтр сертыфікацыі.
Даведнік канфігурацыі Easy-RSA вызначае селектар і прыярытэт, і менавіта на яго трэба спасылацца ў тыкеце.
Пацвердзіце эмітэнта публічным матэрыялам
Пры звычайным файлавым эмітэнце прачытайце ca.crt і супастаўце яго адбітак з запісам эмітэнта, які вы ўхвалілі. Супадаючае імя суб'екта не з'яўляецца доказам ідэнтычнасці, як і каталог з назвай production. Толькі адбітак звязвае знойдзены файл з цэнтрам сертыфікацыі, якому павінны давяраць вашыя аднарангі.
Дастаткова праверкі толькі для чытання: openssl x509 -in /srv/pki/office/ca.crt -noout -subject -issuer -serial -fingerprint -sha256.
Затым вызначце ролю каталога. Каталог запытаў, які выкарыстоўвае кліент, не з'яўляецца базай эмітэнта, а ключ подпісу, які захоўваецца афлайн, не мае чаго рабіць на кожным VPN-хосце. Адсутны ca.key — гэта ўласцівасць праекта ў такой схеме, а не дазвол вынаходзіць замену цэнтра сертыфікацыі.
Калі стан сапраўды знік
Часам шлях правільны, а стану сапраўды няма. Пусты index.txt і перазапушчаны паслядоўны лічыльнік даюць вам PKI, якая выглядае здаровай і не можа нічога даказаць пра сертыфікаты, якіх яна ніколі не бачыла: абнаўленні не адклічуць старыя, а новыя нумары сутыкнуцца з гісторыяй. Замест гэтага аднавіце з ухваленай рэзервовай копіі CA, бо ініцыялізацыя пустой PKI у іншым месцы проста пераносіць памылку і пакідае другі, незвязаны цэнтр сертыфікацыі.
Калі шлях і эмітэнт супадаюць, разглядайце наступную адмову па сутнасці. Permission denied, ключ подпісу, якому патрэбна ягоная парольная фраза, і адсутны запіс выпуску — гэта тры розныя няспраўнасці, і толькі адна з іх пра каталог, які вы толькі што выправілі.
Ніколі не здымайце шыфраванне ключа і не пашырайце правы каталога, каб замазаць памылку шляху. Памылку танна выправіць; аднаўленне — не.