aboutsummaryrefslogtreecommitdiff
path: root/modules/services/nginx.nix
diff options
context:
space:
mode:
authorschererleander <leander@schererleander.de>2026-02-05 12:03:07 +0100
committerschererleander <leander@schererleander.de>2026-02-05 15:19:41 +0100
commit3b13d9a2a367db84d48940460532c17a374bb488 (patch)
tree599110a39c4baecf3991fe9a58d0103a43c38896 /modules/services/nginx.nix
parent46aa4842b98d9215baca00060c233f386a0c2188 (diff)
feat(modules): use dendritic pattern
Diffstat (limited to 'modules/services/nginx.nix')
-rw-r--r--modules/services/nginx.nix27
1 files changed, 27 insertions, 0 deletions
diff --git a/modules/services/nginx.nix b/modules/services/nginx.nix
new file mode 100644
index 0000000..6ad4c0f
--- /dev/null
+++ b/modules/services/nginx.nix
@@ -0,0 +1,27 @@
+{
+ flake.modules.nixos.nginx =
+ { ... }:
+ {
+ services.nginx = {
+ enable = true;
+ recommendedGzipSettings = true;
+ recommendedOptimisation = true;
+ recommendedProxySettings = true;
+ recommendedTlsSettings = true;
+ appendHttpConfig = ''
+ map $scheme $hsts_header {
+ https "max-age=31536000; includeSubdomains; preload";
+ }
+ add_header Strict-Transport-Security $hsts_header;
+ #add_header Content-Security-Policy "default-src 'self'; script-src 'self'; style-src 'self'; img-src 'self' data:; font-src 'self'; connect-src 'self'; object-src 'none'; frame-ancestors 'none'; base-uri 'self';" always;
+ add_header 'Referrer-Policy' 'same-origin';
+ add_header X-Frame-Options DENY;
+ add_header X-Content-Type-Options nosniff;
+ '';
+ };
+ networking.firewall.allowedTCPPorts = [
+ 80
+ 443
+ ];
+ };
+}