Konfigurera SSL/TLS med Nginx på Ubuntu

För att konfigurera SSL/TLS med Nginx på Ubuntu kan du följa dessa steg:

Steg 1: Installera Nginx

Om du inte har installerat Nginx, kör följande kommandon för att installera det:

sudo apt update  
sudo apt install nginx

Steg 2: Installera OpenSSL

Om du inte har OpenSSL installerat, installera det med följande kommando:

sudo apt install openssl

Steg 3: Skapa en katalog för SSL-certifikatfiler

Skapa en katalog för att lagra SSL-certifikatfiler:

sudo mkdir /etc/nginx/ssl

Steg 4: Generera självsignerade SSL/TLS-certifikat(valfritt)

Om du inte använder SSL-certifikat från en certifikatutfärdare kan du generera självsignerade certifikat med OpenSSL. Detta är användbart för att testa SSL/TLS i en utvecklingsmiljö. För att skapa ett självsignerat certifikat, kör följande kommandon:

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  

Steg 5: Konfigurera Nginx för att använda SSL/TLS

Öppna Nginx konfigurationsfilen för webbplatsen du vill säkra:

sudo vi /etc/nginx/sites-available/your_domain

Lägg till följande rader i konfigurationsfilen för att aktivera 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)  
    }  
}  

Steg 6: Aktivera konfigurationen och starta om Nginx

Skapa en symbolisk länk från konfigurationsfilen till sites-available för sites-enabled att aktivera konfigurationen:

sudo ln -s /etc/nginx/sites-available/your_domain /etc/nginx/sites-enabled/

Kontrollera om Nginx konfigurationen har några fel:

sudo nginx -t

Om det inte finns några fel, starta om Nginx tjänsten för att tillämpa den nya konfigurationen:

sudo systemctl restart nginx

När den är klar kommer din webbplats att säkras med SSL/TLS. Observera att användning av självsignerade certifikat kommer att resultera i att webbläsaren varnar om otillförlitliga certifikat. För att ha ett pålitligt SSL/TLS-certifikat måste du köpa eller skaffa ett gratis certifikat från en certifikatutfärdare.