Kā izveidot vietējo pašparakstītu SSL sertifikātu vietnē CentOS 8


SSL (Secure Socket Layer) un tā uzlabotā versija TLS (Transport Socket Layer) ir drošības protokoli, kas tiek izmantoti, lai nodrošinātu tīmekļa trafiku, kas tiek sūtīts no klienta tīmekļa pārlūkprogrammas uz tīmekļa serveri.

SSL sertifikāts ir digitāls sertifikāts, kas izveido drošu kanālu starp klienta pārlūkprogrammu un tīmekļa serveri. To darot, tiek šifrēti sensitīvi un konfidenciāli dati, piemēram, kredītkaršu dati, pieteikšanās akreditācijas dati un cita ļoti privāta informācija, kas neļauj hakeriem noklausīties un zagt jūsu informāciju.

Pašparakstīts SSL sertifikāts, atšķirībā no citiem SSL sertifikātiem, kurus paraksta un kuriem uzticas sertifikātu izdevējiestāde (CA), ir sertifikāti, ko parakstījusi persona, kurai tas pieder.

Tās izveidošana ir pilnīgi bez maksas, un tas ir lēts veids, kā šifrēt lokāli mitināto tīmekļa serveri. Tomēr ražošanas vidē ir ļoti ieteicams izmantot pašparakstītu SSL sertifikātu šādu iemeslu dēļ:

  1. Tā kā to neparaksta sertificēšanas iestāde, pats parakstīts SSL sertifikāts tīmekļa pārlūkprogrammās ģenerē brīdinājumus, brīdinot lietotājus par iespējamo risku nākotnē, ja viņi nolemj turpināt. Šie brīdinājumi ir nevēlami, un tie atturēs lietotājus apmeklēt jūsu vietni, kas var izraisīt tīmekļa trafika samazināšanos. Kā risinājumu šiem brīdinājumiem organizācijas parasti mudina savus darbiniekus vienkārši ignorēt brīdinājumus un turpināt darbu. Tas var radīt bīstamu ieradumu lietotāju vidū, kuri var nolemt arī turpmāk ignorēt šos brīdinājumus citās tiešsaistes vietnēs, potenciāli kļūstot par pikšķerēšanas vietņu upuriem.
  2. Pašparakstītu sertifikātu drošības līmenis ir zems, jo tajos tiek ieviestas zema līmeņa šifru tehnoloģijas un jaucējkrāpi. Tādējādi drošības līmenis var nebūt līdzvērtīgs standarta drošības politikai.
  3. Turklāt netiek atbalstīts publiskās atslēgas infrastruktūras (PKI) funkcijas.

Tas nozīmē, ka pašparakstīta SSL sertifikāta izmantošana nav slikta ideja pakalpojumu un lietojumprogrammu testēšanai vietējā mašīnā, kurai nepieciešama TLS/SSL šifrēšana.

Šajā ceļvedī jūs uzzināsiet, kā instalēt vietējo pašparakstītu SSL sertifikātu Apache localhost tīmekļa serverī CentOS 8 serveru sistēmā.

Pirms darba sākšanas pārliecinieties, vai jums ir šādas pamatprasības:

  1. CentOS 8 servera eksemplārs.
  2. serverī instalēts Apache tīmekļa serveris
  3. resursdatora nosaukums jau ir konfigurēts un definēts failā/etc/hosts. Šajā rokasgrāmatā mēs savam serverim izmantosim resursdatora tecmint.local nosaukumu.

1. darbība: Mod_SSL instalēšana CentOS

1. Lai sāktu, jums jāpārbauda, vai Apache tīmekļa serveris ir instalēts un darbojas.

$ sudo systemctl status httpd

Lūk, paredzamais rezultāts.

Ja tīmekļa serveris nedarbojas, varat to palaist un iespējot pēc palaišanas, izmantojot komandu.

$ sudo systemctl start httpd
$ sudo systemctl enable httpd

Pēc tam varat apstiprināt, vai Apache darbojas un darbojas.

2. Lai iespējotu vietējā pašparakstītā SSL sertifikāta instalēšanu un iestatīšanu, ir nepieciešama mod_ssl pakete.

$ sudo dnf install mod_ssl

Pēc instalēšanas jūs varat pārbaudīt tā instalēšanu, palaižot.

$ sudo rpm -q mod_ssl

