Detaillierte Erläuterung der besten Konfiguration für Nginx zur Verbesserung von Sicherheit und Leistung

Detaillierte Erläuterung der besten Konfiguration für Nginx zur Verbesserung von Sicherheit und Leistung

Es zeigt hauptsächlich, wie X-Frame-Options, X-XSS-Protection, X-Content-Type-Options, Strict-Transport-Security, https und andere Sicherheitskonfigurationen in Nginx konfiguriert werden.

Nginx.conf ist wie folgt konfiguriert

# Zeigen Sie die Nginx-Versionsnummer nicht auf Fehlerseiten oder im Server-Header an server_tokens off;

#Erlauben Sie nicht, dass Seiten aus Frames oder Iframes angezeigt werden, um Clickjacking zu vermeiden
# http://en.wikipedia.org/wiki/Clickjacking
# Wenn Sie [i]Frames zulassen, können Sie SAMEORIGIN verwenden oder Ihre zulässigen URLs in ALLOW-FROM festlegen
# https://developer.mozilla.org/en-US/docs/HTTP/X-Frame-Options
add_header X-Frame-Optionen SAMEORIGIN;

#Wenn Ihre Website benutzergenerierte Inhalte wie z. B. ein Blog-Forum enthält, verwenden Sie den Header X-Content-Type-Options: nosniff,
# Hiermit wird das Content Type Sniffing in einigen Browsern deaktiviert. # https://www.owasp.org/index.php/List_of_useful_HTTP_headers
# Unterstützt derzeit IE > 8 und höher http://blogs.msdn.com/b/ie/archive/2008/09/02/ie8-security-part-vi-beta-2-update.aspx
# http://msdn.microsoft.com/en-us/library/ie/gg622941(v=vs.85).aspx
#Firefox https://bugzilla.mozilla.org/show_bug.cgi?id=471020
add_header X-Inhaltstyp-Optionen nosniff;

# Verhindert Cross-Site-Scripting (XSS), das derzeit von den meisten Browsern unterstützt wird. # Es ist standardmäßig aktiviert. Wenn es vom Benutzer deaktiviert wurde, können Sie es mit dieser Konfiguration aktivieren.
# https://www.owasp.org/index.php/Liste_nützlicher_HTTP-Header
add_header X-XSS-Schutz "1; Modus=blockieren";

#Aktivieren Sie die Content Security Policy (CSP), die von den meisten Browsern unterstützt wird. #Teilen Sie dem Browser mit, dass Skripte nur von dieser Domain und den von Ihnen explizit angegebenen URLs heruntergeladen werden können.
# http://www.html5rocks.com/en/tutorials/security/content-security-policy/#inline-code-considered-harmful
add_header Inhaltssicherheitsrichtlinie „default-src ‚selbst‘; script-src ‚selbst‘ ‚unsafe-inline‘ ‚unsafe-eval‘ https://ssl.google-analytics.com https://assets.zendesk.com https://connect.facebook.net; img-src ‚selbst‘ https://ssl.google-analytics.com https://s-static.ak.facebook.com https://assets.zendesk.com; style-src ‚selbst‘ ‚unsafe-inline‘ https://fonts.googleapis.com https://assets.zendesk.com; font-src ‚selbst‘ https://themes.googleusercontent.com; frame-src https://assets.zendesk.com https://www.facebook.com https://s-static.ak.facebook.com https://tautt.zendesk.com; object-src ‚keine‘“;

