Bagaimana untuk meningkatkan keselamatan dan prestasi Nginx
Terutamanya menunjukkan cara mengkonfigurasi pilihan-x-bingkai, perlindungan-x-xss, pilihan-jenis-kandungan-x, keselamatan-pengangkutan-ketat, https dan konfigurasi keselamatan lain dalam nginx.
nginx.conf dikonfigurasikan seperti berikut
# 不要将nginx版本号在错误页面或服务器头部中显示 server_tokens off; #不允许页面从框架frame 或 iframe中显示,这样能避免clickjacking # http://en.wikipedia.org/wiki/clickjacking # 如果你允许[i]frames, 你能使用sameorigin 或在allow-from中设置你的允许的url # https://developer.mozilla.org/en-us/docs/http/x-frame-options add_header x-frame-options sameorigin; #当你的网站是用户提供的内容比如博客论坛等,使用 x-content-type-options: nosniff 头部, # 这是为了失效某些浏览器的内容类型探嗅 # https://www.owasp.org/index.php/list_of_useful_http_headers # 当前支持ie > 8以上版本 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-content-type-options nosniff; # 防止跨站脚本 cross-site scripting (xss) ,目前已经被大多数浏览器支持 #默认是激活的,如果被用户失效,可以使用这个配置激活。 # https://www.owasp.org/index.php/list_of_useful_http_headers add_header x-xss-protection "1; mode=block"; #激活内容安全策略content security policy (csp) ,大部分浏览器支持 # 告诉浏览器只能从本域名和你显式指定的网址下载脚本。 # http://www.html5rocks.com/en/tutorials/security/content-security-policy/#inline-code-considered-harmful add_header content-security-policy "default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://ssl.google-analytics.com https://assets.zendesk.com https://connect.facebook.net; img-src 'self' https://ssl.google-analytics.com https://s-static.ak.facebook.com https://assets.zendesk.com; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com https://assets.zendesk.com; font-src 'self' 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 'none'"; server { listen 443 ssl default deferred; server_name .forgott.com; ssl_certificate /etc/nginx/ssl/star_forgott_com.crt; ssl_certificate_key /etc/nginx/ssl/star_forgott_com.key; #激活会话重续提高https性能 # http://vincent.bernat.im/en/blog/2011-ssl-session-reuse-rfc5077.html ssl_session_cache shared:ssl:50m; ssl_session_timeout 5m; # diffie-hellman parameter for dhe ciphersuites, recommended 2048 bits ssl_dhparam /etc/nginx/ssl/dhparam.pem; #激活服务器端保护免于beast 攻击 # http://blog.ivanristic.com/2013/09/is-beast-still-a-threat.html ssl_prefer_server_ciphers on; # 失效 sslv3(自nginx 0.8.19默认激活) http://en.wikipedia.org/wiki/secure_sockets_layer#ssl_3.0 ssl_protocols tlsv1 tlsv1.1 tlsv1.2; # 为保密性和相容性选择密码 # 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-rsa-aes256-sha384:ecdhe-rsa-aes128-sha256: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-des-cbc3-sha:edh-rsa-des-cbc3-sha:aes256-gcm-sha384:aes128-gcm-sha256:aes256-sha256:aes128-sha256:aes256-sha:aes128-sha:des-cbc3-sha:high:!anull:!enull:!export:!des:!md5:!psk:!rc4"; # 激活ocsp stapling (一种机制:一个网站可以保护隐私可扩展的方式传达的证书撤销信息给访问者)mechanism by which a site can convey certificate revocation information to visitors in a privacy-preserving, scalable manner) # http://blog.mozilla.org/security/2013/07/29/ocsp-stapling-in-firefox/ resolver 8.8.8.8; ssl_stapling on; ssl_trusted_certificate /etc/nginx/ssl/star_forgott_com.crt; # 配置激活hsts(http strict transport security) https://developer.mozilla.org/en-us/docs/security/http_strict_transport_security #避免ssl stripping https://en.wikipedia.org/wiki/ssl_stripping#ssl_stripping add_header strict-transport-security "max-age=31536000; includesubdomains;"; # ... the rest of your configuration } # redirect all http traffic to https server { listen 80; server_name .forgott.com; return 301 https://$host$request_uri; }
Atas ialah kandungan terperinci Bagaimana untuk meningkatkan keselamatan dan prestasi Nginx. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Bagaimana untuk mengesahkan sama ada nginx dimulakan: 1. Gunakan baris arahan: status sistem sistem nginx (linux/unix), netstat -ano | Findstr 80 (Windows); 2. Periksa sama ada port 80 dibuka; 3. Semak mesej permulaan Nginx dalam log sistem; 4. Gunakan alat pihak ketiga, seperti Nagios, Zabbix, dan Icinga.

