Vilken CA-fil hör hemma i en OpenVPN-profil med bara lösenord?
CA-fältet verifierar servern, inte användaren. Se vad profilen redan innehåller, skilj på de fyra materialtyperna och läs nästa fel.
Gå igenom fyra frågor i ordning och CA-dialogen är inte längre tvetydig. Vilket material utfärdade operatören egentligen, vad innehåller profilen redan, vilket fält frågar, och vad händer efter att filen har laddats? Stanna vid den första frågan du inte kan besvara utifrån operatörens egna instruktioner, för att gissa vidare är precis det sätt på vilket ett offentligt CA-certifikat hamnar i par med en privat nyckel som aldrig borde ha lämnat servern.
Ordningen spelar roll: de två sista frågorna är bara meningsfulla när du vet vilket material som ska finnas.
Börja med det profilen redan innehåller
Öppna profilen i en textredigerare och leta efter ett ca-block innan du letar efter en fil. Ett inbäddat ca-block med operatörens offentliga CA betyder att profilen är självständig, och en klient som fortfarande begär en CA-fil läser kanske en annan profil eller en ofullständig import. Om profilen i stället har en ca-rad som pekar på en sökväg är den sökvägen relativ till klientens arbetskatalog i vissa integrationer och absolut i andra. Notera vilken form du har innan du ändrar något.
ca /absolute/path/operator-ca.crt auth-user-pass remote-cert-tls server
Kontrollera det levererade paketet för de filer som profilen hänvisar till: ett CA-certifikat, ibland ett separat klientcertifikat och en nyckel, och möjligen en tls-auth- eller tls-crypt-fil. En profil som hänvisar till fyra filer men anländer med två är ofullständig, och ingen mängd fältpekande reparerar det. Be operatören om den saknade delen i stället för att ersätta den med ett certifikat du råkar ha.
Skilj på fyra materialtyper
CA-certifikatet är offentligt material som används för att verifiera serverns identitet. Ett klientcertifikat identifierar användaren eller enheten för servern. En privat nyckel är den hemliga halvan av det klientcertifikatet, och den får aldrig vara CA:ns signeringsnyckel eller en servernyckel. tls-auth- eller tls-crypt-material är en separat delad hemlighet som skyddar kontrollkanalen. Dessa fyra är inte utbytbara, och att rikta CA-fältet mot ett klientcertifikat ger ett verifieringsfel som ser ut som ett tillitsproblem.
Autentisering med bara lösenord ändrar vilken av de fyra du behöver, inte vad de betyder. Med auth-user-pass och remote-cert-tls server verifierar klienten fortfarande servern mot en CA, och därför visas CA-fältet även när det inte finns något klientcertifikat. Operatörens policy avgör om ett klientcertifikat också krävs, och ingen dialog kan berätta det för dig.
Peka klienten mot tillitsfilen
Välj själva CA-certifikatfilen, inte mappen som innehåller den och inte ett .p12-paket som innehåller en klientidentitet. I Windows beter sig sökvägssyntaxen och filväljaren annorlunda än Linux-exemplen i de flesta guider, så använd det den installerade klienten accepterar och bekräfta att filen är läsbar för kontot som kör den. Ett behörighetsproblem och en saknad fil ser likadana ut i dialogen men ger olika loggrader. Öppna profilinställningarna igen efter valet för att bekräfta att klienten behöll valet.
<ca> -----BEGIN CERTIFICATE----- ...operator-provided public CA... -----END CERTIFICATE----- </ca>
Om klienten stöder inbäddade block, föredra operatörens inbäddade profil framför en handbyggd. Inbäddat material följer med profilen och överlever ny import, medan en absolut sökväg bryts i samma stund som profilen flyttas till en annan maskin.
Läs nästa fel, inte samma
Poängen med att leverera rätt CA är att ändra felet, inte att få det att försvinna. Ett serveridentitetsfel efter att CA:n har laddats betyder att certifikatet inte matchade det förväntade namnet eller remote-cert-tls-förväntan, vilket är en annan reparation än en lösenordsavvisning. En lösenordsavvisning betyder att TLS-lagret lyckades och att uppgifterna är fel. Behåll det första nya meddelandet; det är det användbara.
En klient som ansluter men inte når något har gått helt förbi tillit och står nu inför en routing- eller DNS-fråga.
Inaktivera aldrig verifieringen för att komma förbi den dialogen. En klient som accepterar vilket certifikat som helst har ingen anledning att fråga efter en CA, och tunneln den bygger är inte den operatören avsåg.