Hur man konfigurerar säkerhetshuvuden i Nginx

Att konfigurera säkerhetsrubriker i NGINX är viktigt för att förbättra säkerheten för dina webbapplikationer. Säkerhetsrubriker skyddar mot olika attacker, såsom cross-site scripting (XSS), clickjacking och andra kodinjektionsattacker. De instruerar webbläsaren om hur man hanterar din webbplats innehåll, vilket ger ett extra lager av säkerhet.

Den här guiden leder dig genom stegen för att konfigurera säkerhetsrubriker i NGINX, vilket hjälper dig att skydda dina webbapplikationer och förbättra den övergripande säkerheten.

Implementering av HTTP Strict Transport Security (HSTS) i NGINX

Förstå HSTS

HTTP Strict Transport Security (HSTS) är ett avgörande säkerhetsprotokoll för webbplatser. Den tvingar fram att anslutningar till en domän uteslutande sker via HTTPS. Detta minskar risker som man-i-mitten-attacker och säkerställer integriteten och konfidentialiteten för data som överförs online. När en användare försöker komma åt en webbplats via HTTP, uppgraderar HSTS automatiskt anslutningen till HTTPS.

Konfigurera HSTS i NGINX

För att ställa in HSTS i NGINX måste du uppdatera serverblocket i NGINX-konfigurationsfilen. Den här filen finns vanligtvis på /etc/nginx/nginx.conf eller inom platsspecifika konfigurationer på /etc/nginx/sites-available/. Uppdateringen innebär att man lägger till en rubrik som instruerar webbläsaren att alltid använda HTTPS för den angivna domänen.

Lägg till följande rad i serverblocket för din domän:

add_header Strict-Transport-Security "max-age=31536000; includeSubDomains";

Denna rad innehåller två komponenter:

  • max-age=31536000: Instruera webbläsaren att komma ihåg att använda HTTPS för din webbplats under de kommande 12 månaderna.
  • includeSubDomains: Tillämpar HSTS-policyn på alla underdomäner på din webbplats för omfattande säkerhet.

Exempel på NGINX-konfiguration med HSTS

Din NGINX-konfiguration med HSTS-huvudet kan se ut så här:

upstream my_portal {
    server 127.0.0.1:8080;
}

server {
    listen 80;
    server_name example.com;
    add_header Strict-Transport-Security "max-age=31536000; includeSubDomains";

    location / {
        proxy_pass http://my_portal;
    }
}

Efter att ha lagt till denna rubrik, ladda om NGINX för att genomföra ändringarna med sudo systemctl reload nginx eller sudo nginx -s reload.

Ytterligare NGINX-konfigurationsexempel

För olika scenarier kan din NGINX-konfiguration med HSTS variera. Här är ytterligare exempel:

Server för flera domäner

server {
    listen 80;
    server_name example1.com example2.com;
    add_header Strict-Transport-Security "max-age=31536000; includeSubDomains";

    location / {
        # Configuration details
    }
}

Den här konfigurationen tillämpar HSTS på flera domäner som finns på samma server. Varje domän som anges kommer att upprätthålla HTTPS-anslutningar.

Server med SSL-terminering

server {
    listen 443 ssl;
    server_name example.com;
    ssl_certificate /path/to/certificate;
    ssl_certificate_key /path/to/private/key;
    add_header Strict-Transport-Security "max-age=31536000; includeSubDomains";

    location / {
        # Configuration details
    }
}

Denna inställning är för servrar som hanterar SSL-uppsägning. Den konfigurerar HSTS på en säker port (443) med specificerade SSL-certifikat, vilket förstärker säkra anslutningar.

Konfigurera Content-Security-Policy (CSP) i NGINX

Implementering av CSP i NGINX

Att integrera en Content-Security-Policy (CSP) i NGINX är ett strategiskt steg för att förbättra säkerheten för webbapplikationer. Det innebär att lägga till en specifik rubrik i serverblocket i din NGINX-konfigurationsfil. Vanligtvis finns på /etc/nginx/nginx.conf eller i katalogen /etc/nginx/sites-available/, den här filen kräver noggrann redigering för att tillämpa CSP effektivt.

