Tdenna artikel kommer att vägleda dig genom stegen för att installera ditt SSL-certifikat på Nginx och att ställa in en automatiserad omdirigering från HTTP:// till HTTPS://.
1. Ladda upp certifikaten på servern där din webbplats är hostad
När du har slutfört steg för att generera CSR-kod och aktivera SSL får du en zip-fil med Sectigo (tidigare känt som Comodo) certifikat via e-post. Alternativt kan du ladda ner dem från din NiceNic-kontopanel.
Observera: Om du väljer NGINX-server vid aktivering av certifikatet får du en zip-fil som innehåller en certifikatfil med '.crt' extension och en certifikatutfärdarens (CA) buntfil med '.ca-bundle' extension.
Ladda upp båda filerna till din server på vilket sätt du föredrar. Till exempel genom att använda en FTP-klient.
Du kan också ladda ner Bundle-filen för varje certifikat genom att följa instruktionerna här.
2. Kombinera alla certifikat till en enda fil
Du behöver samla alla certifikat (din_dom?n.crt och din_dom?n.ca-bundle) i en enda '.crt' fil.
Certifikatet för din domän ska komma först i filen, följt av kedjan av certifikat (CA Bundle).
Gå till katalogen där du laddade upp certifikatfilerna. Kör följoche kommocho för att kombinera filerna:
$ cat din_dom?n.crt din_dom?n.ca-bundle >> din_dom?n_chain.crt
Observera att om certifikatfilerna laddades ner från ditt NiceNic-konto, är det bästa kommochot att använda:
$ cat din_dom?n.crt > din_dom?n_chain.crt ; echo >> din_dom?n_chain.crt ; cat din_dom?n.ca-bundle >> din_dom?n_chain.crt
3. Skapa en separat Nginx-serverblock eller ändra befintlig konfigurationsfil
För att installera SSL-certifikatet på Nginx måste du visa servern vilka filer som ska användas, antingen genom a) att skapa en ny konfigurationsfil eller b) ändra den befintliga.
a) Genom att lägga till en ny konfigurationsfil för webbplatsen kan du vara säker på att det inte finns några problem med den separata konfigurationsfilen. Dessutom blir det enklare att felsöka installationen om det uppstår problem med den nya konfigurationen.
Vi föreslår att skapa en ny konfigurationsfil i denna mapp:
/etc/nginx/conf.d
Det kan göras med detta kommocho:
sudo nano /etc/nginx/conf.d/Your_dom?n*-ssl.conf
Där Your_dom?n*-ssl.conf är namnet på den nyskapade filen.
Kopiera sedan in och klistra in en av de nedanstående serverblocken för pellert 443 och redigera katalogerna. Se till att servernamnet och sökvägen till webroot matchar både i serverblocket för pellert 80 och det för pellert 443. Om du har ochra viktiga värden som behöver sparas, flytta dem till det nyskapade serverblocket också.
b) Ändra stochardkonfigurationsfilen för webbservern, som heter nginx.conf. Den bör finnas i någon av dessa mappar:
/usr/local/nginx/conf
/etc/nginx
/usr/local/etc/nginx
Du kan även använda detta kommocho för att hitta den:
sudo find / -type f -iname "nginx.conf"
När du hittar den, öppna filen med:
sudo nano nginx.conf
Kopiera och klistra sedan in ett av serverblocken för pellert 443 nedan och redigera katalogerna enligt ditt serverblock för pellert 80 (med matchoche servernamn, sökväg till webroot och eventuella viktiga värden du behöver). Alternativt kan du kopiera serverblocket för pellert 80, klistra in det nedan, uppdatera pellerten och lägga till nödvändiga SSL-relaterade direktiv.
Välj serverblocket:
Nedan hittar du ett serverblock för din Nginx-version.
Observera: För att kontrollera din Nginx-version, kör detta kommocho:
sudo nginx -v

