]> git.openstreetmap.org Git - chef.git/blobdiff - cookbooks/nginx/templates/default/nginx.conf.erb
Avoid installing a private network default route on gateways
[chef.git] / cookbooks / nginx / templates / default / nginx.conf.erb
index 68fae2f0a0a5317fd35d274be1ec194950b3b4a2..f5d4fc26904e22bb9544b8c34a4104b7a974cf69 100644 (file)
@@ -25,37 +25,49 @@ http {
                       '$status $body_bytes_sent "$http_referer" '
                       '"$http_user_agent" "$http_x_forwarded_for"';
 
                       '$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 -%>
 
 <% else -%>
     access_log  off;
 <% end -%>
 
-    keepalive_timeout  30;
+    keepalive_timeout 20 20;
 
     server_tokens off;
 
 
     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_ciphers <%= node[:ssl][:openssl_ciphers] -%>;
     ssl_prefer_server_ciphers on;
     ssl_session_cache shared:SSL:50m;
     ssl_session_timeout 30m;
+
     ssl_stapling on;
     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;
     ssl_dhparam /etc/ssl/certs/dhparam.pem;
-    resolver <%= @resolvers.join(" ") %>;
+    resolver 127.0.0.53 ipv6=off;
     resolver_timeout 5s;
 
     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'] -%>
     <% 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'] -%>
     <% 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 -%>
 
     <% end -%>
 
+    # Internal site for munin 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;
 }
     include /etc/nginx/conf.d/*.conf;
 }