För en grundläggande CSP-inställning, lägg till följande rad i serverblocket:

add_header Content-Security-Policy "default-src 'self';" always;

Detta direktiv begränsar innehållsladdning till webbplatsens domän ("jaget"), vilket avsevärt minskar risken för exekvering av skadligt externt innehåll.

Exempel på NGINX-konfiguration med CSP

Din NGINX-konfiguration med det grundläggande CSP-direktivet kan se ut så här:

upstream my_portal {
    server 127.0.0.1:8080;
}

server {
    listen 80;
    server_name example.com;
    add_header Content-Security-Policy "default-src 'self';" always;

    location / {
        proxy_pass http://my_portal;
    }
}

Ladda om NGINX med sudo systemctl reload nginx eller sudo nginx -s reload efter att ha lagt till detta direktiv.

Anpassa CSP för specifika behov

CSP kan skräddarsys för att möta specifika säkerhetsbehov på din webbplats. Här är utökade konfigurationer för olika scenarier:

Tillåter bilder från vilken källa som helst

add_header Content-Security-Policy "default-src 'self'; img-src *;" always;

Den här konfigurationen tillåter att bilder laddas från vilken källa som helst, med strikt kontroll över andra typer av innehåll.

Konfiguration av specifika skript och stilar

add_header Content-Security-Policy "default-src 'self'; script-src 'self' https://trustedscript.com; style-src 'self' 'unsafe-inline';";

Den här inställningen tillåter skript från din domän och en pålitlig extern källa tillsammans med inline-stilar, vilket balanserar funktionalitet med säkerhet.

Utforska CSP-direktiv och alternativ

Direktiv i CSP

CSP-direktiv är regler som definierar policyn för specifika innehållstyper. Vanliga direktiv inkluderar:

  • default-src: Standardpolicyn som tillämpas på de flesta innehållstyper.
  • script-src: Styr källorna för JavaScript-resurser.
  • style-src: Anger tillåtna källor för CSS-resurser.
  • img-src: Styr källorna för bildresurser.
  • connect-src: Anger policyer för nätverksanslutningar som XMLHttpRequest, WebSocket och EventSource.

Källuttryck i CSP

Källuttryck definierar tillåtna källor för varje direktiv:

  • 'ingen': Blockerar alla källor.
  • 'self': Tillåter resurser från samma ursprung.
  • 'unsafe-inline': Tillåter inline-resurser som stilar eller JavaScript-URL:er.
  • 'unsafe-eval': Tillåter JavaScript eval() funktioner och liknande metoder.
  • https:: Aktiverar resurser från valfri HTTPS-URL.

Konfigurera X-XSS-Protection i NGINX

Introduktion till X-XSS-Protection

X-XSS-Protection, eller Cross-Site Scripting-huvudet, är viktigt för att skydda webbapplikationer från XSS (Cross-Site Scripting)-attacker. Den här rubriken stöds av stora webbläsare som Chrome, Internet Explorer och Safari och förbättrar webbsäkerheten genom att förhindra laddning av sidor när reflekterade XSS-attacker upptäcks.

Aktiverar X-XSS-skydd i NGINX

Att integrera X-XSS-Protection-huvudet i din NGINX-serverkonfiguration stärker webbläsarens inbyggda XSS-skydd. För att aktivera denna säkerhetsfunktion, gå till din NGINX-konfigurationsfil, som vanligtvis finns på /etc/nginx/nginx.conf eller i katalogen /etc/nginx/sites-available/.

I serverblocket för din NGINX-konfigurationsfil, infoga detta direktiv:

add_header X-XSS-Protection "1; mode=block";

Detta direktiv består av två delar:

  • 1: Aktiverar webbläsarens XSS-filter.
  • mode=block: Anvisar webbläsaren att blockera sidan om en XSS-attack upptäcks, istället för att försöka sanera den.

Exempel på NGINX-konfiguration med X-XSS-skydd

Ett exempel på NGINX-konfiguration inklusive X-XSS-Protection kan se ut som följer:

upstream my_portal {
    server 127.0.0.1:8080;
}

