Jak utworzyć lokalny certyfikat SSL w CentOS 8

Jak utworzyć lokalny certyfikat SSL w CentOS 8

SSL (Bezpieczna warstwa gniazda) i jego ulepszona wersja, Tls (Warstwa gniazda transportu), to protokoły bezpieczeństwa używane do zabezpieczenia ruchu internetowego wysyłane z przeglądarki internetowej klienta na serwer WWW.

Jakiś SSL Certyfikat to certyfikat cyfrowy, który tworzy bezpieczny kanał między przeglądarką klienta a serwerem WWW. W ten sposób poufne i poufne dane, takie jak dane karty kredytowej, poświadczenia logowania i inne wysoce prywatne informacje, są szyfrowane, uniemożliwiając hakerom podsłuch i kradzież twoich informacji.

Co to jest samowystarczalny certyfikat SSL?

Samowystarczalny certyfikat SSL, w przeciwieństwie do innych SSL certyfikaty podpisane i zaufane przez Urząd certyfikatu (Ca), to certyfikat podpisany przez osobę, która ją jest właścicielem.

Utworzenie jednego z nich jest całkowicie bezpłatne i jest tanim sposobem szyfrowania lokalnie hostowanego serwera WWW. Jednak użycie samowystarczalnego certyfikatu SSL jest wysoce zniechęcone w środowiskach produkcyjnych z następujących powodów:

  1. Ponieważ nie jest podpisany przez Urząd certyfikatu, Self podpisany certyfikat SSL generuje powiadomienia o przeglądarkach internetowych ostrzegawcze użytkowników przed potencjalnym ryzykiem, jeśli zdecydują się kontynuować. Te alerty są niepożądane i zniechęcają użytkowników do odwiedzania Twojej witryny, potencjalnie prowadząc do spadku ruchu internetowego. Jako obejście tych powiadomień organizacje zwykle zachęcają swoich pracowników do po prostu zignorowania powiadomień i kontynuowania przodu. Może to odrodzić niebezpieczny nawyk wśród użytkowników, którzy mogą zdecydować się na dalsze ignorowanie tych powiadomień na innych stronach internetowych, potencjalnie padając ofiarą witryn phishingowych.
  2. Self-podpisane certyfikaty mają poziom niskiego poziomu bezpieczeństwa, ponieważ wdrażają technologie szyfru i skrótów niskiego poziomu. Zatem poziom bezpieczeństwa może nie być na równi ze standardowymi zasadami bezpieczeństwa.
  3. Ponadto nie ma wsparcia dla funkcji infrastruktury kluczy publicznych (PKI).

To powiedziawszy, użycie samowystarczalnego certyfikatu SSL nie jest złym pomysłem na testowanie usług i aplikacji na lokalnym komputerze TLS / SSL szyfrowanie.

W tym przewodniku dowiesz się, jak zainstalować lokalny samowystarczalny certyfikat SSL na Apache LocalHost Server na a Centos 8 System serwera.

Wymagania wstępne:

Przed rozpoczęciem upewnienia się, że masz następujące podstawowe wymagania:

  1. Wystąpienie serwera CentOS 8.
  2. Apache Webserver zainstalowany na serwerze
  3. Nazwa hosta już skonfigurowana i zdefiniowana w /etc/hosts plik. Do tego przewodnika będziemy używać Tecmint.lokalny nazwa hosta dla naszego serwera.

Krok 1: Instalowanie MOD_SSL na Centos

1. Na początek musisz sprawdzić, czy Apache Serwer WWW jest zainstalowany i uruchomiony.

$ sudo Systemctl Status httpd 

Oto oczekiwana wydajność.

Sprawdź status Apache

Jeśli WebServer nie działa, możesz uruchomić i włączyć go po uruchomieniu za pomocą polecenia.

$ sudo systemctl start httpd $ sudo systemctl enable httpd 
Rozpocznij serwer WWW Apache

Następnie możesz potwierdzić, czy Apache jest uruchomiony.

2. Aby włączyć instalację i konfigurację lokalnego samowystarczalnego certyfikatu SSL, mod_ssl Wymagany jest pakiet.

$ sudo dnf instalacja mod_ssl 

Po zainstalowaniu możesz zweryfikować jego instalację, uruchamiając.

$ sudo rpm -q mod_ssl 
Sprawdź instalację MOD SSL

Upewnij się również, że Openssl Pakiet jest zainstalowany (Openssl jest zainstalowany domyślnie w Centos 8).

$ sudo rpm -q openssl 
Sprawdź instalację OpenSSL

Krok 2: Utwórz lokalny certyfikat SSL dla Apache

3. Z Apache serwer WWW i wszystkie wymagania wstępne, musisz utworzyć katalog, w którym będą przechowywane klucze kryptograficzne.

