Een tutorial zegt dat je vars moet bewerken in de Easy-RSA-map, en de map op je machine heeft zo'n bestand niet. Meestal is dat een generatieverschil en geen kapot pakket. Easy-RSA 2 had een vars-bestand naast shell-hulpprogramma's zoals build-key; Easy-RSA 3 biedt één easyrsa-opdracht en leest configuratie uit een sjabloon plus opdrachtregelopties. Zoek uit welke je hebt voordat je iets uit de handleiding kopieert.

Voer deze controles in volgorde uit, want elke controle vernauwt de volgende.

1. Inventariseer wat er is geïnstalleerd

Vraag op een systeem uit de Debian-familie aan de pakketbeheerder welke bestanden het echt heeft geregistreerd:

dpkg-query -L easy-rsa

De lijst voor het huidige Debian-pakket bevat make-cadir, het easyrsa-programma, een OpenSSL-configuratiesjabloon en vars.example. Dat vertelt je wat deze distributie heeft geleverd. Het vertelt je niet hoe een andere distributie of een upstream-tarball dezelfde generatie heeft ingedeeld, dus lees de versie voordat je de paden interpreteert. Als de uitvoer helemaal geen make-cadir toont, kijk je waarschijnlijk naar een andere pakketteringsgeneratie en niet naar een kapotte installatie.

easyrsa --version is de kortste manier om te weten over welke generatie je leest, en het is de moeite waard om het vóór elke andere opdracht in een handleiding uit te voeren.

2. Onderscheid generatie 2 van generatie 3

Generatie 2 leverde shell-hulpprogramma's en een vars-bestand dat je moest bewerken. Generatie 3 levert één easyrsa-opdracht met subopdrachten, en leest configuratie uit een sjabloon plus expliciete opties.

Dat verschil verklaart de meeste meldingen dat een bestand niet is gevonden over dit onderwerp. Een handleiding voor 2 zegt dat je source vars en build-key moet uitvoeren, en een installatie van 3 bevat geen van beide. Het ontbrekende bestand achterna zitten vanuit de kopie van een andere machine is hoe mensen twee generaties tegen één PKI-map laten draaien.

3. Scheid de programmamap van de PKI-werkruimte

De geïnstalleerde programmamap is ontworpen als alleen-lezen. Je PKI is een aparte map met de CA, de uitgegeven certificaten en de privésleutels, en die map draagt de rechten die je goed moet instellen.

Als er al een autoriteit bestaat, zoek het openbare certificaat en bevestig de status ervan voordat je iets aanraakt. Initialiseer geen vervanging, en overschrijf de index niet omdat een tutorial een ander pad gebruikte. Openbare sjablonen kopiëren is onschadelijk, maar de privésleutel van een uitgever kopiëren niet, en in een shell lijken de twee handelingen bijna identiek.

4. Controleer de aanhalingstekens voordat je een pad achterna gaat

Tekst die van een opgemaakte pagina is gekopieerd, komt vaak met typografische aanhalingstekens binnen. Bash behandelt alleen de gedocumenteerde ASCII-scheidingstekens als aanhaling, dus een pad tussen krullende aanhalingstekens wordt een letterlijke bestandsnaam die niet bestaat.

printf '%s\n' "$EASY_RSA"

Dat drukt de waarde van één variabele af in plaats van de hele omgeving, wat je wilt wanneer de vraag is of de waarde vreemde tekens of witruimte bevat. Ga er niet van uit dat EASY_RSA in generatie 3 nog de configuratie selecteert; gebruik in plaats daarvan de gedocumenteerde PKI-mapoptie voor jouw versie.

5. Stop voordat je iets opnieuw initialiseert

Zodra de programmageneratie, de geïnstalleerde paden en de rol van de werkruimte overeenkomen, is een overgebleven fout waarschijnlijk een rechten- of ontbrekende-toestandprobleem, en dat verdient een eigen diagnose in plaats van nog een omweg.

Een gecacht pakket uit een andere release installeren, mappen recursief kopiëren of lege uitgeverrecords aanmaken verbergt de oorspronkelijke afwijking en voegt een tweede toe. Schrijf de versie, het pad en de exacte fout op voordat je iets wijzigt. Die drie maken van de volgende stap een beslissing in plaats van nog een gok, en ze weerhouden de volgende persoon ervan de zoektocht te herhalen.

Gerelateerde artikelen