server {
    listen 80;
    server_name example.com;
    add_header X-XSS-Protection "1; mode=block";

    location / {
        proxy_pass http://my_portal;
    }
}

Efter att ha lagt till denna rubrik, ladda om NGINX med antingen sudo systemctl reload nginx eller sudo nginx -s reload.

Ytterligare NGINX-konfigurationsscenarier

För en server med SSL

server {
    listen 443 ssl;
    server_name example.com;
    ssl_certificate /path/to/certificate;
    ssl_certificate_key /path/to/private/key;
    add_header X-XSS-Protection "1; mode=block";

    # Further configuration
}

Denna inställning är för servrar med SSL, vilket säkerställer att X-XSS-Protection är aktivt på krypterade anslutningar.

Hantera flera domäner

server {
    listen 80;
    server_name example1.com example2.com;
    add_header X-XSS-Protection "1; mode=block";

    # Further configuration
}

Den här konfigurationen tillämpar X-XSS-skydd över flera domäner på en enda server.

Konfigurera X-Frame-Options i NGINX

Rollen av X-Frame-Options

X-Frame-Options är en viktig säkerhetsrubrik designad för att skydda webbplatser från clickjacking-attacker. Det förhindrar webbsidor från att visas i ramar eller iframes, som ofta används i dessa attacker. X-Frame-Options stöds av alla större webbläsare och ger ett omfattande skydd, vilket ökar säkerheten för din webbnärvaro på olika plattformar.

Implementering av X-Frame-Options i NGINX

Att införliva X-Frame-Options-huvudet i din NGINX-serverkonfiguration är avgörande för att förbättra din webbplats säkerhet. Den här uppgiften involverar redigering av NGINX-konfigurationsfilen, som vanligtvis finns på /etc/nginx/nginx.conf eller i katalogen /etc/nginx/sites-available/.

För att aktivera denna säkerhetsfunktion, lägg till följande direktiv till serverblocket i din NGINX-konfigurationsfil:

add_header X-Frame-Options "DENY";

Detta direktiv, inställt på "NEJA", instruerar webbläsaren att blockera alla försök att rendera sidan i en ram eller iframe, vilket erbjuder ett robust försvar mot clickjacking.

Exempel på NGINX-konfiguration med X-Frame-Options

Ett exempel på NGINX-installation med X-Frame-Options-huvudet är som följer:

upstream my_portal {
    server 127.0.0.1:8080;
}

server {
    listen 80;
    server_name example.com;
    add_header X-Frame-Options "DENY";

    location / {
        proxy_pass http://my_portal;
    }
}

När du har lagt till den här rubriken är det viktigt att ladda om NGINX för att aktivera ändringarna. Detta kan göras med sudo systemctl reload nginx eller sudo nginx -s reload.

Utökar NGINX-konfigurationen för X-Frame-alternativ

För SSL-aktiverade servrar

server {
    listen 443 ssl;
    server_name example.com;
    ssl_certificate /path/to/certificate;
    ssl_certificate_key /path/to/private/key;
    add_header X-Frame-Options "DENY";

    # Additional configuration
}

Den här konfigurationen är för servrar med SSL, vilket säkerställer att X-Frame-Options tillämpas på säkra anslutningar.

Hantera flera domäner

server {
    listen 80;
    server_name example1.com example2.com;
    add_header X-Frame-Options "DENY";

    # Additional configuration
}

Den här inställningen tillämpar X-Frame-Options-huvudet på flera domäner på samma server, vilket stärker säkerheten för varje domän.

Implementering av X-Content-Type-Options i NGINX

Rollen för X-Content-Type-Options

X-Content-Type-Options är ett viktigt säkerhetshuvud inom webbsäkerhet som förhindrar webbläsare från att sniffa av MIME-typ. Den här rubriken förstärker att webbläsare respekterar den deklarerade innehållstypen i HTTP-rubriker och åtgärdar säkerhetsbrister som kan uppstå när webbläsare misstolkar filtyper, som att behandla bildfiler som körbar HTML, vilket kan leda till cross-site scripting (XSS) attacker.

Ställa in X-Content-Type-Options i NGINX

