Jak stworzyć samozabilne certyfikaty i klucze SSL dla Apache na RHEL/CENTOS 7.0

- 2415
- 220
- Tomasz Szatkowski
SSL (Bezpieczna warstwa gniazd) to protokół kryptograficzny, który umożliwia bezpieczny przepływ danych między serwerem a jego klientami za pomocą klawiszy symetrycznych/asymetrycznych za pomocą certyfikatu cyfrowego podpisanego przez Authority certyfikatu (CA).

Wymagania
- Podstawowa instalacja lampy na RHEL/CENTOS 7.0
Ten samouczek zawiera podejście do konfiguracji Bezpieczna warstwa gniazd (SSL) Protokół kryptograficzny komunikacji na serwerze WWW Apache zainstalowany w Red Hat Enterprise Linux/Centos 7.0, i generuj autentyczne certyfikaty i klucze za pomocą skryptu Bash, który znacznie upraszcza cały proces.
Krok 1: Zainstaluj i skonfiguruj Apache SSL
1. Aby włączyć SSL na serwerze Apache HTTP, użyj następującego polecenia, aby zainstalować moduł SSL i OpenSSL Tool-KIT, który jest potrzebny do obsługi SSL/TLS.
# Yum Instal MOD_SSL OpenSsl

2. Po zainstalowaniu modułu SSL ponownie uruchom Httpd demon i dodaj nową regułę zapory, aby upewnić się, że port SSL - 443 - Jest otwarty na zewnętrzne połączenia na komputerze w stanie słuchania.
# Systemctl restart httpd # firewall-cmd --add-service = https ## Reguła lody # Firewall-CMD --Permanent --add-Service = https ## Stała reguła - potrzebuje ponownego uruchomienia zapory ogniowej

3. Aby przetestować połączenie SSL, otwórz zdalną przeglądarkę i przejdź do adresu IP serwera za pomocą protokołu HTPS https: // server_ip.

Krok 2: Utwórz certyfikaty i klucze SSL
4. Poprzednia komunikacja SSL między serwerem a klientem została wykonana przy użyciu domyślnego certyfikatu i klucza automatycznie generowanego podczas instalacji. W celu wygenerowania nowych kluczy prywatnych i pary certyfikatów samodzielnych utwórz następujący skrypt bash na wykonywanej ścieżce systemowej ($ Ścieżka).
Do tego samouczka /usr/lokalny/bin/ Ścieżka została wybrana, upewnij się, że skrypt ma zestaw wykonywalnych, a następnie użyj go jako polecenia do tworzenia nowych par SSL /etc/httpd/ssl/ Jako domyślna lokalizacja certyfikatów i kluczy.
# nano/usr/local/bin/apache_ssl
Użyj następującej zawartości pliku.
#!/bin/bash mkdir/etc/httpd/ssl cd/etc/httpd/ssl echo -e "Wprowadź swój wirtualny host fqdn!„Przeczytaj cert openssl genpkey -algorytm rsa -pkeyopt rsa_keygen_bits: 2048 -out $ cert.Key CHMOD 600 $ CERT.Key Openssl Req -New -key $ cert.klucz -ut $ cert.CSR Openssl x509 -Req -Days 365 -in $ cert.CSR -SIGNKEY $ CERT.klucz -ut $ cert.CRT echo -e „Certyfikat i klucz do $ cert został wygenerowany!\ nplease link do Apache SSL dostępna strona internetowa!"ls -all/etc/httpd/ssl exit 0

5. Teraz spraw, aby ten skrypt był wykonywany i uruchom go w celu wygenerowania nowej pary certyfikatu i klucza do wirtualnego hosta Apache SSL.
Wypełnij je swoimi informacjami i zwróć uwagę Nazwa zwyczajowa wartość pasująca do twojego serwera FQDN lub w przypadku wirtualnego hostingu w celu dopasowania adresu internetowego, do którego będziesz dostęp, gdy połącz się z bezpieczną witryną.
# chmod +x/usr/local/bin/apache_ssl # apache_ssl

6. Po wygenerowaniu certyfikatu i klucza skrypt przedstawi długą listę wszystkich par SSL Apache /etc/httpd/ssl/ Lokalizacja.

7. Inne podejście do generowania certyfikatów i kluczy SSL jest instalowanie Crypto-Utils pakiet w systemie i generuj pary za pomocą Genkey polecenie, które może nałożyć pewne problemy, szczególnie w przypadku użycia na Kit Ekran terminalu.
Proponuję więc użyć tej metody tylko wtedy, gdy jesteś bezpośrednio podłączony do monitora ekranu.
# Yum Zainstaluj Crypto-Utils # genkey your_fqdn

8. Aby dodać nowy certyfikat i klucz do witryny SSL, otwórz plik konfiguracyjny witryny i wymień SslcertificateFile I SSLCertificateKeyeyFile Oświadczenia z nową lokalizacją i nazwiskami.

9. Jeśli certyfikat nie zostanie wydany przez zaufany organ certyfikacyjny CA lub nazwa hosta z certyfikatu nie pasuje do nazwy hosta, który ustanawia połączenie, w przeglądarce powinien pojawić się błąd i musisz ręcznie zaakceptować certyfikat.


Otóż to! Teraz możesz użyć apache_sslJako wiersz poleceń na RHEL/CENTOS 7.0, aby wygenerować tyle par samozagładowanych certyfikatów i kluczy, których potrzebujesz, i wszystko będzie trzymane /etc/httpd/ssl/ ścieżka z chronionym plikami klucza 700 uprawnienia.
- « Jak tworzyć i konfigurować LUN za pomocą LVM w „ISCSI Target Server” na RHEL/Centos/Fedora - część II
- Zainstaluj jądro 3.16 (najnowszy wydany) w Ubuntu i pochodnych »