Урок ви казва да редактирате vars в директорията Easy-RSA, а директорията на вашата машина няма такъв файл. Обикновено това е несъответствие на поколенията, а не счупен пакет. Easy-RSA 2 държеше файл vars до shell помощници като build-key; Easy-RSA 3 предлага една команда easyrsa и чете конфигурация от шаблон плюс опции от командния ред. Разберете кое от двете имате, преди да копирате каквото и да е от ръководството.

Изпълнете тези проверки по ред, защото всяка стеснява следващата.

1. Направете опис на инсталираното

На система от семейството Debian попитайте мениджъра на пакети кои файлове действително е регистрирал:

dpkg-query -L easy-rsa

Списъкът за текущия пакет Debian включва make-cadir, програмата easyrsa, шаблон за конфигурация на OpenSSL и vars.example. Това ви казва какво е доставила тази дистрибуция. То не ви казва как друга дистрибуция или tar архив от upstream е подредил същото поколение, затова прочетете версията, преди да тълкувате пътищата. Ако изходът изобщо не показва make-cadir, вероятно гледате друго поколение на пакетиране, а не счупена инсталация.

easyrsa --version е най-краткият начин да разберете за кое поколение четете, и си заслужава да се изпълни преди всяка друга команда в ръководство.

2. Различавайте поколение 2 от поколение 3

Поколение 2 доставяше shell помощници и файл vars, който се очакваше да редактирате. Поколение 3 доставя една команда easyrsa с подкоманди и чете конфигурация от шаблон плюс явни опции.

Тази разлика обяснява повечето съобщения „файлът не е намерен“ по темата. Ръководство, написано за 2, ви казва да изпълните source vars и build-key, а инсталация на 3 не съдържа нито едно от двете. Търсенето на липсващия файл в копие от друга машина е начинът, по който хората започват да въртят две поколения върху една PKI директория.

3. Отделете програмната директория от работното пространство PKI

Инсталираната програмна директория е само за четене по замисъл. Вашата PKI е отделна директория с CA, издадените сертификати и частните ключове, и именно тя носи правата, които трябва да настроите правилно.

Ако вече съществува орган, намерете публичния му сертификат и потвърдете състоянието му преди да докоснете каквото и да е. Не инициализирайте заместител и не презаписвайте индекса, защото урок е използвал друг път. Копирането на публични шаблони е безвредно, а копирането на частния ключ на издател не е, и в shell двете операции изглеждат почти еднакво.

4. Проверете кавичките, преди да гоните път

Текст, копиран от форматирана страница, често пристига с типографски кавички. Bash третира като кавички само документираните си ASCII разделители, така че път, обвит в къдрави кавички, става буквално име на файл, което не съществува.

printf '%s\n' "$EASY_RSA"

Това отпечатва стойността на една променлива, а не цялата среда, което е точно желаното, когато въпросът е дали стойността носи странични знаци или интервали. Не приемайте, че EASY_RSA все още избира конфигурация в поколение 3; вместо това използвайте документираната опция за PKI директория за вашата версия.

5. Спрете, преди да преинициализирате каквото и да е

След като поколението на програмата, инсталираните пътища и ролята на работното пространство съвпадат, останалата грешка вероятно е проблем с права или липсващо състояние и заслужава собствена диагностика, а не още едно заобикаляне.

Инсталирането на кеширан пакет от друго издание, рекурсивното копиране на директории или създаването на празни записи на издател скрива първоначалното несъответствие и добавя второ. Запишете версията, пътя и точната грешка, преди да промените каквото и да е. Тези три са това, което превръща следващата стъпка в решение вместо в още едно предположение, и те пазят следващия човек от повторение на търсенето.

Подобни статии