För att förbättra din webbservers säkerhet med X-Content-Type-Options-huvudet måste du ändra NGINX-konfigurationsfilen enkelt. Den här filen finns vanligtvis på /etc/nginx/nginx.conf eller inom platsspecifika konfigurationer i /etc/nginx/sites-available/.

Inkludera denna rubrik genom att lägga till följande rad i server block av din NGINX-konfiguration:

add_header X-Content-Type-Options "nosniff";

Inställningen "nosniff" styr webbläsaren att strikt följa serverns angivna innehållstyp, vilket förhindrar alternativa tolkningar av innehållet.

Exempel på NGINX-konfiguration med X-Content-Type-Options

En NGINX-konfiguration med X-Content-Type-Options kan vara strukturerad enligt följande:

upstream my_portal {
    server 127.0.0.1:8080;
}

server {
    listen 80;
    server_name example.com;
    add_header X-Content-Type-Options "nosniff";

    location / {
        proxy_pass http://my_portal;
    }
}

Efter att du har uppdaterat din konfiguration, se till att ladda om NGINX för att ändringarna ska träda i kraft, med sudo systemctl reload nginx eller sudo nginx -s reload.

Utökade NGINX-konfigurationsexempel

Konfiguration för SSL/TLS

server {
    listen 443 ssl;
    server_name example.com;
    ssl_certificate /path/to/certificate.pem;
    ssl_certificate_key /path/to/key.pem;
    add_header X-Content-Type-Options "nosniff";

    # Additional SSL configurations and locations
}

Denna inställning är för servrar med SSL/TLS, som använder X-Content-Type-Options på säkra anslutningar för att förbättra säkerheten.

Serverkonfiguration för flera domäner

server {
    listen 80;
    server_name example1.com example2.com;
    add_header X-Content-Type-Options "nosniff";

    # Additional configurations for multiple domains
}

Den här konfigurationen tillämpar rubriken X-Content-Type-Options på flera domäner på samma server, vilket säkerställer konsekventa säkerhetsinställningar över alla domäner.

Konfigurera Referrer-Policy i NGINX

Funktionen för Referrer-Policy

Referrer-Policy är ett viktigt HTTP-huvud för att förbättra användarnas integritet och säkerhet på webben. Den styr hur mycket hänvisningsinformation som ingår i referenshuvudet när användare navigerar från din webbplats till andra, vilket skyddar känslig information från exponering i webbförfrågningar.

Ställa in Referrer-Policy i NGINX

För att implementera Referrer-Policy-huvudet i din NGINX-server, ändra NGINX-konfigurationsfilen, som vanligtvis finns på /etc/nginx/nginx.conf eller i katalogen /etc/nginx/sites-available/. Lägg till följande direktiv till serverblocket:

add_header Referrer-Policy "no-referrer";

Detta direktiv, satt till "no-referrer", säkerställer att ingen hänvisningsinformation skickas under webbplatsnavigering, vilket maximerar integriteten.

Exempel på NGINX-konfiguration med referenspolicy

Din NGINX-konfiguration med Referrer-Policy-huvudet kan se ut så här:

upstream my_portal {
    server 127.0.0.1:8080;
}

server {
    listen 80;
    server_name example.com;
    add_header Referrer-Policy "no-referrer";

    location / {
        proxy_pass http://my_portal;
    }
}

Efter att ha lagt till denna rubrik, ladda om NGINX med kommandon som sudo systemctl reload nginx eller sudo nginx -s reload.

Referrer-policyalternativ och definitioner

  • no-referrer: Ingen hänvisningsinformation skickas.
  • no-referrer-when-downgrade (standard): Skickar hänvisningsinformation för destinationer med samma ursprung eller för säkra (HTTPS) måladresser från en säker sida.
  • ursprung: Skickar endast ursprunget (schema, värd och port).
  • origin-when-cross-origin: Skickar fullständig URL för begäranden med samma ursprung men endast ursprunget för andra fall.
  • same-origin: Skickar en fullständig referens för begäranden med samma ursprung men ingen rubrik för förfrågningar med flera ursprung.
  • strict-origin: Skickar ursprunget för HTTPS-förfrågningar men ingen rubrik för HTTP-förfrågningar.
  • strict-origin-when-cross-origin: Skickar fullständig hänvisning till begäranden med samma ursprung, ursprung till HTTPS-destinationer från HTTPS-sidor och ingen rubrik till HTTP-destinationer.
  • osäker-url: Skickar fullständig URL oavsett ursprung eller säkerhet (rekommenderas inte).

