For at konfigurere SSL/TLS med Nginx til Ubuntu, kan du følge disse trin:
Trin 1: Installer Nginx
Hvis du ikke har installeret Nginx, skal du køre følgende kommandoer for at installere det:
sudo apt update
sudo apt install nginx
Trin 2: Installer OpenSSL
Hvis du ikke har OpenSSL installeret, skal du installere det ved hjælp af følgende kommando:
sudo apt install openssl
Trin 3: Opret en mappe til SSL-certifikatfiler
Opret en mappe til at gemme SSL-certifikatfiler:
sudo mkdir /etc/nginx/ssl
Trin 4: Generer selvsignerede SSL/TLS-certifikater(valgfrit)
Hvis du ikke bruger SSL-certifikater fra en certifikatmyndighed, kan du generere selvsignerede certifikater med OpenSSL. Dette er nyttigt til at teste SSL/TLS i et udviklingsmiljø. For at oprette et selvsigneret certifikat skal du køre følgende kommandoer:
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
Trin 5: Konfigurer Nginx til at bruge SSL/TLS
Åbn Nginx konfigurationsfilen for det websted, du vil sikre:
sudo vi /etc/nginx/sites-available/your_domain
Tilføj følgende linjer til konfigurationsfilen for at aktivere 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)
}
}
Trin 6: Aktiver konfigurationen og genstart Nginx
Opret et symbolsk link fra konfigurationsfilen til sites-available
for sites-enabled
at aktivere konfigurationen:
sudo ln -s /etc/nginx/sites-available/your_domain /etc/nginx/sites-enabled/
Tjek om Nginx konfigurationen har nogen fejl:
sudo nginx -t
Hvis der ikke er nogen fejl, genstart Nginx tjenesten for at anvende den nye konfiguration:
sudo systemctl restart nginx
Når det er afsluttet, vil dit websted være sikret med SSL/TLS. Bemærk, at brug af selvsignerede certifikater vil resultere i, at browseren advarer om certifikater, der ikke er tillid til. For at have et pålideligt SSL/TLS-certifikat skal du købe eller få et gratis certifikat fra en certifikatmyndighed.