Pārliecinieties arī, vai ir instalēta OpenSSL pakotne (OpenOSL pēc noklusējuma tiek instalēts CentOS 8).

$ sudo rpm -q openssl 

2. darbība: izveidojiet vietējo pašparakstītu SSL sertifikātu Apache

3. Pārbaudot Apache tīmekļa serveri un visus priekšnosacījumus, jums jāizveido direktorijs, kurā tiks glabātas kriptogrāfiskās atslēgas.

Šajā piemērā mēs esam izveidojuši direktoriju vietnē/etc/ssl/private.

$ sudo mkdir -p /etc/ssl/private

Tagad izveidojiet vietējo SSL sertifikāta atslēgu un failu, izmantojot komandu:

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

Apskatīsim, ko patiesībā nozīmē dažas komandas opcijas:

  • req -x509 - tas norāda, ka mēs izmantojam sertifikāta parakstīšanas pieprasījumu x509 (CSR).
  • -nodes - šī opcija uzdod OpenSSL izlaist SSL sertifikāta šifrēšanu, izmantojot paroli. Ideja ir ļaut Apache lasīt failu bez jebkāda veida lietotāja iejaukšanās, kas nebūtu iespējams, ja tiktu nodrošināta parole.
  • -newkey rsa: 2048 - tas norāda, ka mēs vēlamies vienlaikus izveidot jaunu atslēgu un jaunu sertifikātu. Rsa: 2048 daļa nozīmē, ka mēs vēlamies izveidot 2048 bitu RSA atslēgu.
  • -keyout - šī opcija norāda, kur pēc izveidošanas glabāt izveidoto privāto atslēgu failu.
  • -out - opcija norāda, kur ievietot izveidoto SSL sertifikātu.

3. darbība: instalējiet vietējo pašparakstīto SSL sertifikātu Apache

4. Kad ir izveidots SSL sertifikāta fails, ir pienācis laiks sertifikātu instalēt, izmantojot Apache tīmekļa servera iestatījumus. Atveriet un rediģējiet konfigurācijas failu /etc/httpd/conf.d/ssl.conf.

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

Pārliecinieties, vai starp virtuālā resursdatora tagiem ir šādas rindas.

<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>

Saglabājiet un izejiet no faila. Lai veiktu izmaiņas, restartējiet Apache, izmantojot komandu:

$ sudo systemctl restart httpd

5. Lai ārējie lietotāji varētu piekļūt jūsu serverim, caur ugunsmūri ir jāatver ports 443, kā parādīts.

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

3. darbība. Vietējā pašparakstītā SSL sertifikāta pārbaude Apache

Kad visas konfigurācijas ir ieviestas, aktivizējiet pārlūkprogrammu un pārlūkojiet sava servera adresi, izmantojot servera IP adresi vai domēna nosaukumu, izmantojot protokolu https.

Lai pilnveidotu testēšanu, apsveriet iespēju HTTP protokolu novirzīt uz HTTPS Apache tīmekļa serverī. Tas ir tāpēc, ka ikreiz, kad pārlūkojat domēnu vienkāršā HTTP, tas tiks automātiski novirzīts uz HTTPS protokolu.

Tāpēc pārlūkojiet sava servera domēnu vai IP

https://domain_name/

Jūs saņemsiet brīdinājumu, kurā informēsit, ka savienojums nav drošs, kā parādīts. Katrā pārlūkprogrammā tas būs atšķirīgs. Kā jūs varētu minēt, brīdinājums ir saistīts ar faktu, ka SSL sertifikātu neparaksta sertifikātu pārvalde, un pārlūks to reģistrē un ziņo, ka sertifikātam nevar uzticēties.

Lai pārietu uz savu vietni, noklikšķiniet uz cilnes Papildu, kā parādīts iepriekš:

Pēc tam pārlūkprogrammai pievienojiet izņēmumu.

Visbeidzot, atkārtoti ielādējiet pārlūkprogrammu un novērojiet, ka tagad varat piekļūt serverim, lai gan URL joslā būs brīdinājums, ka vietne nav pilnībā droša tā paša iemesla dēļ, ka SSL sertifikāts ir pašparakstīts un nav parakstīts. Sertifikāta iestāde.

Mēs ceram, ka tagad jūs varat turpināt un izveidot un instalēt pašparakstītu SSL sertifikātu Apache localhost tīmekļa serverī CentOS 8.