Utökade NGINX-konfigurationsexempel

SSL/TLS-konfiguration

server {
    listen 443 ssl;
    server_name secure.example.com;
    ssl_certificate /path/to/certificate.pem;
    ssl_certificate_key /path/to/key.pem;
    add_header Referrer-Policy "no-referrer";

    # Additional SSL configurations
}

Den här konfigurationen tillämpar Referrer-Policy-huvudet i en säker, SSL/TLS-aktiverad miljö, vilket förbättrar integriteten på krypterade anslutningar.

Serverkonfiguration för flera domäner

server {
    listen 80;
    server_name example1.com example2.com;
    add_header Referrer-Policy "no-referrer";

    # Additional configurations for each domain
}

Denna inställning säkerställer att Referrer-Policy-huvudet tillämpas på flera domäner på samma server, vilket bibehåller konsekventa sekretessinställningar.

Implementering av behörigheter-policy i NGINX

Förstå behörigheter-policy

Headern Permissions-Policy ger webbadministratörer exakt kontroll över webbläsarfunktioner och API:er på deras webbplatser. Att konfigurera denna rubrik stärker avsevärt webbplatsens säkerhet och integritet, vilket möjliggör funktionsbegränsningar som geolokalisering, kamera och mikrofon baserat på din webbplatss specifika behov.

Konfigurera behörigheter-policy i NGINX

För att införliva Behörighetspolicy-huvudet i din NGINX-server, ändra NGINX-konfigurationsfilen, vanligtvis placerad på /etc/nginx/nginx.conf eller i katalogen /etc/nginx/sites-available/.

Lägg till följande direktiv till serverblocket:

add_header Permissions-Policy "geolocation=(); midi=(); notifications=(); push=(); sync-xhr=(); accelerometer=(); gyroscope=(); magnetometer=(); payment=(); usb=(); vr=(); camera=(); microphone=(); speaker=(); vibrate=(); ambient-light-sensor=(); autoplay=(); encrypted-media=(); execute-clipboard=(); document-domain=(); fullscreen=(); imagecapture=(); lazyload=(); legacy-image-formats=(); oversized-images=(); unoptimized-lossy-images=(); unoptimized-lossless-images=(); unsized-media=(); vertical-scroll=(); web-share=(); xr-spatial-tracking=();";

Detta direktiv listar olika webbläsarfunktioner och API:er och ställer in dem alla på () vilket effektivt inaktiverar dem. Denna konfiguration ger ett heltäckande tillvägagångssätt för att begränsa funktioner som kan äventyra användarnas integritet eller säkerhet.

Exempel på NGINX-konfiguration med Permissions-Policy

Här är ett exempel på hur din NGINX-konfiguration kan se ut med rubriken Permissions-Policy:

upstream my_portal {
    server 127.0.0.1:8080;
}

server {
    listen 80;
    server_name example.com;
    add_header Permissions-Policy "geolocation=(); midi=(); notifications=(); push=(); sync-xhr=(); accelerometer=(); gyroscope=(); magnetometer=(); payment=(); usb=(); vr=(); camera=(); microphone=(); speaker=(); vibrate=(); ambient-light-sensor=(); autoplay=(); encrypted-media=(); execute-clipboard=(); document-domain=(); fullscreen=(); imagecapture=(); lazyload=(); legacy-image-formats=(); oversized-images=(); unoptimized-lossy-images=(); unoptimized-lossless-images=(); unsized-media=(); vertical-scroll=(); web-share=(); xr-spatial-tracking=();";

    location / {
        proxy_pass http://my_portal;
    }
}

Detta direktiv listar utförligt olika webbläsarfunktioner och API:er och ställer in dem på () för att effektivt inaktivera dem.

