A saját aláírású SSL-tanúsítványok olyan tanúsítványok, amelyeket főként a helyi gépen vagy a távoli szerverünk fejlesztésénél használnak, amikor nincs tanúsítvány külső tanúsító hatóságtól.
Ezeket a saját aláírással ellátott tanúsítványokat ritkán használják előállításra, különösen azért, mert nem garantálják a megfelelő megbízhatóságot, mivel azokat nem igazolja a tanúsító hatóság.
Másrészről, ha érdekli egy külső tanúsító hatóság által kiállított ingyenes SSL-tanúsítvány beszerzése, akkor kövesse az Útmutató az Apache biztonságához a Encrypt és az Ubuntu 18.04-rel című fejezetünket.
Először csatlakozzon a szerverhez SSH kapcsolaton keresztül. Ha még nem tette meg, akkor ajánlott átböngésznie a Hogyan javítható az SSH biztonság az Ubuntu 18.04-en? útmutatónkat a folyamat megkezdése előtt. Helyi szerver esetén folytassa a következő lépéssel, és nyissa meg a szerver terminált.
Privát kulcs létrehozása
Először hozzon létre egy privát kulcsot a nyilvános tanúsítvány elkészítéséhez.
Privát kulcs létrehozásához használja az OpenSSL klienst:
$ sudo openssl genrsa -aes128 -out private.key 2048
Megjegyzés: Ez a parancs egy 2048 bit hosszú privát kulcs létrehozásának megadására szolgál, amelyet a private.key fájlba ment.
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:
Ezt követően a kulcsot jelszóval kell védeni.
Egy Certificate Signing Request (CSR) generálása
A privát kulcs generálása után hozzon létre egy igazolási aláírási kérelmet (CSR), amely meghatározza a tanúsítvány részleteit.
$ sudo openssl req -new -days 365 -key private.key -out request.csr
Az OpenSSL megkéri, hogy adja meg a tanúsítvány adatait, amelyeket így kell kitölteni:
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 []:
A rendszer felkéri a tanúsítványkérés jelszóval való védelmére.
A minden hasznos információt tartalmazó request.csr fájl létrejön a tanúsítvány előállításához.
SSL-tanúsítvány létrehozása
Ezen a ponton folytassa a tanúsítvány előállítását:
$ sudo openssl x509 -in request.csr -out certificate.crt -req -signkey private.key -days 365
Ahol:
-
az -in paraméterhez adja meg a tanúsítvány aláírási kérését
-
a -out paraméterhez adja meg a tanúsítványt tartalmazó fájl nevét
-
a -signkey paraméterhez adja meg a magánkulcsot
-
a -nap paraméterhez adja meg a létrehozni kívánt tanúsítvány érvényességi napjainak számát
Illessze be a private.key jelszavát.
Ha a létrehozási eljárást helyesen hajtották végre, akkor a képernyőn ez az írás jelenik meg:
amelyet a fent meghatározott bizonyítvány részletei követnek.
Végül, a certificate.crt fájl különféle módon használható, például a webszerverrel való kapcsolat védelmére.