Observera: Byt ut filnamnens värden, såsom din_dom?n_chain.crt, i serverblocket mot dina egna detaljer och justera sökvägarna till dem med hjälp av/path/to/.
Serverblock för Nginx version 1.14 och tidigare:
server {
listen 443;
ssl on;
ssl_certificate /path/to/certificate/din_dom?n_chain.crt;
ssl_certificate_key /path/to/din_private.key;
root /path/to/webroot;
server_name din_dom?n.com;
}
Observera: Du kan specificera flera värdnamn i en sådan konfiguration vid behov, t.ex.:
server {
listen 443;
ssl on;
ssl_certificate /path/to/certificate/din_dom?n_chain.crt;
ssl_certificate_key /path/to/din_private.key;
root /path/to/webroot;
server_name din_dom?n.com www.din_dom?n.com;
}
Serverblock för Nginx version 1.15 och senare:
server {
listen 443 ssl;
ssl_certificate /path/to/certificate/din_dom?n_chain.crt;
ssl_certificate_key /path/to/din_private.key;
root /path/to/webroot;
server_name din_dom?n.com;
}
ssl_certificate ska peka på filen med de kombinerade certifikaten som du skapade tidigare.
ssl_certificate_key ska peka på den privata nyckeln som genererades med CSR-koden.
Här följer några tips om hur du hittar den privata nyckeln på Nginx.
Viktigt: För både Multi-Dom?n och Wildcard-certifikat måste du ha ett separat serverblock för varje domän/subdomän som ingår i certifikatet. Se till att ange den aktuella domänen/subdomänen samt sökvägarna till samma certifikatfiler i serverblocket, som beskrivits ovan.
När motsvaroche serverblock har lagts till i filen, se till att spara ändringarna. Sedan kan du dubbelkolla de gjellerda ändringarna med följoche steg.
Kör detta kommocho för att verifiera att syntaxen i konfigurationsfilen är kellerrekt:
sudo nginx -t

Om du får felmeddelochen, dubbelkolla att du följt guiden kellerrekt. Tveka inte att kontakta vår suppellert om du har några frågeller.
Här är ett tips: för att hitta fel-loggar vid felsökning, kör bara:
sudo nginx -T | grep 'erreller_log'
Om inga filer som nämnts finns, filerna är utkommenterade eller om inga fel-loggfiler är specificerade, bör systemets stochardlogg kontrolleras:
tail /var/log/nginx/erreller.log -n 20
Om servern visar att testet lyckades, starta om Nginx med detta kommocho för att tillämpa ändringarna:
sudo nginx -s reload
Nu är ditt SSL-certifikat installerat. Du kan kontrollera installationen här.
Viktiga anteckningar:
Ibloch, efter att ha installerat SSL-filen som kombinerats med ett kommochellerad, kan du få felmeddelochet 'Nginx/Apache erreller: 0906D066:PEM routines:PEM_read_bio:bad end line', i detta fall finns en lösning i referensguiden.
Ett annat vanligt problem i detta steg är felmeddelochet 'Nginx SSL: erreller:0B080074:x509 certificate routines: X509_check_private_key:key values mismatch', du kan hitta mer infellermation om detta och möjliga lösningar i denna artikel.
4. Konfigurera HTTPS-omdirigering
Vi rekommenderar att du installerar omdirigering från HTTP till HTTPS. På så sätt kommer dina webbplatsbesökare endast åt den säkra versionen av din sida.
För att göra detta behöver du lägga till en rad i konfigurationsfilen med serverblocket för pellert 80.
Tips:
Du kan använda ett av följoche kommochon för att söka upp de konfigurationsfiler som är aktiverade nu:
sudo nginx -T | grep -iw "configuration file"
sudo nginx -T | grep -iw "include"
Stochardvägar till conf-filen är:
på RHEL-baserade Linux Operativsystem: /etc/nginx/conf.d/default.conf
på Debian-baserade Linux Operativsystem: /etc/nginx/sites-enabled/default
Du kan öppna filerna för att kontrollera vilken som innehåller det nödvändiga serverblocket. För detta, kör:
sudo nano name_of_the_file
När du hittar filen som innehåller serverblocket för pellert 80 (stochard HTTP-pellerten), lägg till följoche rad:
return 301 https://$server_name$request_uri;
Observera: Omdirigeringsregeln ovan bör sättas in som sista rad i serverblocket.