Exempel på NGINX-konfiguration med Permissions-Policy

Din NGINX-konfiguration, inklusive Permissions-Policy, kan se ut så här:

upstream my_portal {
    server 127.0.0.1:8080;
}

server {
    listen 80;
    server_name example.com;
    add_header Permissions-Policy "geolocation=(); midi=(); notifications=(); push=(); sync-xhr=(); accelerometer=(); gyroscope=(); magnetometer=(); payment=(); usb=(); vr=(); camera=(); microphone=(); speaker=(); vibrate=(); ambient-light-sensor=(); autoplay=(); encrypted-media=(); execute-clipboard=(); document-domain=(); fullscreen=(); imagecapture=(); lazyload=(); legacy-image-formats=(); oversized-images=(); unoptimized-lossy-images=(); unoptimized-lossless-images=(); unsized-media=(); vertical-scroll=(); web-share=(); xr-spatial-tracking=();";

    location / {
        proxy_pass http://my_portal;
    }
}

Ladda om NGINX med sudo systemctl reload nginx eller sudo nginx -s reload efter att ha gjort dessa ändringar.

Behörigheter-Policyalternativ förklaras

Med rubriken Permissions-Policy kan du anpassa användningen av olika funktioner:

  • geolokalisering: Styr åtkomst till geolokaliseringsdata.
  • midi: Hanterar åtkomst till MIDI-enheter.
  • meddelanden: Styr visning av aviseringar.
  • skjuta på: Påverkar push-meddelandefunktioner.
  • sync-xhr: Gäller synkron XMLHTTPRequest.
  • accelerometer: dikterar åtkomst till enhetens accelerometer.
  • gyroskop: Styr åtkomsten till gyroskopet.
  • magnetometer: Hanterar åtkomst till enhetens magnetometer.
  • betalning: Gäller funktioner för betalningsbegäran.
  • usb: Styr åtkomst till USB-enheter.
  • vr: Avser funktioner för virtuell verklighet.
  • kamera: Hanterar kameraåtkomst.
  • mikrofon: Dikterar mikrofonåtkomst.
  • högtalare: Styr åtkomst till högtalarenheter.
  • vibrera: Påverkar vibrations-API.
  • omgivande ljussensor: Gäller sensorn för omgivande ljus.
  • autospela: Styr autouppspelning av media.
  • krypterad media: Hanterar krypterad mediaåtkomst.
  • exekvera urklipp: Styr läs/skrivåtkomst för urklipp.
  • dokument-domän: Avser funktionen document.domain.
  • fullskärm: dikterar åtkomst till helskärm.
  • bildfångst: Styr bildtagningsfunktioner.
  • lazyload: Påverkar lat inläsning av bilder.
  • äldre-bild-format: Gäller äldre bildformat.
  • överdimensionerade bilder: Styr laddning av överdimensionerade bilder.
  • ooptimerade-förlustiga-bilder: Hanterar ooptimerade bilder med förlust.
  • ooptimerade-förlustfria-bilder: Avser ooptimerade förlustfria bilder.
  • media utan storlek: Styr media utan explicit storlek.
  • vertikal-rulla: Påverkar vertikal rullning.
  • webbdelning: Gäller webbdelningsfunktioner.
  • xr-spatial-tracking: Styr XR spatial spårning.

Avancerade konfigurationer av behörigheter-policy i NGINX

Konfigurera behörigheter-policy med specifika domäner och jokertecken

Utöver den grundläggande inställningen för att inaktivera funktioner med (), kan Permissions-Policy i NGINX skräddarsys för att tillåta vissa funktioner från specifika domäner eller använda jokertecken. Denna avancerade konfiguration ger mer nyanserad kontroll över vad din webbplats kan komma åt och varifrån.

Exempel: Tillåta funktioner från specifika domäner

server {
    listen 80;
    server_name example.com;
    add_header Permissions-Policy "geolocation=(https://trusteddomain.com), microphone=(https://alloweddomain.com)";

    location / {
        proxy_pass http://my_portal;
    }
}

