From d9747c64b038943253eaafdc59a49d5face46dab Mon Sep 17 00:00:00 2001 From: Fuwn Date: Fri, 20 Sep 2024 05:36:20 -0700 Subject: modules: server and core modules --- modules/core/networking/i2p.nix | 86 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 modules/core/networking/i2p.nix (limited to 'modules/core/networking/i2p.nix') diff --git a/modules/core/networking/i2p.nix b/modules/core/networking/i2p.nix new file mode 100644 index 0000000..8bca73e --- /dev/null +++ b/modules/core/networking/i2p.nix @@ -0,0 +1,86 @@ +{ + # https://voidcruiser.nl/rambles/i2p-on-nixos/ + containers.i2pd = { + autoStart = true; + + config = { + system.stateVersion = "24.05"; + + networking.firewall.allowedTCPPorts = [ + 7656 + 7070 + 4447 + 4444 + ]; + + services.i2pd = + let + address = "0.0.0.0"; + in + { + inherit address; + + enable = true; + upnp.enable = true; + bandwidth = 512; + websocket.address = address; + yggdrasil.address = address; + reseed.verify = true; + + proto = { + bob.address = address; + + i2pControl = { + inherit address; + + enable = true; + }; + + socksProxy = { + inherit address; + + enable = true; + }; + + http = { + inherit address; + + enable = true; + strictHeaders = false; + }; + + i2cp = { + inherit address; + + enable = true; + }; + + sam = { + inherit address; + + enable = true; + }; + + httpProxy = { + inherit address; + + enable = true; + # outproxy = "http://false.i2p"; + # outproxy = "http://purokishi.i2p:4444"; + # outproxy = "http://outproxy.acetone.i2p:3128"; + outproxy = "http://exit.stormycloud.i2p:4444"; + # outproxy = "http://outproxy.bandura.i2p:4444"; + }; + }; + + addressbook.subscriptions = [ + "http://inr.i2p/export/alive-hosts.txt" + "http://i2p-projekt.i2p/hosts.txt" + "http://stats.i2p/cgi-bin/newhosts.txt" + "http://reg.i2p/export/hosts.txt" + "http://notbob.i2p/hosts.txt" + ]; + }; + }; + }; +} -- cgit v1.2.3