Jak vytvořit certifikát s vlastním podpisem pomocí OpenSSL

Jak vytvořit certifikát s vlastním podpisem pomocí OpenSSL
Čtenáři jako vy pomáhají podporovat MUO. Když provedete nákup pomocí odkazů na našich stránkách, můžeme získat provizi přidružené společnosti. Přečtěte si více.

SSL/TLS certifikáty jsou nezbytné pro zabezpečení vaší webové aplikace nebo serveru. Zatímco několik spolehlivých certifikačních autorit poskytuje certifikáty SSL/TLS za poplatek, je také možné vygenerovat certifikát s vlastním podpisem pomocí OpenSSL. I když certifikáty s vlastním podpisem postrádají podporu důvěryhodné autority, stále mohou šifrovat váš webový provoz. Jak tedy můžete použít OpenSSL k vygenerování certifikátu s vlastním podpisem pro váš web nebo server?





VYUŽÍVÁNÍ VIDEA DNE POKRAČOVÁNÍ V OBSAHU POKRAČUJTE PŘEJÍMÁNÍM

Jak nainstalovat OpenSSL

OpenSSL je software s otevřeným zdrojovým kódem. Ale pokud nemáte programátorské zázemí a máte obavy z procesů sestavování, má to trochu technické nastavení. Abyste tomu zabránili, můžete si stáhnout nejnovější verzi kódu OpenSSL, plně zkompilovanou a připravenou k instalaci stránky slproweb .





Zde vyberte rozšíření MSI nejnovější verze OpenSSL vhodné pro váš systém.





  Snímek obrazovky z webu slproweb ke stažení OpenSSL

Jako příklad zvažte OpenSSL na D:\OpenSSL-Win64 . Můžete to změnit. Pokud je instalace dokončena, otevřete PowerShell jako správce a přejděte do podsložky s názvem zásobník ve složce, kam jste nainstalovali OpenSSL. Chcete-li to provést, použijte následující příkaz:

 cd 'D:\OpenSSL-Win64\bin' 

Nyní máte přístup k openssl.exe a můžete jej spustit, jak chcete.



  Spuštěním příkazu version zkontrolujte, zda je nainstalován openssl

Vygenerujte svůj soukromý klíč pomocí OpenSSL

K vytvoření certifikátu s vlastním podpisem budete potřebovat soukromý klíč. Ve stejné složce bin můžete tento soukromý klíč vytvořit zadáním následujícího příkazu v prostředí PowerShell, jakmile se otevřete jako správce.

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

Tento příkaz vygeneruje 2048bitový soukromý klíč RSA šifrovaný 3DES přes OpenSSL. OpenSSL vás požádá o zadání hesla. Měli byste použít a silné a zapamatovatelné heslo . Po dvojím zadání stejného hesla budete mít úspěšně vygenerovaný soukromý klíč RSA.





  Výstup příkazu použitého ke generování klíče RSA

Svůj soukromý klíč RSA najdete se jménem myPrivateKey.key .

Jak vytvořit soubor CSR pomocí OpenSSL

Soukromý klíč, který vytvoříte, nebude sám o sobě stačit. K vytvoření certifikátu s vlastním podpisem navíc potřebujete soubor CSR. Chcete-li vytvořit tento soubor CSR, musíte zadat nový příkaz v prostředí PowerShell:





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

OpenSSL vás také požádá o heslo, které jste zde zadali pro vygenerování soukromého klíče. Dále bude vyžadovat vaše právní a osobní údaje. Dávejte pozor, abyste tyto informace zadali správně.

kdo mě sleduje na facebookové aplikaci
  Výstup příkazu použitého ke generování souboru CSR

Všechny dosavadní operace je navíc možné provádět pomocí jediného příkazového řádku. Pokud použijete níže uvedený příkaz, můžete vygenerovat svůj soukromý klíč RSA i soubor CSR najednou:

 openssl.exe req -new -newkey rsa:2048 -nodes -keyout myPrivateKey2.key -out myCertRequest2.csr 
  Výstup příkazu používaného k vytvoření souborů RSA a CSR najednou

