X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/15f6c76154197f073ec926f6e4ad3ec5b8841899..226773e8e4b1b7e0141c45e0040fa2cd4141282a:/cookbooks/nginx/templates/default/nginx.conf.erb diff --git a/cookbooks/nginx/templates/default/nginx.conf.erb b/cookbooks/nginx/templates/default/nginx.conf.erb index 68fae2f0a..0d2387b2e 100644 --- a/cookbooks/nginx/templates/default/nginx.conf.erb +++ b/cookbooks/nginx/templates/default/nginx.conf.erb @@ -25,37 +25,49 @@ http { '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; - access_log <%= node[:nginx][:access_log] %> main buffer=32k flush=1m; + access_log <%= node[:nginx][:access_log] %> main buffer=256k flush=1m; <% else -%> access_log off; <% end -%> - keepalive_timeout 30; + keepalive_timeout 20 20; server_tokens off; - ssl_protocols TLSv1 TLSv1.1 TLSv1.2; + ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; ssl_ciphers <%= node[:ssl][:openssl_ciphers] -%>; ssl_prefer_server_ciphers on; ssl_session_cache shared:SSL:50m; ssl_session_timeout 30m; + ssl_stapling on; + + # Validate the stapling response is signed by a trusted certificate + ssl_stapling_verify on; + ssl_trusted_certificate /etc/ssl/certs/ca-certificates.crt; + ssl_dhparam /etc/ssl/certs/dhparam.pem; - resolver <%= @resolvers.join(" ") %>; + resolver 127.0.0.53 ipv6=off; resolver_timeout 5s; - ssl_session_tickets on; - ssl_session_timeout 1h; - ssl_session_ticket_key /var/run/nginx-ephemeral/nginx_session_ticket_curr; - ssl_session_ticket_key /var/run/nginx-ephemeral/nginx_session_ticket_prev; - ssl_session_ticket_key /var/run/nginx-ephemeral/nginx_session_ticket_next; - <% if node['nginx']['cache']['fastcgi']['enable'] -%> - fastcgi_cache_path /var/cache/nginx/fastcgi-cache levels=1:2 keys_zone=<%= node['nginx']['cache']['fastcgi']['keys_zone'] %> inactive=<%= node['nginx']['cache']['fastcgi']['inactive'] %> max_size=<%= node['nginx']['cache']['fastcgi']['max_size'] %>; + fastcgi_cache_path <%= node['nginx']['cache']['fastcgi']['directory'] %> levels=2:2:2 use_temp_path=off keys_zone=<%= node['nginx']['cache']['fastcgi']['keys_zone'] %> inactive=<%= node['nginx']['cache']['fastcgi']['inactive'] %> max_size=<%= node['nginx']['cache']['fastcgi']['max_size'] %>; <% end -%> <% if node['nginx']['cache']['proxy']['enable'] -%> - proxy_cache_path /var/cache/nginx/proxy-cache levels=1:2 keys_zone=<%= node['nginx']['cache']['proxy']['keys_zone'] %> inactive=<%= node['nginx']['cache']['proxy']['inactive'] %> max_size=<%= node['nginx']['cache']['proxy']['max_size'] %>; + proxy_cache_path <%= node['nginx']['cache']['proxy']['directory'] %> levels=2:2:2 use_temp_path=off keys_zone=<%= node['nginx']['cache']['proxy']['keys_zone'] %> inactive=<%= node['nginx']['cache']['proxy']['inactive'] %> max_size=<%= node['nginx']['cache']['proxy']['max_size'] %>; <% end -%> + # Internal site for stats monitoring + server { + listen 127.0.0.1:8050; + server_name localhost; + location /nginx_status { + stub_status on; + access_log off; + allow 127.0.0.1; + deny all; + } + } + include /etc/nginx/conf.d/*.conf; }