Denna konfiguration tillåter åtkomst till geolokaliseringsdata endast från https://trusteddomain.com och mikrofonåtkomst endast från https://alloweddomain.com, vilket förbättrar säkerheten genom att begränsa dessa känsliga funktioner till betrodda källor.

Exempel: Använda jokertecken för breda behörigheter

server {
    listen 80;
    server_name example.com;
    add_header Permissions-Policy "camera=*; fullscreen=*";

    location / {
        proxy_pass http://my_portal;
    }
}

Jokertecknet * i denna inställning tillåter kameraåtkomst och helskärmsläge från vilken domän som helst. Detta tillvägagångssätt erbjuder bredare behörigheter, lämpliga för webbplatser som kräver omfattande tillgång till funktioner från olika källor.

Exempel: Kombinera begränsningar och behörigheter

server {
    listen 80;
    server_name example.com;
    add_header Permissions-Policy "accelerometer=(); gyroscope=(self https://example2.com); payment=*";

    location / {
        proxy_pass http://my_portal;
    }
}

I den här konfigurationen är accelerometeråtkomst inaktiverad, gyroskopåtkomst tillåts från samma domän och https://example2.com, och betalningsförfrågningar är tillåtna från alla domäner.

Verifiera säkerhetsrubriker med Curl Command i NGINX

Använda Curl för att kontrollera säkerhetsrubriker

Curl-kommandot är ett värdefullt verktyg för att verifiera konfigurationen av säkerhetshuvuden i din NGINX-server. Det låter dig inspektera din webbplats rubriker och bekräfta att säkerhetshuvudena är korrekt inställda. Detta verifieringssteg är avgörande för att säkerställa att din webbservers säkerhetsåtgärder är aktiva och fungerar som avsett.

Utför curl-kommandot för verifiering av rubriken

För att kontrollera rubrikerna på din webbplats, kör följande kommando i din terminal:

curl -I http://example.com

Ersätt example.com med ditt domännamn. Detta kommando begär rubrikerna från din server, vilket ger insikt i de aktiva säkerhetskonfigurationerna.

Förväntad utdata och tolkning

När du kör curl-kommandot bör du få utdata som liknar följande:

HTTP/1.1 200 OK
Server: nginx
Date: Mon, 20 Mar 2023 00:00:00 GMT
Content-Type: text/html
Connection: keep-alive
Strict-Transport-Security: max-age=31536000; includeSubDomains
Content-Security-Policy: default-src 'self';
X-XSS-Protection: 1; mode=block
X-Frame-Options: DENY
X-Content-Type-Options: nosniff
Referrer-Policy: no-referrer
Permissions-Policy: geolocation=(); midi=(); notifications=(); push=(); sync-xhr=(); accelerometer=(); gyroscope=(); magnetometer=(); payment=(); usb=(); vr=(); camera=(); microphone=(); speaker=(); vibrate=(); ambient-light-sensor=(); autoplay=(); encrypted-media=(); execute-clipboard=(); document-domain=(); fullscreen=(); imagecapture=(); lazyload=(); legacy-image-formats=(); oversized-images=(); unoptimized-lossy-images=(); unoptimized-lossless-images=(); unsized-media=(); vertical-scroll=(); web-share=(); xr-spatial-tracking=();"

Denna utdata bekräftar närvaron och korrekt konfiguration av olika säkerhetsrubriker på din server, såsom Strict-Transport-Security, Content-Security-Policy, X-XSS-Protection och andra. Varje rubrik som listas i utgången spelar en specifik roll för att säkra och skydda din webbserver från olika webbsårbarheter.

Slutsats

Genom att konfigurera säkerhetsrubriker i NGINX förbättrar du avsevärt säkerheten för dina webbapplikationer. Granska och uppdatera dina säkerhetsrubriker regelbundet för att anpassa sig till föränderliga säkerhetshot. Genom att implementera dessa rubriker skyddar du mot ett brett utbud av attacker och säkerställer en säkrare surfupplevelse för dina användare. Behåll vaksamhet och håll din NGINX-konfiguration uppdaterad för att skydda dina webbtillgångar robust.

Joshua James
Följ mig
Senaste inläggen av Joshua James (se alla)

Lämna en kommentar