aboutsummaryrefslogtreecommitdiffstats
path: root/hosts/darkstar/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'hosts/darkstar/default.nix')
-rw-r--r--hosts/darkstar/default.nix30
1 files changed, 25 insertions, 5 deletions
diff --git a/hosts/darkstar/default.nix b/hosts/darkstar/default.nix
index 8cdf25e..a0e92c4 100644
--- a/hosts/darkstar/default.nix
+++ b/hosts/darkstar/default.nix
@@ -24,10 +24,13 @@
zfs.package = pkgs.zfs_unstable;
};
- environment.systemPackages = [
- pkgs.mitmproxy
- pkgs.speedtest-go
- ];
+ environment = {
+ etc."mitmproxy-c64u.py".source = ./mitmproxy-c64u.py;
+ systemPackages = [
+ pkgs.mitmproxy
+ pkgs.speedtest-go
+ ];
+ };
imports = [
./disks.nix
@@ -120,7 +123,23 @@
system.stateVersion = "23.11";
- systemd.services."nftables-extra" = let rules_script = ''
+ systemd.services = {
+ "mitmproxy" = let rules_script = ''
+ ${pkgs.mitmproxy}/bin/mitmproxy -p 80 -s /etc/mitmproxy-c64u.py --mode reverse:http://hackerswithstyle.se:80 --set block_global=false
+ ''; in {
+ description = "proxy for C64 site hackerswithstyle.se";
+ script = rules_script;
+ serviceConfig = {
+ Restart = "on-failure";
+ RestartSec = 5;
+ StandardError = "append:/var/log/mitmproxy.log";
+ StandardOutput = "append:/var/log/mitmproxy.log";
+ Type = "simple";
+ };
+ after = [ "network.target" ];
+ wantedBy = [ "multi-user.target" ];
+ };
+ "nftables-extra" = let rules_script = ''
${pkgs.nftables}/bin/nft -a list chain inet nixos-fw input | ${pkgs.gnugrep}/bin/grep @anveo | ${pkgs.gnugrep}/bin/grep -Eo 'handle [[:digit:]]+$' | ${pkgs.gnused}/bin/sed -e 's/^handle //' | while read handle; do ${pkgs.nftables}/bin/nft delete rule inet nixos-fw input handle ''${handle}; done
if ${pkgs.nftables}/bin/nft list set inet nixos-fw anveo 2>/dev/null; then ${pkgs.nftables}/bin/nft delete set inet nixos-fw anveo; fi
if ${pkgs.nftables}/bin/nft list ct helpers table inet nixos-fw | ${pkgs.gnugrep}/bin/grep -qE '^[[:space:]]*ct helper sip-5060 {$'; then ${pkgs.nftables}/bin/nft delete ct helper inet nixos-fw sip-5060; fi
@@ -148,6 +167,7 @@
wantedBy = [ "multi-user.target" ];
after = [ "nftables.service" ];
partOf = [ "nftables.service" ];
+ };
};
systemd.paths."nftables-extra" = {