Které rozložení balíčku Easy-RSA ten návod používal?
Návod, který očekává vars nebo build-key, popisuje Easy-RSA 2. Před kopírováním čehokoli zkontrolujte nainstalovanou generaci a pracovní prostor PKI.
Návod vám říká upravit vars v adresáři Easy-RSA, a adresář na vašem počítači takový soubor nemá. Obvykle jde o nesoulad generací, ne o rozbitý balíček. Easy-RSA 2 držel soubor vars vedle shellových pomocníků, jako je build-key; Easy-RSA 3 nabízí jeden příkaz easyrsa a čte konfiguraci ze šablony plus voleb příkazového řádku. Zjistěte, kterou máte, než z návodu cokoli zkopírujete.
Proveďte tyto kontroly v pořadí, protože každá zužuje tu následující.
1. Zjistěte, co je nainstalováno
Na systému z rodiny Debian se zeptejte správce balíčků, které soubory skutečně zaregistroval:
dpkg-query -L easy-rsaSeznam pro aktuální balíček Debian obsahuje make-cadir, program easyrsa, konfigurační šablonu OpenSSL a vars.example. To vám říká, co tato distribuce dodala. Neříká vám, jak jiná distribuce nebo upstreamový tar archiv rozložil stejnou generaci, takže si před výkladem cest přečtěte verzi. Pokud výstup vůbec neukazuje make-cadir, pravděpodobně se díváte na jinou generaci balení, ne na rozbitou instalaci.
easyrsa --version je nejkratší způsob, jak zjistit, o které generaci čtete, a vyplatí se ho spustit před jakýmkoli jiným příkazem v návodu.
2. Rozeznejte generaci 2 od generace 3
Generace 2 dodávala shellové pomocníky a soubor vars, který jste měli upravovat. Generace 3 dodává jeden příkaz easyrsa s podpříkazy a čte konfiguraci ze šablony plus explicitních voleb.
Tento rozdíl vysvětluje většinu hlášení „soubor nenalezen“ na toto téma. Návod napsaný pro 2 vám říká provést source vars a spustit build-key, a instalace 3 neobsahuje ani jedno. Honění chybějícího souboru z kopie jiného počítače je způsob, jak lidé skončí se dvěma generacemi proti jednomu adresáři PKI.
3. Oddělte adresář programu od pracovního prostoru PKI
Nainstalovaný adresář programu je záměrně jen pro čtení. Vaše PKI je samostatný adresář s CA, vydanými certifikáty a soukromými klíči, a právě ten nese oprávnění, která musíte nastavit správně.
Pokud autorita již existuje, najděte její veřejný certifikát a potvrďte její stav než se čehokoli dotknete. Neinicializujte náhradu a nepřepisujte index jen proto, že návod použil jinou cestu. Kopírování veřejných šablon je neškodné, kdežto kopírování soukromého klíče vydavatele ne, a v shellu vypadají obě operace téměř stejně.
4. Zkontrolujte uvozovky, než se pustíte za cestou
Text zkopírovaný z formátované stránky často přichází s typografickými uvozovkami. Bash považuje za uvozovky jen své dokumentované ASCII oddělovače, takže cesta obalená do složených uvozovek se stane doslovným názvem souboru, který neexistuje.
printf '%s\n' "$EASY_RSA"To vypíše hodnotu jedné proměnné místo celého prostředí, což je přesně to, co chcete, když je otázkou, zda hodnota nese cizí znaky nebo mezery. Nepředpokládejte, že EASY_RSA v generaci 3 stále vybírá konfiguraci; místo toho použijte dokumentovanou volbu adresáře PKI pro svou verzi.
5. Zastavte se, než cokoli znovu inicializujete
Jakmile generace programu, nainstalované cesty a role pracovního prostoru souhlasí, zbývající chyba je pravděpodobně problém oprávnění nebo chybějícího stavu a zaslouží si vlastní diagnostiku místo dalšího obejití.
Instalace kešovaného balíčku z jiného vydání, rekurzivní kopírování adresářů nebo vytváření prázdných záznamů vydavatele skrývá původní nesoulad a přidává druhý. Před jakoukoli změnou si zapište verzi, cestu a přesnou chybu. Právě ty tři mění další krok v rozhodnutí místo dalšího odhadu a brání dalšímu člověku v opakování hledání.