W tym przykładzie stworzyliśmy katalog pod adresem /etc/ssl/prywatny.

$ sudo mkdir -p/etc/ssl/prywatny 

Teraz utwórz lokalny klucz certyfikatu SSL i plik za pomocą polecenia:

$ sudo openssl req -x509 -nodes -Newkey RSA: 2048 -Keyout Tecmint.lokalny.Klucz -out Tecmint.lokalny.crt 

Rzućmy okiem na to, co faktycznie oznaczają niektóre opcje w poleceniu:

  • Req -x509 - Wskazuje to, że używamy żądania podpisania certyfikatu x509 (CSR).
  • -węzły - Ta opcja instruuje OpenSSL, aby pominął szyfrowanie certyfikatu SSL za pomocą hasła. Chodzi o to, aby umożliwić Apache na odczytanie pliku bez jakiejkolwiek interwencji użytkownika, która nie byłaby możliwa, gdyby dostarczona jest hasła.
  • -Newkey RSA: 2048 - Wskazuje to, że chcemy jednocześnie utworzyć nowy klucz i nowy certyfikat. Część RSA: 2048 oznacza, że ​​chcemy utworzyć klucz 2048-bitowy RSA.
  • -Keyout - Ta opcja określa, gdzie przechowywać wygenerowany plik klucza prywatnego po utworzeniu.
  • -na zewnątrz - Opcja określa, gdzie umieścić utworzony certyfikat SSL.
Utwórz lokalny certyfikat SSL dla Apache

Krok 3: Zainstaluj lokalny certyfikat SSL na Apache

4. Po wygenerowaniu pliku certyfikatu SSL, czas zainstalować certyfikat za pomocą ustawień Apache Web Server. Otwórz i edytuj /etc/httpd/conf.D/SSL.conf plik konfiguracyjny.

$ sudo vi/etc/httpd/conf.D/SSL.conf 

Upewnij się, że masz następujące granice między wirtualnymi tagami hosta.

 ServerAdmin [chroniony e -mail] Servername www.Tecmint.Lokalny serveralias Tecmint.Lokalny dokumentroot/var/www/html sslengine SslcertificateFile/etc/ssl/private/tecmint.lokalny.crt SSLCertificateKeKeyFile/etc/ssl/private/tecmint.lokalny.klucz  

Zapisz i wyjdź z pliku. Aby zmiany zostały dokonane, uruchom ponownie Apache za pomocą polecenia:

$ sudo systemctl restart httpd 

5. Aby użytkownicy zewnętrzni mogli uzyskać dostęp do serwera, musisz otworzyć port 443 przez zaporę, jak pokazano.

$ sudo firewall-cmd --add-port = 443-Zone = public --Permanent $ sudo firewall-cmd-rela jest 

Krok 3: Testowanie lokalnego samowystarczalnego certyfikatu SSL na Apache

Przy wszystkich konfiguracjach odpal przeglądarkę i przeglądaj adres serwera za pomocą adresu IP serwera lub nazwy domeny za pomocą protokołu HTTPS.

Aby usprawnić testy, możesz rozważyć przekierowanie protokołu HTTP do HTTPS w serwisie internetowym Apache. Dzieje się tak, że za każdym razem, gdy przeglądasz domenę w zwykłym HTTP, zostanie ona automatycznie przekierowana do protokołu HTTPS.

Więc przejrzyj domenę lub IP swojego serwera

https: // domain_name/ 

Otrzymasz alert informujący, że połączenie nie jest bezpieczne, jak pokazano. Będzie to różnić w zależności od przeglądarki do drugiej. Jak można się domyślić, alert wynika z faktu, że certyfikat SSL nie jest podpisany przez Urząd certyfikatu a przeglądarka rejestruje to i informuje, że certyfikatu nie można zaufać.

Ostrzeżenie o certyfikcie SSL

Aby przejść do swojej witryny, kliknijZaawansowany„Tab, jak pokazano powyżej:

Postępuj ostrzeżenia o certyfikatach SSL

Następnie dodaj wyjątek do przeglądarki.

Potwierdź wyjątek bezpieczeństwa

Wreszcie, ponownie załaduj przeglądarkę i obserwuj, że możesz teraz uzyskać dostęp do serwera, choć na pasku URL pojawi się ostrzeżenie, że strona nie jest w pełni bezpieczna z tego samego powodu, że certyfikat SSL jest podpisany i nie podpisany przez Urząd certyfikatu.

Dostęp do strony internetowej przez HTTPS

Mamy nadzieję, że możesz teraz kontynuować, utworzyć i zainstalować samowystarczalny certyfikat SSL na serwerze internetowym Apache LocalHost Centos 8.