Een zelfondertekend certificaat maken met OpenSSL

Een zelfondertekend certificaat maken met OpenSSL
Lezers zoals jij steunen MUO. Wanneer u een aankoop doet via links op onze site, kunnen we een aangesloten commissie verdienen. Lees verder.

SSL/TLS-certificaten zijn essentieel voor het beveiligen van uw webapplicatie of server. Hoewel verschillende betrouwbare certificeringsinstanties tegen betaling SSL/TLS-certificaten leveren, is het ook mogelijk om met OpenSSL een zelfondertekend certificaat te genereren. Hoewel zelfondertekende certificaten niet de goedkeuring van een vertrouwde autoriteit hebben, kunnen ze toch uw webverkeer versleutelen. Dus hoe kunt u OpenSSL gebruiken om een ​​zelfondertekend certificaat voor uw website of server te genereren?





MAAK GEBRUIK VAN DE VIDEO VAN DE DAG SCROLL OM DOOR TE GAAN MET INHOUD

Hoe OpenSSL te installeren

OpenSSL is open source-software. Maar als je geen programmeerachtergrond hebt en je je zorgen maakt over bouwprocessen, heeft het een beetje een technische opzet. Om dit te voorkomen, kunt u de nieuwste versie van de OpenSSL-code downloaden, volledig gecompileerd en klaar om te installeren de site van slproweb .





Selecteer hier de MSI-extensie van de nieuwste OpenSSL-versie die geschikt is voor uw systeem.





  Screenshot van de slproweb-website voor OpenSSL-download

Beschouw als voorbeeld OpenSSL op D:\OpenSSL-Win64 . U kunt dit wijzigen. Als de installatie is voltooid, open PowerShell als beheerder en navigeer naar de submap met de naam bak in de map waar je OpenSSL hebt geïnstalleerd. Gebruik hiervoor de volgende opdracht:

 cd 'D:\OpenSSL-Win64\bin' 

Je hebt nu toegang tot openssl.exe en kan het uitvoeren zoals je wilt.



  Voer de versie-opdracht uit om te zien of openssl is geïnstalleerd

Genereer uw privésleutel met OpenSSL

U hebt een persoonlijke sleutel nodig om een ​​zelfondertekend certificaat te maken. In dezelfde bin-map kunt u deze privésleutel maken door de volgende opdracht in PowerShell in te voeren nadat u deze als admin hebt geopend.

 openssl.exe genrsa -des3 -out myPrivateKey.key 2048 

Deze opdracht genereert een 2048-bits lange, 3DES-gecodeerde RSA-privésleutel via OpenSSL. OpenSSL vraagt ​​u om een ​​wachtwoord in te voeren. Je moet een gebruiken sterk en gemakkelijk te onthouden wachtwoord . Nadat u tweemaal hetzelfde wachtwoord hebt ingevoerd, heeft u met succes uw RSA-privésleutel gegenereerd.





hoe google back-up en synchronisatie te verwijderen
  Uitvoer van de opdracht die is gebruikt om de RSA-sleutel te genereren

U kunt uw persoonlijke RSA-sleutel vinden met de naam myPrivateKey.sleutel .

Hoe maak je een CSR-bestand aan met OpenSSL

De privésleutel die u aanmaakt, is op zichzelf niet voldoende. Daarnaast heb je een CSR-bestand nodig om een ​​zelfondertekend certificaat te maken. Om dit CSR-bestand te maken, moet u een nieuwe opdracht invoeren in PowerShell:





 openssl.exe req -new -key myPrivateKey.key -out myCertRequest.csr 

OpenSSL vraagt ​​ook om het wachtwoord dat je hebt ingevoerd om hier de privésleutel te genereren. Het zal verder om uw wettelijke en persoonlijke informatie vragen. Let op dat u deze informatie correct invoert.

  Uitvoer van de opdracht die is gebruikt om het CSR-bestand te genereren

Bovendien is het mogelijk om alle bewerkingen tot nu toe uit te voeren met een enkele opdrachtregel. Als u de onderstaande opdracht gebruikt, kunt u zowel uw persoonlijke RSA-sleutel als het CSR-bestand in één keer genereren:

 openssl.exe req -new -newkey rsa:2048 -nodes -keyout myPrivateKey2.key -out myCertRequest2.csr 
  Uitvoer van opdracht die wordt gebruikt om RSA- en CSR-bestanden in één keer aan te maken

U ziet nu het bestand met de naam mijnCertRequest.csr in de desbetreffende map. Dit CSR-bestand dat u maakt, bevat informatie over:

  • De instelling die het certificaat aanvraagt.
  • Algemene naam (d.w.z. domeinnaam).
  • Openbare sleutel (voor coderingsdoeleinden).

