Vi kommer att använda olika Nginx-serverkonfigurationsfiler eftersom det hjälper till att undvika vanliga misstag och hjälper också till att behålla standardkonfigurationsfilerna som ett alternativ.
Steg 1:
Som alltid, uppdatera först din APT.
$ sudo apt uppdatering
Steg 2:
Uppgradera nu din APT.
$ sudo apt uppgradering
Steg 3:
Ladda nu ner och installera ett Certbot-programverktyg som hjälper dig att få ett SSL-certifikat från Let's Encrypt. Utför följande terminalkommando för att installera Certbot via APT.
$ sudo apt installera certbot python3-certbot-nginx
Detta kommer att installera certbot, men du måste fortfarande konfigurera Ngnix-konfigurationsfilen för installation av SSL-certifikat.
Steg 4:
Du bör skapa ett serverblock innan du går till nästa steg, och det är ett nödvändigt steg om du är värd för flera webbplatser. Vi skapar en ny katalog i “/ var / www” -sökvägen och låter standardkatalogen inte beröras. Utför följande kommando för att skapa en ny katalog.
$ sudo mkdir -p / var / www / exempel.com / html
Steg 5:
Ge nu äganderätt till denna katalog via följande terminalkommando.
$ sudo chown -R $ USER: $ USER / var / www / exempel.com / html
Steg 6:
Se nu till att behörigheterna beviljas genom att utföra följande terminalkommando.
$ sudo chmod -R 755 / var / www / exempel.com
Steg 7:
Skapa nu ett index.html-fil med din favorittextredigerare, jag använder en gedit textredigerare.
$ sudo gedit / var / www / exempel.com / html / index.html
Lägg till följande text i denna HTML-fil.
Framgång! Exemplet.com-serverblocket fungerar!
Spara och stäng filen.
Steg 8:
Skapa nu en ny konfigurationsfil, den tillgängliga webbplatskatalogen med din favorittextredigerare genom att utföra följande kommando.
$ sudo gedit / etc / nginx / sites-available / exempel.com
Lägg nu till följande text i denna konfigurationsfil för den nya katalogen och domännamnet.
serverlyssna 80;
lyssna [::]: 80;
root / var / www / exempel.com / html;
indexindex.html-index.htm-index.nginx-debian.html;
server_name exempel.com www.exempel.com;
plats /
try_files $ uri $ uri / = 404;
Spara och stäng den här filen för att få effekter.
Steg 9:
Aktivera nu den nya katalogen för Nginx-start via följande terminalkommando.
$ sudo ln -s / etc / nginx / webbplatser tillgängliga / exempel.com / etc / nginx / site-enabled /
Steg 10:
För att undvika problem med serverns hash-skopminne, ange ett enda värde i följande konfigurationsfil.
$ sudo gedit / etc / nginx / nginx.konfTa nu bort # -tecknet från hash_bucket_size-alternativet för att avmarkera det. Spara stäng filen.
Steg 11:
Skriv nu följande två kommandon för att ta bort syntaxfel och starta om Nginx-servern.
$ sudo nginx -t$ sudo systemctl starta om nginx
Steg 12:
Nu måste du verifiera och bekräfta Nginx-konfigurationsfiler. Eftersom certbot måste hitta rätt serverblock i Nginx-konfiguration, letar det efter ett servernamn som matchar den begärda domänen. För att verifiera dessa konfigurationsfiler, skriv följande terminalkommando.
$ sudo nginx -t
Steg 13:
Uppdatera nu dina UFW-brandväggsregler så att Nginx får full behörighet. Om du har tidigare regler som rör HTTP-servern, ta bort dem med hjälp av UFW-avvisningsalternativet innan du lägger till följande kommando.
sudo ufw tillåter 'Nginx Full'
Steg 14:
Nu kommer vi till den punkt där vi måste installera ett SSL-certifikat med certbot-programvara. Utför följande terminalkommando.
$ sudo certbot --nginx -d exempel.com -d www.exempel.com
Om du använder certbot för första gången kommer du att bli ombedd att ange en e-postadress och villkor, acceptera att göra det, och du kommer att kunna flytta nästa steg.
Steg 15:
Nu blir du ombedd att konfigurera dina HTTPS-inställningar, välj nödvändiga alternativ och tryck på Enter-knappen för att fortsätta. Certbot installerar alla nödvändiga certifikat och uppdaterar Nginx-filerna. din server laddar om med ett meddelande om att din process är framgångsrik.
Steg 16:
Nu när du har installerat certifikaten bör du också se till att dessa certifikat förnyas automatiskt efter en viss tid. Utför följande två terminalkommandon för att säkerställa processens förmåga.
$ sudo systemctl status certbot.timer$ sudo certbot förnya - torrkörning
Slutsats:
Hittills har vi täckt hur man bygger ett separat serverblock i Nginx, installerar certifikat med Certbot-programvaruverktyget från Let's Encrypt certifikatutfärdarservrar och hur man använder en förnyelseprocess för dessa certifieringar.