Certifikáty SSL Self-Signed jsou certifikáty s vlastním podpisem, které se používají hlavně při vývoji na našem místním počítači nebo na našem vzdáleném serveru, když není k dispozici žádný certifikát od externí certifikační autority.
Tyto certifikáty s vlastním podpisem se pro výrobu používají jen zřídka, zejména proto, že nezaručují odpovídající úroveň spolehlivosti, protože nejsou ověřeny certifikační autoritou.
Na druhou stranu, pokud máte zájem o bezplatný certifikát SSL vydaný externí certifikační autoritou, můžete postupovat podle našeho průvodce Jak zabezpečit Apache pomocí Let's Encrypt a Ubuntu 18.04.
Nejprve se připojte k serveru prostřednictvím připojení SSH. Pokud jste tak ještě neučinili, doporučujeme se podle našeho průvodce bezpečně připojit pomocí SSH. V případě lokálního serveru přejděte k dalšímu kroku a otevřete terminál svého serveru.
Vytvoření soukromého klíče
Nejprve vytvořte soukromý klíč pro vytvoření veřejného certifikátu.
K vytvoření soukromého klíče použijte klienta OpenSSL:
$ sudo openssl genrsa -aes128 -out private.key 2048
N.B. Tento příkaz se používá k určení vytvoření soukromého klíče o délce 2048 bitů, který bude uložen do souboru private.key.
Generating RSA private key, 2048 bit long modulus
....+++
...................+++
e is 65537 (0x010001)
Enter pass phrase for privata.key:
Verifying - Enter pass phrase for private.key:
Budete požádáni o ochranu klíče heslem.
Vytvoření požadavku na podpis certifikátu (CSR)
Po vygenerování soukromého klíče vytvořte žádost o podepsání certifikátu (CSR), ve které budou uvedeny podrobnosti o certifikátu.
$ sudo openssl req -new -days 365 -key private.key -out request.csr
OpenSSL vás požádá o zadání informací o certifikátu, které je třeba vyplnit tímto způsobem:
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]: IT
State or Province Name (full name) [Some-State]: Lazio
Locality Name (eg, city) []: Rome
Organization Name (eg, company) [Internet Widgits Pty Ltd]: My Society
Organizational Unit Name (eg, section) []: Security
Common Name (e.g. server FQDN or YOUR name) []: example.it
Email Address []: [email protected]
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []: An optional company name []:
Budete požádáni o ochranu žádosti o certifikát heslem.
Pro vygenerování certifikátu bude vytvořen soubor request.csr se všemi zadanými užitečnými informacemi. .
Generování certifikátu SSL
V tomto okamžiku pokračujte ve generování certifikátu:
$ sudo openssl x509 -in request.csr -out certificate.crt -req -signkey private.key -days 365
Kde:
pro parametr -in zadejte požadavek na podpis certifikátu
pro parametr -out zadejte název souboru, který bude obsahovat certifikát
pro parametr -signkey zadejte svůj soukromý klíč
pro parametr -days zadejte počet dní platnosti certifikátu, který má být vytvořen
Vložte heslo private.key.
Pokud byla procedura vytvoření provedena správně, na obrazovce se zobrazí tento zápis:
Signature ok
následují podrobnosti o certifikátu uvedené výše.
Soubor certificate.crt je konečně připraven k použití různými způsoby, například k ochraně připojení k webovému serveru.