Sikring av Nginx med SSL/TLS
Implementer HTTPS ved å konfigurere SSL/TLS-sertifikater med Nginx for sikker kommunikasjon.
Sikring av Nginx med SSL/TLS er en gratis leksjon i API-gateway og reverse proxy (Nginx + Spring Cloud Gateway) på CoddyKit. Dette er leksjon 1 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i API-gateway og reverse proxy (Nginx + Spring Cloud Gateway), og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i API-gateway og reverse proxy (Nginx + Spring Cloud Gateway) inneholder totalt 4 leksjoner.
Sikre nettstedet med HTTPS
Velkommen til sikring av Nginx med SSL/TLS! I denne leksjonen får du veiledning i hvordan du setter opp HTTPS for nettstedene dine.
HTTPS (Hypertext Transfer Protocol Secure) er den sikre versjonen av HTTP. Den sørger for at kommunikasjonen mellom brukerens nettleser og Nginx-serveren din er kryptert og autentisert.
HTTPS er avgjørende for å beskytte sensitive data, skape tillit hos brukerne og oppfyller ofte kravene for moderne nettfunksjoner og SEO.
Slik beskytter SSL/TLS data
HTTPS er i bunn og grunn avhengig av protokollene SSL/TLS (Secure Sockets Layer/Transport Layer Security). Disse protokollene oppretter en kryptert forbindelse mellom en klient og en server.
- Håndtrykk: Når du besøker et HTTPS-nettsted, utfører nettleseren og serveren et «håndtrykk» for å bli enige om krypteringsmetoder.
- Kryptering: Når de er blitt enige, krypteres alle data som utveksles (passord, kredittkortnumre og så videre), slik at de blir uleselige for uvedkommende.
- Autentisering: Serverens identitet bekreftes også ved hjelp av et sertifikat, noe som hindrer såkalte «man-in-the-middle»-angrep.
Forstå SSL-sertifikater
Et SSL-sertifikat er en digital fil som knytter en kryptografisk nøkkel til opplysningene om en organisasjon. Det utstedes av en betrodd Certificate Authority (CA).
Når en nettleser kobler til et HTTPS-nettsted, kontrollerer den sertifikatet for å sikre at:
- Nettstedets identitet er legitim.
- Forbindelsen er kryptert.
- Dataene ikke har blitt endret.
Sertifikater finnes på ulike valideringsnivåer, fra enkel Domain Validated (DV) til Extended Validation (EV), som gir høyere grad av sikkerhet.
Skaff SSL-sertifikatet ditt
For å aktivere HTTPS trenger du først et SSL-sertifikat. Det finnes to hovedmåter å skaffe et på:
- Kommersielle CA-er: Selskaper som DigiCert eller GlobalSign selger sertifikater, ofte med ekstra funksjoner og garantier.
- Let's Encrypt: En gratis, automatisert og åpen sertifikatutsteder. Den brukes mye fordi den er enkel og kostnadseffektiv. Vi fokuserer på å konfigurere Nginx med sertifikater som er skaffet på denne måten.
For Let's Encrypt automatiserer verktøy som Certbot prosessen med å skaffe og fornye sertifikater.
Forberedelse av Nginx SSL-konfigurasjon
Før du går i gang med Nginx-konfigurasjonen, må du sørge for at du har disse forutsetningene:
- Nginx installert: Nginx-serveren kjører.
- Domenenavn: Et registrert domenenavn som peker til serverens IP-adresse.
- Sertifikatfiler: Du trenger to hovedfiler: sertifikatfilen (for eksempel
yourdomain.crt) og filen med den private nøkkelen (for eksempelyourdomain.key). Disse plasseres vanligvis i en sikker katalog som/etc/nginx/ssl/eller/etc/letsencrypt/live/yourdomain/.
Viktige Nginx SSL-direktiver
Konfigurering av Nginx for SSL begynner med å definere en server-blokk som lytter på port 443 (standardporten for HTTPS) og angir sertifikatfilene dine.
Her er et grunnleggende eksempel:
server {
listen 443 ssl;
server_name example.com;
ssl_certificate /etc/nginx/ssl/example.com.crt;
ssl_certificate_key /etc/nginx/ssl/example.com.key;
# Your website's root directory
root /var/www/html;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}Avanserte SSL-sikkerhetsinnstillinger
For å øke sikkerheten er det god praksis å angi hvilke SSL/TLS-protokoller og krypteringsmetoder Nginx skal bruke. Dette bidrar til å forhindre sårbarheter i eldre og mindre sikre alternativer.
ssl_protocols: Definerer tillatte TLS-versjoner (for eksempel TLSv1.2 og TLSv1.3).ssl_ciphers: Lister opp sterke krypteringsalgoritmer.ssl_prefer_server_ciphers on: Ber serveren prioritere sin egen rekkefølge for krypteringsmetoder fremfor klientens.
server {
listen 443 ssl;
server_name example.com;
ssl_certificate /etc/nginx/ssl/example.com.crt;
ssl_certificate_key /etc/nginx/ssl/example.com.key;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers 'ECDHE-ECDSA-AES128-GCM-256:ECDHE-RSA-AES128-GCM-256:ECDHE-ECDSA-AES256-GCM-256:ECDHE-RSA-AES256-GCM-256:DHE-RSA-AES128-GCM-256:DHE-RSA-AES256-GCM-256';
ssl_prefer_server_ciphers on;
root /var/www/html;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}Tving omdirigering til HTTPS
For optimal sikkerhet bør du sørge for at all HTTP-trafikk automatisk omdirigeres til HTTPS. Dette kan gjøres ved å legge til en separat server-blokk som lytter på port 80 (HTTP) og sender en 301-omdirigering (permanent).
Da får du sikker tilgang til nettstedet hver gang, selv om brukerne skriver inn http://.
server {
listen 80;
server_name example.com www.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name example.com www.example.com;
ssl_certificate /etc/nginx/ssl/example.com.crt;
ssl_certificate_key /etc/nginx/ssl/example.com.key;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers 'ECDHE-ECDSA-AES128-GCM-256:ECDHE-RSA-AES128-GCM-256:ECDHE-ECDSA-AES256-GCM-256:ECDHE-RSA-AES256-GCM-256:DHE-RSA-AES128-GCM-256:DHE-RSA-AES256-GCM-256';
ssl_prefer_server_ciphers on;
root /var/www/html;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}Test HTTPS-konfigurasjonen
Etter at du har konfigurert Nginx, er det viktig å teste oppsettet for å sikre at alt fungerer riktig og sikkert.
- Nettleser: Åpne nettstedet i en nettleser. Se etter hengelåsikonet i adressefeltet.
- Utviklerverktøy: Bruk nettleserens utviklerverktøy (fanen Network) for å kontrollere at forespørslene går over HTTPS.
- SSL Labs: Bruk nettbaserte verktøy som SSL Labs' SSL Server Test for å få en omfattende rapport og en sikkerhetsvurdering av serveren.
curl: Brukcurl -v https://yourdomain.comi terminalen for å undersøke detaljene i SSL-håndtrykket.
Test kunnskapen din om SSL
Hvilket Nginx-direktiv brukes hovedsakelig til å angi filbanen til serverens offentlige SSL-sertifikat?
Oppsummering og neste steg
Gratulerer! Du har lært hvordan du sikrer Nginx med SSL/TLS.
Vi har gått gjennom:
- Hvorfor HTTPS er viktig, og hvordan SSL/TLS fungerer.
- SSL-sertifikater og hvordan du skaffer dem.
- Konfigurering av Nginx med grunnleggende og avanserte SSL-direktiver.
- Omdirigering fra HTTP til HTTPS for full sikkerhet.
- Metoder for å teste SSL-konfigurasjonen.
Å holde nettstedene dine sikre er en kontinuerlig prosess. Kontroller sertifikatene regelmessig for å se når de utløper, og hold Nginx oppdatert.
Lær deg API-gateway og reverse proxy (Nginx + Spring Cloud Gateway) med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 12
- Leksjoner
- 48
Ofte stilte spørsmål
Er leksjonen «Sikring av Nginx med SSL/TLS» gratis?
Ja – hele teksten i «Sikring av Nginx med SSL/TLS» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av API-gateway og reverse proxy (Nginx + Spring Cloud Gateway)-kurset, kan du oppgradere til CoddyKit PRO. Kurset i API-gateway og reverse proxy (Nginx + Spring Cloud Gateway) inneholder totalt 4 leksjoner.
Hva lærer jeg i «Sikring av Nginx med SSL/TLS»?
Implementer HTTPS ved å konfigurere SSL/TLS-sertifikater med Nginx for sikker kommunikasjon. Du øver på API-gateway og reverse proxy (Nginx + Spring Cloud Gateway) med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med API-gateway og reverse proxy (Nginx + Spring Cloud Gateway)?
Ingen tidligere erfaring er nødvendig. API-gateway og reverse proxy (Nginx + Spring Cloud Gateway) på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 1 av 4.
Hvor lang tid tar leksjonen «Sikring av Nginx med SSL/TLS»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne API-gateway og reverse proxy (Nginx + Spring Cloud Gateway)-leksjonen?
Ja. Alle API-gateway og reverse proxy (Nginx + Spring Cloud Gateway)-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Sikring av Nginx med SSL/TLS
- HTTP/2 og optimalisering av Nginx
- Grunnleggende autentisering og tilgangskontroll
- Sikring av Nginx med sikkerhetsheadere