Kuidas luua CentOS 8-s kohalikku enda allkirjastatud SSL-sertifikaati


SSL (Secure Socket Layer) ja selle täiustatud versioon TLS (Transport Socket Layer) on turvaprotokollid, mida kasutatakse kliendi veebibrauserist veebiserverisse saadetud veebiliikluse kindlustamiseks.

SSL-sertifikaat on digitaalne sertifikaat, mis loob turvalise kanali kliendi brauseri ja veebiserveri vahel. Seejuures krüpteeritakse tundlikud ja konfidentsiaalsed andmed, näiteks krediitkaardiandmed, sisselogimisandmed ja muu väga privaatne teave, mis takistab häkkeritel pealtkuulamist ja teie teabe varastamist.

Iseseisvalt allkirjastatud SSL-sertifikaat, erinevalt teistest SSL-sertifikaatidest, millele on alla kirjutanud ja mida usaldab sertifitseerimisasutus (CA), on sertifikaat, mille on alla kirjutanud isik, kellele see kuulub.

Selle loomine on täiesti tasuta ja see on odav viis kohalikult hostitud veebiserveri krüptimiseks. Iseseisvalt allkirjastatud SSL-sertifikaadi kasutamist ei soovitata tootmiskeskkondades siiski järgmistel põhjustel:

  1. Kuna sellele pole alla kirjutanud sertifikaadiasutus, genereerib ise allkirjastatud SSL-sertifikaat veebibrauserites hoiatused, kui kasutajad otsustavad jätkata. Need märguanded on soovimatud ja hoiatavad kasutajaid teie veebisaiti külastamast, mis võib viia veebiliikluse vähenemiseni. Nende hoiatuste lahendusena julgustavad organisatsioonid oma töötajaid hoiatusi lihtsalt ignoreerima ja jätkama. See võib tekitada ohtliku harjumuse kasutajate seas, kes võivad otsustada neid hoiatusi teistel veebisaitidel jätkuvalt ignoreerida, sattudes potentsiaalselt andmepüügisaitide ohvriks.
  2. Ise allkirjastatud sertifikaatide turvalisuse tase on madal, kuna need kasutavad madala taseme šifritehnoloogiaid ja räsi. Seega ei pruugi turvatase olla standardsete turvapoliitikatega samaväärne.
  3. Lisaks ei toetata avaliku võtme infrastruktuuri (PKI) funktsioone.

See tähendab, et ise allkirjastatud SSL-sertifikaadi kasutamine pole halb mõte teenuste ja rakenduste testimiseks kohalikus masinas, mis nõuab TLS/SSL-krüptimist.

Selles juhendis saate teada, kuidas installida kohalik iseallkirjastatud SSL-sertifikaat CentOS 8 serverisüsteemi Apache localhost veebiserverisse.

Enne alustamist veenduge, et teil oleksid järgmised põhinõuded:

  1. CentOS 8 serveri eksemplar.
  2. Serverisse installitud Apache veebiserver
  3. Hosti nimi on failis/etc/hosts juba konfigureeritud ja määratletud. Selle juhendi jaoks kasutame oma serveri jaoks hostinime tecmint.local .

1. samm: Mod_SSL-i installimine CentOS-i

1. Alustamiseks peate kontrollima, kas Apache veebiserver on installitud ja töötab.

$ sudo systemctl status httpd

Siin on oodatav väljund.

Kui veebiserver ei tööta, saate selle käsu abil käivitamisel käivitada ja lubada.

$ sudo systemctl start httpd
$ sudo systemctl enable httpd

Seejärel saate kinnitada, kas Apache töötab ja töötab.

2. Kohaliku enda allkirjastatud SSL-sertifikaadi installimise ja seadistamise lubamiseks on vajalik mod_ssl pakett.

$ sudo dnf install mod_ssl

Pärast installimist saate selle installimist kontrollida käivitades.

$ sudo rpm -q mod_ssl

Samuti veenduge, et OpenSSL-i pakett oleks installitud (OpenSSL on vaikimisi installitud CentOS 8-s).

$ sudo rpm -q openssl 

2. samm: looge Apache'ile kohalik allkirjastatud SSL-sertifikaat

3. Kui Apache veebiserver ja kõik eeldused on kontrollitud, peate looma kataloogi, kuhu krüptovõtmed salvestatakse.