De CSR-bestanden die u maakt, moeten door bepaalde autoriteiten worden beoordeeld en goedgekeurd. Hiervoor moet u het CSR-bestand rechtstreeks naar de certificeringsinstantie of andere intermediaire instellingen sturen.

Deze instanties en makelaarskantoren onderzoeken of de door u verstrekte gegevens correct zijn, afhankelijk van de aard van het door u gewenste certificaat. Mogelijk moet u sommige documenten ook offline verzenden (fax, e-mail, enz.) om te bewijzen of de informatie juist is.

Voorbereiding van het certificaat door een certificeringsinstantie

Wanneer u het door u gemaakte CSR-bestand naar een geldige certificeringsinstantie verzendt, ondertekent de certificeringsinstantie het bestand en stuurt het certificaat naar de aanvragende instelling of persoon. Daarbij maakt de certificeringsinstantie (ook wel CA genoemd) ook een PEM-bestand aan van de CSR- en RSA-bestanden. Het PEM-bestand is het laatste bestand dat nodig is voor een zelfondertekend certificaat. Daar zorgen deze stadia voor SSL-certificaten blijven georganiseerd, betrouwbaar en veilig .

hoe iPhone 7 in herstelmodus te zetten

U kunt ook zelf een PEM-bestand maken met OpenSSL. Dit kan echter een potentieel risico vormen voor de veiligheid van uw certificaat omdat de echtheid of geldigheid van dit laatste niet duidelijk is. Het feit dat uw certificaat niet verifieerbaar is, kan er ook voor zorgen dat het niet werkt in sommige toepassingen en omgevingen. Voor dit voorbeeld van een zelfondertekend certificaat kunnen we dus een nep-PEM-bestand gebruiken, maar dit is natuurlijk niet mogelijk in de praktijk.

Stel je voor nu een PEM-bestand voor met de naam mijnPemKey.pem afkomstig is van een officiële certificeringsinstantie. U kunt de volgende opdracht gebruiken om een ​​PEM-bestand voor uzelf te maken:

 openssl x509 -req -sha256 -days 365 -in myCertRequest.csr -signkey myPrivateKey.key -out myPemKey.pem 

Als u zo'n bestand had, zou de opdracht die u voor uw zelfondertekende certificaat zou moeten gebruiken:

 openssl.exe x509 -req -days 365 -in myCertRequest.csr -signkey myPemKey.pem -out mySelfSignedCert.cer 

Deze opdracht betekent dat het CSR-bestand is ondertekend met een persoonlijke sleutel met de naam mijnPemKey.pem , 365 dagen geldig. Als resultaat maakt u een certificaatbestand met de naam mySelfSignedCert.cer .

  Afbeelding dat het zelfondertekende certificaat in de map aanwezig is

Informatie over zelfondertekende certificaten

U kunt de volgende opdracht gebruiken om de informatie te controleren op het zelfondertekende certificaat dat u hebt gemaakt:

hoe je Steam-spellen kunt pinnen om te beginnen
 openssl.exe x509 -noout -text -in mySelfSignedCert.cer 

Hierin ziet u alle informatie die op het certificaat staat. Het is mogelijk om veel informatie te zien, zoals het bedrijf of persoonlijke informatie, en algoritmen die in het certificaat zijn gebruikt.

Wat als zelfondertekende certificaten niet zijn ondertekend door de certificeringsinstantie?

Het is essentieel om de zelfondertekende certificaten die u maakt te controleren en te bevestigen dat deze veilig zijn. Een externe certificaatprovider (d.w.z. een CA) doet dit meestal. Als u geen certificaat hebt dat is ondertekend en goedgekeurd door een externe certificeringsinstantie, en u gebruikt dit niet-goedgekeurde certificaat, zult u enkele beveiligingsproblemen tegenkomen.

Hackers kunnen uw zelfondertekende certificaat gebruiken om bijvoorbeeld een nepkopie van een website te maken. Hierdoor kan een aanvaller informatie van gebruikers stelen. Ze kunnen ook de gebruikersnamen, wachtwoorden of andere gevoelige informatie van uw gebruikers in handen krijgen.

Om de veiligheid van gebruikers te waarborgen, moeten websites en andere services doorgaans certificaten gebruiken die daadwerkelijk zijn gecertificeerd door een CA. Dit biedt de zekerheid dat de gegevens van de gebruiker versleuteld zijn en verbinding maken met de juiste server.

Zelfondertekende certificaten maken in Windows

Zoals u kunt zien, is het maken van een zelfondertekend certificaat op Windows met OpenSSL vrij eenvoudig. Houd er echter rekening mee dat u ook goedkeuring van certificeringsinstanties nodig heeft.

Desalniettemin laat het maken van een dergelijk certificaat zien dat u de beveiliging van gebruikers serieus neemt, wat betekent dat ze u, uw site en uw algehele merk meer zullen vertrouwen.