Nyní budete moci vidět soubor s názvem myCertRequest.csr v příslušném adresáři. Tento soubor CSR, který vytvoříte, obsahuje některé informace o:

  • Instituce, která certifikát požaduje.
  • Common Name (tj. název domény).
  • Veřejný klíč (pro účely šifrování).

Soubory CSR, které vytvoříte, musí být zkontrolovány a schváleny určitými úřady. K tomu je třeba odeslat soubor CSR přímo certifikační autoritě nebo jiné zprostředkovatelské instituci.

Tyto úřady a makléřské společnosti zkoumají, zda jsou vámi poskytnuté informace správné, v závislosti na povaze požadovaného certifikátu. Možná budete muset také odeslat některé dokumenty offline (fax, pošta atd.), abyste prokázali, zda jsou informace správné.

Příprava certifikátu certifikační autoritou

Když odešlete soubor CSR, který jste vytvořili, platné certifikační autoritě, certifikační autorita soubor podepíše a odešle certifikát žádající instituci nebo osobě. Přitom certifikační autorita (známá také jako CA) také vytvoří soubor PEM ze souborů CSR a RSA. Soubor PEM je posledním souborem požadovaným pro certifikát s vlastním podpisem. Tyto fáze to zajišťují Certifikáty SSL zůstávají organizované, spolehlivé a bezpečné .

Soubor PEM můžete také vytvořit sami pomocí OpenSSL. To však může představovat potenciální riziko pro bezpečnost vašeho certifikátu, protože pravost nebo platnost certifikátu není jasná. Také skutečnost, že váš certifikát nelze ověřit, může způsobit, že nebude v některých aplikacích a prostředích fungovat. Takže pro tento příklad certifikátu s vlastním podpisem můžeme použít falešný soubor PEM, ale to samozřejmě není možné v reálném světě.

Prozatím si představte soubor PEM s názvem myPemKey.pem pochází od oficiální certifikační autority. K vytvoření souboru PEM pro sebe můžete použít následující příkaz:

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

Pokud byste takový soubor měli, příkaz, který byste měli použít pro svůj vlastnoručně podepsaný certifikát, by byl:

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

Tento příkaz znamená, že soubor CSR je podepsán soukromým klíčem s názvem myPemKey.pem , platnost 365 dní. V důsledku toho vytvoříte soubor certifikátu s názvem mySelfSignedCert.cer .

  Obrázek, že ve složce existuje certifikát s vlastním podpisem

Informace o certifikátu s vlastním podpisem

Ke kontrole informací na vámi vytvořeném certifikátu s vlastním podpisem můžete použít následující příkaz:

 openssl.exe x509 -noout -text -in mySelfSignedCert.cer 

Zobrazí se vám všechny informace obsažené v certifikátu. Je možné vidět mnoho informací, jako je společnost nebo osobní údaje, a algoritmy použité v certifikátu.

Co když certifikáty s vlastním podpisem nejsou podepsány certifikační autoritou?

Je nezbytné provést audit vámi vytvořených certifikátů s vlastním podpisem a potvrdit, že jsou bezpečné. Obvykle to dělá poskytovatel certifikátů třetí strany (tj. CA). Pokud nemáte certifikát podepsaný a schválený certifikační autoritou třetí strany a používáte tento neschválený certifikát, narazíte na určité bezpečnostní problémy.

Hackeři mohou váš certifikát s vlastním podpisem použít například k vytvoření falešné kopie webu. To umožňuje útočníkovi krást informace uživatelů. Mohou také získat uživatelská jména, hesla nebo jiné citlivé informace vašich uživatelů.

Aby byla zajištěna bezpečnost uživatelů, webové stránky a další služby obvykle potřebují používat certifikáty, které jsou skutečně certifikovány certifikační autoritou. To poskytuje záruku, že data uživatele jsou šifrována a že se připojují ke správnému serveru.

Vytváření certifikátů s vlastním podpisem v systému Windows

Jak vidíte, vytvoření self-signed certifikátu ve Windows s OpenSSL je docela jednoduché. Mějte ale na paměti, že budete potřebovat také souhlas certifikačních autorit.

Vytvoření takového certifikátu nicméně ukazuje, že berete bezpečnost uživatelů vážně, což znamená, že budou více důvěřovat vám, vašemu webu a vaší celkové značce.