{ lib, config, pkgs, inputs, ... }: { imports = [ ./logging/prometheus.nix ./logging/suricata.nix ../hardware/logging.nix ./headless.nix (import ./networking.nix { hostname = "r330-logging"; ip_address = "192.168.100.41"; open_ports = [ 3000 9001 9003 ]; inherit lib; }) ]; networking.firewall.enable = false; users.users.logging = import ./user.nix; services.grafana = { enable = true; settings.server = { http_addr = "127.0.0.1"; http_port = 3000; domain = "grafana.randomctf.local"; }; }; services.nginx = { enable = true; virtualHosts = { # Grafana "grafana.randomctf.local" = { extraConfig = '' access_log /var/log/nginx/access.grafana.log; ''; locations."/".extraConfig = '' proxy_set_header Host grafana.randomctf.local; proxy_pass http://localhost:3000/; ''; }; # Prometheus "prometheus.randomctf.local" = { extraConfig = '' access_log /var/log/nginx/access.prometheus.log; ''; locations."/".extraConfig = '' proxy_pass http://localhost:9090/; ''; }; }; }; }