Server {
Hören Sie 443 SSL standardmäßig verschoben;
Servername .forgott.com;

SSL-Zertifikat /etc/nginx/ssl/star_forgott_com.crt;
SSL-Zertifikatsschlüssel /etc/nginx/ssl/star_forgott_com.key;

#Aktivieren Sie die Wiederverwendung von Sitzungen, um die https-Leistung zu verbessern# http://vincent.bernat.im/en/blog/2011-ssl-session-reuse-rfc5077.html
ssl_session_cache gemeinsam genutzt: SSL: 50 m;
SSL-Sitzungszeitüberschreitung 5 Min.

# Diffie-Hellman-Parameter für DHE-Chiffrensammlungen, empfohlen 2048 Bit
ssl_dhparam /etc/nginx/ssl/dhparam.pem;

#Serverseitigen Schutz vor BEAST-Angriffen aktivieren# http://blog.ivanristic.com/2013/09/is-beast-still-a-threat.html
ssl_prefer_server_ciphers ein;
# SSLv3 deaktivieren (standardmäßig aktiviert seit nginx 0.8.19) http://en.wikipedia.org/wiki/Secure_Sockets_Layer#SSL_3.0
SSL-Protokolle TLSv1 TLSv1.1 TLSv1.2;
# Auswählen von Chiffren für Vertraulichkeit und Kompatibilität # http://blog.ivanristic.com/2013/08/configuring-apache-nginx-and-openssl-for-forward-secrecy.html
SSL_CIPHERS "ECDHE-RSA-AES256-GCM-SHA384: ECDHE-RSA-AES128-GCM-SHA256: DHE-RSA-AES256-GCM-SHA384: DHE-RSA-AES128-GCM-SHA256: ECDHE-RS256-SHA256-SHA256-SHA2566: ECDHE-RS12:-RSA-256-SHA-SHA256-SHA-SHA2566: ECDHE-RSA-RS-12566: ECDHE-RS1256: ECDHE-RSA-RSA-RSA-RSA-RSA-RSA-RSA-RSA-RSA-AAS256: : ECDHE-RSA-AES256-SHA: ECDHE-RSA-AES128-SHA: DHE-RSA-AES256-SHA256: DHE-RSA-AES128-SHA256: DHE-RSA-AES256-SHA: DHE-RSA-AES128-SHA: ECDHE-RSA-RSA:---SA-RSA: EDH-RSA:---SA-RSA-RSA-RSA-RSA-RSA: DES-RSA: EDH-RSA: EDH-RSA: --SA-DES-RSA: EDH-RSA: EDH-RSA:-SHA-RSA-RSA-RSA: EDHA M-Sha384: AES128-GCM-SHA256: AES256-SHA256: AES128-SHA256: AES256-SHA: AES128-SHA: DES-CBC3-SHA: Hoch:! Anull:! Enull:! Export:! Des:! Md5:! Psk:! Rc4 ";

# OCSP-Stapling aktivieren (Mechanismus, mit dem eine Site Informationen zum Widerruf von Zertifikaten auf datenschutzfreundliche und skalierbare Weise an Besucher übermitteln kann)
# http://blog.mozilla.org/security/2013/07/29/ocsp-stapling-in-firefox/
Resolver 8.8.8.8;
ssl_stapling ein;
ssl_vertrauenswürdiges_Zertifikat /etc/nginx/ssl/star_forgott_com.crt;

# HSTS (HTTP Strict Transport Security) konfigurieren und aktivieren https://developer.mozilla.org/en-US/docs/Security/HTTP_Strict_Transport_Security
#SSL-Stripping vermeiden https://en.wikipedia.org/wiki/SSL_stripping#SSL_stripping
add_header Strict-Transport-Security "max-age=31536000; includeSubdomains;";

# ... der Rest Ihrer Konfiguration
}

# leiten Sie den gesamten HTTP-Verkehr auf https um
Server {
hören Sie 80;
Servername .forgott.com;
gibt 301 https://$host$request_uri zurück;
}

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • So steigern Sie Ihre Web-Performance um das Dreifache, indem Sie einen Parameter in Nginx aktivieren
  • Verwenden des X-Sendfile-Headers in Nginx, um die Download-Leistung von PHP-Dateien zu verbessern (für den Download großer Dateien)
  • Django verwendet Sellerie und NGINX, um statische Seiten zu generieren und so eine Leistungsoptimierung zu erreichen
  • Tutorial zum Aufbau eines Hochleistungs-Load-Balancing-Clusters mit Nginx+Tomcat
  • So erstellen Sie mit Nginx+Tomcat einen Hochleistungs-Load-Balancing-Cluster
  • Beschleunigen Sie die Nginx-Leistung: Aktivieren Sie GZIP und Cache
  • Lösung zur Leistungsoptimierung der Nginx-Serverkonfiguration
  • Einige Vorschläge zur Verbesserung der Nginx-Leistung

<<:  Detaillierte Erläuterung der Methode zum Vergleichen von Daten in MySQL

>>:  Erklären Sie TypeScript-zugeordnete Typen und eine bessere wörtliche Typinferenz.

Artikel empfehlen

Einführung in die MySQL-Operatoren <> und <=>

<> Operator Funktion: Zeigt an, dass es ung...

Asynchrone JS ES6-Lösung

Inhaltsverzeichnis Erste Verwendung der Callback-...

Implementierung der MySQL Master-Slave-Statusprüfung

1. Überprüfen Sie den Synchronisierungsstatus der...

5 coole und praktische Einführung in HTML-Tags und -Attribute

Tatsächlich handelt es sich auch hier um einen Cl...

So fahren Sie nginx herunter/starten es neu

Schließung Dienst Nginx stoppen systemctl stoppt ...

CSS-Stil zum Zentrieren des HTML-Tags im Browser

CSS-Stil: Code kopieren Der Code lautet wie folgt:...

Eine kurze Diskussion über MySql-Ansichten, Trigger und gespeicherte Prozeduren

Sicht Was ist eine Ansicht? Welche Rolle spielt e...

Umfassendes Verständnis von Zeilenhöhe und vertikaler Ausrichtung

Vorherige Wörter Zeilenhöhe, Schriftgröße und vert...

Detaillierte Erläuterung des Konzepts der Docker-Containerebenen

Inhaltsverzeichnis 01 Behälterkonsistenz 02 Konze...

Achten Sie bei der Webseitenerstellung auf die Verwendung von HTML-Tags

Dieser Artikel stellt einige Aspekte von HTML-Tag...

Detaillierte Erläuterung des grundlegenden Falls des React.js-Frameworks Redux

react.js Rahmen Redux https://github.com/reactjs/...