summaryrefslogtreecommitdiff
path: root/roles/monitoring/prometheus/exporter/nftables/templates/service.j2
diff options
context:
space:
mode:
Diffstat (limited to 'roles/monitoring/prometheus/exporter/nftables/templates/service.j2')
-rw-r--r--roles/monitoring/prometheus/exporter/nftables/templates/service.j231
1 files changed, 31 insertions, 0 deletions
diff --git a/roles/monitoring/prometheus/exporter/nftables/templates/service.j2 b/roles/monitoring/prometheus/exporter/nftables/templates/service.j2
new file mode 100644
index 00000000..b22d9582
--- /dev/null
+++ b/roles/monitoring/prometheus/exporter/nftables/templates/service.j2
@@ -0,0 +1,31 @@
+[Unit]
+Description=Prometheus nftables exporter
+After=systemd-modules-load.service
+
+[Service]
+Restart=always
+User=prometheus-exporter
+ExecStart=/usr/bin/prometheus-nftables-exporter --config=/etc/prometheus/exporter/nftables/config.yml
+ExecReload=/bin/kill -HUP $MAINPID
+
+# systemd hardening-options
+AmbientCapabilities=CAP_NET_ADMIN
+CapabilityBoundingSet=CAP_NET_ADMIN
+DeviceAllow=/dev/null rw
+DevicePolicy=strict
+LockPersonality=true
+MemoryDenyWriteExecute=true
+NoNewPrivileges=true
+PrivateTmp=true
+ProtectControlGroups=true
+ProtectHome=true
+ProtectKernelModules=true
+ProtectKernelTunables=true
+ProtectSystem=strict
+RemoveIPC=true
+RestrictNamespaces=true
+RestrictRealtime=true
+SystemCallArchitectures=native
+
+[Install]
+WantedBy=multi-user.target