Langkah -langkah untuk memulakan Nginx di Linux: Periksa sama ada Nginx dipasang. Gunakan SistemCTL Mula Nginx untuk memulakan perkhidmatan Nginx. Gunakan SistemCTL Dayakan NGINX untuk membolehkan permulaan automatik Nginx pada permulaan sistem. Gunakan Status SistemCTL Nginx untuk mengesahkan bahawa permulaan berjaya. Lawati http: // localhost dalam pelayar web untuk melihat halaman selamat datang lalai.

Bagaimana cara mengkonfigurasi nginx di Windows? Pasang Nginx dan buat konfigurasi hos maya. Ubah suai fail konfigurasi utama dan sertakan konfigurasi hos maya. Mulakan atau Muat semula Nginx. Uji konfigurasi dan lihat laman web. Selektif membolehkan SSL dan mengkonfigurasi sijil SSL. Selektif tetapkan firewall untuk membolehkan trafik port 80 dan 443.

Di Linux, gunakan arahan berikut untuk memeriksa sama ada nginx dimulakan: Hakim status SistemCTL Nginx berdasarkan output arahan: Jika "Aktif: Aktif (Running)" dipaparkan, Nginx dimulakan. Jika "aktif: tidak aktif (mati)" dipaparkan, nginx dihentikan.

Kaedah untuk melihat status berjalan nginx adalah: Gunakan arahan PS untuk melihat status proses; Lihat fail konfigurasi nginx /etc/nginx/nginx.conf; Gunakan modul status nginx untuk membolehkan titik akhir status; Gunakan alat pemantauan seperti Prometheus, Zabbix, atau Nagios.

Pelayan tidak mempunyai kebenaran untuk mengakses sumber yang diminta, mengakibatkan ralat NGINX 403. Penyelesaian termasuk: Periksa keizinan fail. Semak konfigurasi .htaccess. Semak konfigurasi Nginx. Konfigurasikan keizinan Selinux. Semak peraturan firewall. Menyelesaikan masalah lain seperti masalah penyemak imbas, kegagalan pelayan, atau kesilapan lain yang mungkin.

Terdapat dua cara untuk menyelesaikan masalah silang domain Nginx: Ubah suai tajuk tindak balas silang domain: Tambah arahan untuk membenarkan permintaan lintas domain, nyatakan kaedah dan tajuk yang dibenarkan, dan tetapkan masa cache. Gunakan modul CORS: Dayakan modul dan konfigurasikan peraturan CORS untuk membolehkan permintaan, kaedah, tajuk, dan masa cache domain.

Memulakan pelayan Nginx memerlukan langkah-langkah yang berbeza mengikut sistem operasi yang berbeza: Sistem Linux/Unix: Pasang pakej Nginx (contohnya, menggunakan apt-get atau yum). Gunakan SystemCTL untuk memulakan perkhidmatan Nginx (contohnya, SUDO SystemCTL Mula Nginx). Sistem Windows: Muat turun dan pasang fail binari Windows. Mula Nginx menggunakan nginx.exe executable (contohnya, nginx.exe -c conf \ nginx.conf). Tidak kira sistem operasi yang anda gunakan, anda boleh mengakses IP pelayan
