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, клуч за потпишување на кој му треба неговата фраза и недостасувачки запис за издавање се три различни дефекти, и само еден од нив е за директориумот што го поправивте.
Никогаш не отстранувајте шифрирање на клучот и не проширувајте дозволи на директориумот за да прикриете грешка во патеката. Грешката е евтина за поправка; поправката не е.