GNU/Linux >> Znalost Linux >  >> Linux

Vytvoření certifikátu SSL s vlastním podpisem

Tento článek vysvětluje, jak vytvořit certifikát SSL s vlastním podpisem pomocí openssl nástroj.

Co je certifikát SSL s vlastním podpisem? #

Certifikát SSL s vlastním podpisem je certifikát, který je podepsán osobou, která jej vytvořila, nikoli důvěryhodnou certifikační autoritou. Certifikáty s vlastním podpisem mohou mít stejnou úroveň šifrování jako důvěryhodný certifikát SSL podepsaný CA.

Webové prohlížeče nerozpoznají certifikáty podepsané svým držitelem jako platné. Při použití certifikátu s vlastním podpisem zobrazí webový prohlížeč návštěvníkovi varování, že certifikát webové stránky nelze ověřit.

Certifikáty s vlastním podpisem se obvykle používají pro testovací účely nebo pro interní použití. Certifikát podepsaný svým držitelem byste neměli používat v produkčních systémech, které jsou vystaveny internetu.

Předpoklady #

Ke generování certifikátu s vlastním podpisem je vyžadována sada nástrojů OpenSSL.

Chcete-li zkontrolovat, zda openssl balíček je nainstalován na vašem systému Linux, otevřete svůj terminál, zadejte openssl version a stiskněte Enter. Pokud je balíček nainstalován, systém vytiskne verzi OpenSSL, jinak uvidíte něco jako openssl command not found .

Pokud balíček openssl není na vašem systému nainstalován, můžete jej nainstalovat pomocí správce balíčků vaší distribuce:

  • Ubuntu a Debian

    sudo apt install openssl
  • Centos a Fedora

    sudo yum install openssl

Vytváření certifikátu SSL s vlastním podpisem #

Chcete-li vytvořit nový certifikát SSL s vlastním podpisem, použijte openssl req příkaz:

openssl req -newkey rsa:4096 \
            -x509 \
            -sha256 \
            -days 3650 \
            -nodes \
            -out example.crt \
            -keyout example.key

Pojďme si příkaz rozebrat a pochopit, co jednotlivé možnosti znamenají:

  • -newkey rsa:4096 - Vytvoří novou žádost o certifikát a 4096bitový RSA klíč. Výchozí hodnota je 2048 bitů.
  • -x509 – Vytvoří certifikát X.509.
  • -sha256 – Použijte 265bitový algoritmus SHA (Secure Hash Algorithm).
  • -days 3650 - Počet dní pro certifikaci certifikátu. 3650 je deset let. Můžete použít libovolné kladné celé číslo.
  • -nodes - Vytvoří klíč bez přístupové fráze.
  • -out example.crt - Určuje název souboru, do kterého se má zapsat nově vytvořený certifikát. Můžete zadat libovolný název souboru.
  • -keyout example.key - Určuje název souboru, do kterého se má zapsat nově vytvořený soukromý klíč. Můžete zadat libovolný název souboru.

Další informace o openssl req možnosti příkazů, navštivte stránku dokumentace požadavků OpenSSL.

Jakmile stisknete Enter, příkaz vygeneruje soukromý klíč a položí vám řadu otázek. Informace, které jste poskytli, se použijí k vygenerování certifikátu.

Generating a RSA private key
......................................................................++++
........++++
writing new private key to 'example.key'
-----
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.
-----

Zadejte požadované informace a stiskněte Enter .

Country Name (2 letter code) [AU]:US
State or Province Name (full name) [Some-State]:Alabama
Locality Name (eg, city) []:Montgomery
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Linuxize
Organizational Unit Name (eg, section) []:Marketing
Common Name (e.g. server FQDN or YOUR name) []:linuxize.com
Email Address []:[email protected]

Certifikát a soukromý klíč budou vytvořeny na zadaném místě. Pomocí příkazu ls ověřte, že byly soubory vytvořeny:

ls
example.crt example.key

A je to! Vygenerovali jste nový certifikát SSL s vlastním podpisem.

Vždy je dobré zálohovat nový certifikát a klíč na externí úložiště.

Vytvoření certifikátu SSL s vlastním podpisem bez výzvy #

Pokud chcete vygenerovat certifikát SSL s vlastním podpisem, aniž byste byli vyzváni k zadání jakékoli otázky, použijte -subj a zadejte všechny informace o předmětu:

openssl req -newkey rsa:4096 \
            -x509 \
            -sha256 \
            -days 3650 \
            -nodes \
            -out example.crt \
            -keyout example.key \
            -subj "/C=SI/ST=Ljubljana/L=Ljubljana/O=Security/OU=IT Department/CN=www.example.com"
Generating a RSA private key
......................................................................++++
........++++
writing new private key to 'example.key'
-----

Pole specifikovaná v -subj řádky jsou uvedeny níže:

  • C= - Název státu. Dvoupísmenná zkratka ISO.
  • ST= – Název státu nebo provincie.
  • L= - Název lokality. Název města, kde se nacházíte.
  • O= – Úplný název vaší organizace.
  • OU= - Organizační jednotka.
  • CN= – Plně kvalifikovaný název domény.

Závěr č.

V této příručce jsme vám ukázali, jak vygenerovat certifikát SSL s vlastním podpisem pomocí nástroje openssl. Nyní, když máte certifikát, můžete nakonfigurovat aplikaci tak, aby jej používala.

Pokud máte nějaké dotazy, neváhejte zanechat komentář.


Linux
  1. Co je certifikát SSL?

  2. "Typy SSL certifikátů"

  3. Jak vytvořit certifikát SSL s vlastním podpisem na Ubuntu 18.04

  1. Jak nainstalovat certifikát SSL s vlastním podpisem v cPanel

  2. Nainstalujte certifikát SSL

  3. Chyba prohlížeče certifikátu SSL

  1. Apache – vytvoření *.local Ssl certifikátu?

  2. Plesk:Instalace SSL

  3. Kupte si nebo obnovte SSL certifikát