Konfigurowanie SSL/TLS z Nginx włączonym CentOS

Aby skonfigurować protokół SSL/TLS za pomocą Nginx opcji on CentOS, możesz wykonać następujące czynności:

Krok 1: Zainstaluj Nginx

Jeśli nie zainstalowałeś programu Nginx, uruchom następujące polecenie, aby go zainstalować:

sudo yum install nginx

Krok 2: Zainstaluj OpenSSL

Jeśli nie masz zainstalowanego OpenSSL, zainstaluj go za pomocą następującego polecenia:

sudo yum install openssl

Krok 3: Utwórz katalog dla plików certyfikatów SSL

Utwórz katalog do przechowywania plików certyfikatów SSL:

sudo mkdir /etc/nginx/ssl

Krok 4: Wygeneruj samopodpisane certyfikaty SSL/TLS(opcjonalnie)

Jeśli nie używasz certyfikatów SSL wydanych przez urząd certyfikacji, możesz wygenerować certyfikaty z podpisem własnym za pomocą OpenSSL. Jest to przydatne do testowania protokołu SSL/TLS w środowisku programistycznym. Aby utworzyć certyfikat z podpisem własnym, uruchom następujące polecenia:

cd /etc/nginx/ssl  
sudo openssl genrsa -out server.key 2048  
sudo openssl req -new -key server.key -out server.csr  
sudo openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt  

Krok 5: Skonfiguruj Nginx do używania SSL/TLS

Otwórz Nginx plik konfiguracyjny strony, którą chcesz zabezpieczyć:

sudo vi /etc/nginx/conf.d/your_domain.conf

Dodaj następujące wiersze do pliku konfiguracyjnego, aby włączyć protokół SSL:

server {  
    listen 80;  
    server_name your_domain.com www.your_domain.com;  
    return 301 https://$host$request_uri;  
}  
  
server {  
    listen 443 ssl;  
    server_name your_domain.com www.your_domain.com;  
  
    ssl_certificate /etc/nginx/ssl/server.crt;  
    ssl_certificate_key /etc/nginx/ssl/server.key;  
  
    # Additional SSL/TLS options can be added here(optional)  
    ssl_protocols TLSv1.2 TLSv1.3;  
    ssl_prefer_server_ciphers on;  
    ssl_ciphers 'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH';  
      
    # Additional configurations(if needed)  
      
    location / {  
        # Reverse proxy configuration(if needed)  
    }  
}  

Krok 6: Przetestuj i uruchom ponownie Nginx

Sprawdź, czy Nginx konfiguracja nie zawiera błędów:

sudo nginx -t

Jeśli nie ma żadnych błędów, uruchom ponownie Nginx usługę, aby zastosować nową konfigurację:

sudo systemctl restart nginx

Po zakończeniu Twoja witryna zostanie zabezpieczona protokołem SSL/TLS. Pamiętaj, że użycie certyfikatów z podpisem własnym spowoduje wyświetlenie w przeglądarce ostrzeżenia o niezaufanych certyfikatach. Aby mieć zaufany certyfikat SSL/TLS, musisz kupić lub uzyskać bezpłatny certyfikat od urzędu certyfikacji.