Selles näites oleme loonud kataloogi/etc/ssl/private.

$ sudo mkdir -p /etc/ssl/private

Nüüd looge kohaliku SSL-sertifikaadi võti ja fail käsuga:

$ sudo openssl req -x509 -nodes -newkey rsa:2048 -keyout tecmint.local.key -out tecmint.local.crt

Vaatame, mida mõned käsus olevad valikud tegelikult tähistavad:

  • req -x509 - see näitab, et kasutame sertifikaadi allkirjastamise taotlust x509 (CSR).
  • -noodid - see valik annab OpenSSL-ile ülesandeks vahele jätta SSL-sertifikaadi krüptimine parooli abil. Selle idee on lubada Apache'il faili lugeda ilma igasuguse kasutaja sekkumiseta, mis ei oleks parooli pakkumisel võimalik.
  • -newkey rsa: 2048 - see näitab, et soovime samaaegselt luua uue võtme ja uue sertifikaadi. Osa rsa: 2048 tähendab, et me tahame luua 2048-bitise RSA-võtme.
  • -keyout - see valik määrab loomise ajal loodud privaatvõtme faili talletamise kohta.
  • -out - suvand määrab loodud SSL-sertifikaadi paigutamise koha.

3. samm: installige Apache'i kohalik allkirjastatud SSL-sertifikaat

4. Kui olete SSL-i sertifikaadifaili loonud, on aeg sertifikaat Apache veebiserveri sätete abil installida. Avage ja muutke konfiguratsioonifaili /etc/httpd/conf.d/ssl.conf.

$ sudo vi /etc/httpd/conf.d/ssl.conf

Veenduge, et teil oleks virtuaalse hostimärgendite vahel järgmised read.

<VirtualHost *:443>
    ServerAdmin [email 
    ServerName www.tecmint.local
    ServerAlias tecmint.local
 
    DocumentRoot /var/www/html
 
    SSLEngine on
    SSLCertificateFile /etc/ssl/private/tecmint.local.crt
    SSLCertificateKeyFile /etc/ssl/private/tecmint.local.key
</VirtualHost>

Salvestage ja väljuge failist. Muudatuste teostamiseks taaskäivitage Apache käsu abil:

$ sudo systemctl restart httpd

5. Väliste kasutajate juurdepääsuks teie serverile peate avama tulemüüri kaudu pordi 443, nagu näidatud.

$ sudo firewall-cmd --add-port=443 --zone=public --permanent
$ sudo firewall-cmd --reload

3. samm: kohaliku iseallkirjastatud SSL-sertifikaadi testimine Apache'is

Kui kõik konfiguratsioonid on paigas, käivitage oma brauser ja sirvige oma serveri aadressi, kasutades serveri IP-aadressi või domeeninime, kasutades https-protokolli.

Testimise lihtsustamiseks võiksite kaaluda HTTP-protokolli ümbersuunamist HTTPS-i Apache veebiserveris. Seda selleks, et kui sirvite domeeni tavalises HTTP-s, suunatakse see automaatselt ümber HTTPS-protokolli.

Nii et sirvige oma serveri domeeni või IP-d

https://domain_name/

Teile antakse hoiatus, mis teavitab teid, et ühendus pole turvaline, nagu näidatud. See on erinevates brauserites erinev. Nagu võite arvata, on hoiatus tingitud asjaolust, et SSL-sertifikaadile pole alla kirjutanud sertifikaadi väljaandja ja brauser registreerib selle ning teatab, et sertifikaati ei saa usaldada.

Veebisaidile liikumiseks klõpsake ülaltoodud vahekaardil Täpsem:

Järgmisena lisage brauserisse erand.

Lõpuks laadige oma brauser uuesti ja jälgige, et pääsete nüüd serverile juurde, ehkki URL-i ribal kuvatakse hoiatus, et sait pole täielikult turvaline samal põhjusel, et SSL-i sertifikaat on ise allkirjastatud ja kasutaja pole seda allkirjastanud. Sertifikaadiasutus.

Loodame, et saate nüüd jätkata ning luua ja allkirjastada ise allkirjastatud SSL-sertifikaadi CentOS 8 Apache localhosti veebiserverisse.