Ukažte návštěvníkům svého webu, že jejich zabezpečení berete vážně, vytvořením vlastního certifikátu SSL pomocí OpenSSL.
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?
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.
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 to spustit, jak chcete.
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.exegenrsa-des3-venmyPrivateKey.klíč 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.
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.exereq-Nový-klíčmyPrivateKey.klíč-venmyCertRequest.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ě.
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.exereq-Nový-nový klíčrsa:2048-uzly- klíčový výstupmyPrivateKey2.klíč-venmyCertRequest2.csr
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é domy 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:
opensslx509-požad-sha256-dny 365 -vmyCertRequest.csr-klíčmyPrivateKey.klíč-venmyPemKey.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.exex509-požad-dny 365 -vmyCertRequest.csr-klíčmyPemKey.pem-venmySelfSignedCert.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.
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.exex509-noout-text-vmySelfSignedCert.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.