diff options
Diffstat (limited to 'krebs')
31 files changed, 255 insertions, 775 deletions
diff --git a/krebs/3modules/external/default.nix b/krebs/3modules/external/default.nix index 1f80906f8..c9715cb85 100644 --- a/krebs/3modules/external/default.nix +++ b/krebs/3modules/external/default.nix @@ -299,6 +299,33 @@ in {          };        };      }; +    toastbrot = { +      owner = config.krebs.users.jan; +      nets = { +        retiolum = { +          ip4.addr = "10.243.117.12"; +          aliases = [ +            "toastbrot.r" +          ]; +          tinc.pubkey = '' +            -----BEGIN PUBLIC KEY----- +            MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA12VLPJMhGSh5fQgrB6bP +            2H1eew0/7t1xr3oJ3uaTZd7UIvPQ/aA5pB9xL5s+BIBvRa5P3QFWUAVhqchsPiRc +            yC4awLvo6zrUZB3pJBFiUuThx1xzmazTbRNyJ0E3Dwi2VSp3dAi5xEwHSVDSElGj +            DyRrdwyLe9lKghGHgNhB01QAt1/AO3A/TBs2RS/E0kuPhVQzpo5Ae5I530Cr0pf3 +            r/de1TdArIcOfnTvW7WNrdBhwLq14cfdXkZwJ2bBE9Q22FAJp5k21PW5dQ41oDuT +            PYHZIH555sxifMThrUpuNHIrDtIQk6D+Km90WNf/lBGwZqQr/B5G6zSNX7d/0JbY +            Hi8Ltq++Sf0XgWNir9+evGNLCBqAXdvQFrj2l7BuNywE0L2nZThnxjTxP6QLFnqO +            IXY97x3p7AYcfmVFutfYqYM1HdyyehF711hhm30fdcXHsJ+GpQgGrj67+++N7g7g +            fjWBGNI9EL9CyTZ/N9U3TGeoxooc1BSaAiHmaPoYaAeI0Y/W6bNrixpL3aI5X8MH +            Flen2y2XEk2n+pXozPDbLAT+MZ3sWwODDYRc8zGbV2RlMvL94LHh95/JC0itdXa3 +            uNRDtSnfbNe4eHw9/HMDkclhywuE+hbyq+JNNodqLwG/o1/r3GI+ggOyCdZHjF4B +            4R8QXUJiqUdcbR3WQDR5i10CAwEAAQ== +            -----END PUBLIC KEY----- +          ''; +        }; +      }; +    };      tpsw = {        cores = 2;        owner = config.krebs.users.ciko; # main laptop @@ -411,6 +438,9 @@ in {        mail = "dickbutt@excogitation.de";        pubkey = ssh-for "exco";      }; +    jan = { +      mail = "jan.heidbrink@posteo.de"; +    };      kmein = {        mail = "kieran.meinhardt@gmail.com";        pubkey = ssh-for "kmein"; diff --git a/krebs/3modules/makefu/default.nix b/krebs/3modules/makefu/default.nix index e60bbee70..b38c9104f 100644 --- a/krebs/3modules/makefu/default.nix +++ b/krebs/3modules/makefu/default.nix @@ -5,442 +5,104 @@  with import <stockholm/lib>;  { config, ... }: let -  hostDefaults = hostName: host: flip recursiveUpdate host ({ -    owner = config.krebs.users.makefu; -  } // optionalAttrs (host.nets?retiolum) { -    nets.retiolum.ip6.addr = -      (krebs.genipv6 "retiolum" "makefu" { inherit hostName; }).address; -  }); +  hostDefaults = hostName: host: foldl' recursiveUpdate {} [ +    { +      owner = config.krebs.users.makefu; +    } +    # Retiolum defaults +    (let +      pubkey-path = ./retiolum + "/${hostName}.pub"; +    in optionalAttrs (pathExists pubkey-path) { +      nets.retiolum = { +        tinc.pubkey = readFile pubkey-path; +        aliases = [ +          "${hostName}.r" +        ]; +        ip6.addr = +          (krebs.genipv6 "retiolum" "makefu" { inherit hostName; }).address; +      }; +    }) +    # Wiregrill defaults +    (let +      pubkey-path = ./wiregrill + "/${hostName}.pub"; +    in optionalAttrs (pathExists pubkey-path) { +      nets.wiregrill = { +        aliases = [ +          "${hostName}.w" +        ]; +        ip6.addr = +          (krebs.genipv6 "wiregrill" "makefu" { inherit hostName; }).address; +        wireguard.pubkey = readFile pubkey-path; +      }; +    }) +    # SSHD defaults +    (let +      pubkey-path = ./sshd + "/${hostName}.pub"; +    in optionalAttrs (pathExists pubkey-path) { +      ssh.pubkey = readFile pubkey-path; +      # We assume that if the sshd pubkey exits then there must be a privkey in +      # the screts store as well +      ssh.privkey.path = <secrets/ssh_host_ed25519_key>; +    }) +    host +  ];    pub-for = name: builtins.readFile (./ssh + "/${name}.pub"); - +  w6 = ip: (krebs.genipv6 "wiregrill" "makefu" ip).address;  in {    hosts = mapAttrs hostDefaults {      cake = rec {        cores = 4;        ci = false;        nets = { -        retiolum = { -          ip4.addr = "10.243.136.236"; -          aliases = [ -            "cake.r" -          ]; -          tinc.pubkey = '' -            -----BEGIN RSA PUBLIC KEY----- -            MIIBCgKCAQEA0khdelSrOV/ZI9vvbV5aT1wVn2IfUfIdDCQIOnF2mZsrnIcuaedu -            jRfZnJST1vOfL7JksF1+8pYwSn34CjJCGhyFf25lc6mARXmZe/araNrVpTntCy2+ -            MqG8KZe4mIda/WPTXRYGtFVQZeClM5SCZ7EECtw8sEkwt2QtOv43p/hiMXAkOQsq -            6xc9/b4Bry7d+IjJs3waKfFQllF+C+GuK8yF0YnCEb6GZw7xkxHIO1QV4KSQ4CH7 -            36kEAdCSQ5rgaygRanUlUl+duQn1MLQ+lRlerAEcFfKrr3MKNz2jmGth8iUURdyP -            MHjSWe+RkLQ6zzBaVgoKKuI9MbIbhenJWwIDAQAB -            -----END RSA PUBLIC KEY----- -            ''; -        }; +        retiolum.ip4.addr = "10.243.136.236";        }; -      ssh.privkey.path = <secrets/ssh_host_ed25519_key>; -      ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGyJlI0YpIh/LiiPMseD2IBHg+uVGrkSy0MPNeD+Jv8Y cake";      };      crapi = rec { # raspi1        cores = 1;        ci = false;        nets = { -        retiolum = { -          ip4.addr = "10.243.136.237"; -          aliases = [ -            "crapi.r" -          ]; -          tinc.pubkey = '' -            Ed25519PublicKey = Zkh6vtSNBvKYUjCPsMyAFJmxzueglCDoawVPCezKy4F -            -----BEGIN RSA PUBLIC KEY----- -            MIIBCgKCAQEAloXLBfZQEVW9mJ7uwOoa+DfV4ek/SG+JQuexJMugei/iNy0NjY66 -            OVIkzFmED32c3D7S1+Q+5Mc3eR02k1o7XERpZeZhCtJOBlS4xMzCKH62E4USvH5L -            R4O8XX1o/tpeOuZvpnpY1oPmFFc/B5G2jWWQR4Slpbw7kODwYYm5o+B7n+MkVNrk -            OEOHLaaO6I5QB3GJvDH2JbwzDKLVClQM20L/EvIwnB+Xg0q3veKFj0WTXEK+tuME -            di++RV4thhZ9IOgRTJOeT94j7ulloh15gqYaIqRqgtzfWE2TnUxvl+upB+yQHNtl -            bJFLHkE34cQGxEv9dMjRe8i14+Onhb3B6wIDAQAB -            -----END RSA PUBLIC KEY----- -            ''; -        }; +        retiolum.ip4.addr = "10.243.136.237";        }; -      ssh.privkey.path = <secrets/ssh.id_ed25519>; -      ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGaV5Ga5R8RTrA+nclxw6uy5Z+hPBLitQTfuXdsmbVW6 crapi";      }; -    drop = rec { -      ci = false; -      cores = 1; +    firecracker = { +      cores = 4;        nets = { -        retiolum = { -          ip4.addr = "10.243.177.9"; -          aliases = [ -            "drop.r" -          ]; -          tinc.pubkey = '' -            -----BEGIN RSA PUBLIC KEY----- -            MIIBCgKCAQEA1QxukdeDqI47nm7/gd5Y9dZZbJULA02ak0A2cB4lmysJjgMFAfbl -            6qpH7HCZk6s+4eI7H+UHUF177W7Z1qq3bqGLmlgdMMAzuDNz9UvNLhrthZMp3tCI -            GIFD28O1bKgDAYgsF/X21CRqEvgk3vRDp9yqIVIzQDmerOrZUx62Rx9Fssl/7ooW -            0319fxcTw6GZEp7RXNzgIobnWPydakh+/I0inP0rC6It/vM5Hi2bV71QPZUyJ78C -            Szh4S8TznW7yMzTQaOENeaUKfqEyN+CW2OomVdWIBOvTJVpvfAut/kg1dyUGgHlT -            F8OlAoNAyxCSxqbM0fY0wtqKD7FaYY9cbQIDAQAB -            -----END RSA PUBLIC KEY----- -          ''; -        }; +        retiolum.ip4.addr = "10.243.12.12";        };      }; +      studio = rec {        ci = false;        cores = 4; -      ssh.privkey.path = <secrets/ssh_host_ed25519_key>; -      ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIqBR5gjJkR1TEIs2yx6JRoIOA7+/LJA6kjju8yCauFa studio";        nets = { -        retiolum = { -          ip4.addr = "10.243.227.163"; -          aliases = [ -            "studio.r" -          ]; -          tinc.pubkey = '' -            -----BEGIN RSA PUBLIC KEY----- -            MIIBCgKCAQEAwAdSac8Oy5tPu7ejwojY5YqaNOfd7i0NToE+oaRJ1yxzmUpj8Fti -            cGpcgBYhFXMVYoYfzLdkAlSYjWKAoShCq/ZEfIM67okXegXvL68zGksfXrmpdUuk -            GCCy2/Ul5urvYEis9UeUpbe6tUxU0zXUWCkhMQgHeO2xQEizfIfWsUn5sYtFFoKI -            jYbAcLbRtw+Islfih8G7ydPBh78WPGz6Xx79A5nmfI1VZDAToEqpqUoaqfzsTGd1 -            78GZssE3o4veTmBFvLV3Fm/ltfXpzhAIcsi89V3RjrzFM7UMD8aV153OAzhddxIu -            8x6FibmMSzBXQDFuAac2+kp9mU0F0W4G1wIDAQAB -            -----END RSA PUBLIC KEY----- -          ''; -        }; +        retiolum.ip4.addr = "10.243.227.163";        };      }; -      fileleech = rec {        ci = false;        cores = 4; -      ssh.privkey.path = <secrets/ssh_host_ed25519_key>; -      ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIM+jB5QdPsAJc90alYDhAEP3sPDJb6eIj9bebj+rTBEJ fileleech";        nets = { -        retiolum = { -          ip4.addr = "10.243.113.98"; -          aliases = [ -            "fileleech.r" -          ]; -          tinc.pubkey = '' -            -----BEGIN RSA PUBLIC KEY----- -            MIIBCgKCAQEA2W20+jYvuFUjPQ+E+7Xlabf8fW/XSnTTelfo2uRcJ3FMLYQ9H3rF -            8L8StPmxn8Q20FFH/MvRmgW8pU9z4RQ3nAi+utVYqAJQtOYA9FPMxssC08w82r0K -            YC6sgc9MeRjnCjQxQrQs4fqA6KpqSLxRf2c6kfNwYRgCxFMns2ncxOiPOoGLZait -            nJR3m0cSRm8yCTMbznlGH99+5+3HgvuBE/UYXmmGBs7w8DevaX76butzprZ8fm4z -            e5C7R9ofdVW70GGksfSI81y5xODWMbfjTRHKm4OBX7NOCiOTwx1wu8bYDN3EzN6V -            UM5PJfU42sViPEZmVuC8cDcP1xemHTkh9QIDAQAB -            -----END RSA PUBLIC KEY----- -          ''; -        }; -      }; -    }; -    latte = rec { -      ci = false; -      cores = 1; -      ssh.privkey.path = <secrets/ssh_host_ed25519_key>; -      # ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIrkK1mWfPvfZ9ALC1irGLuzOtMefaGAmGY1VD4dj7K1 latte"; -      nets = { -        internet = { -          ip4.addr = "185.215.224.160"; -          aliases = [ -            "latte.i" -          ]; -        }; -        retiolum = { -          ip4.addr = "10.243.80.249"; -          aliases = [ -            "latte.r" -          ]; -          tinc.pubkey = '' -            -----BEGIN RSA PUBLIC KEY----- -            MIIBCgKCAQEAx70gmNoP4RYeF3ShddEMsbNad9L5ezegwxJTZA7XTfF+/cwr/QwU -            5BL0QXTwBnKzS0gun5NXmhwPzvOdvfczAxtJLk8/NjVHFeE39CiTHGgIxkZFgnbo -            r2Rj6jJb89ZPaTr+hl0+0WQQVpl9NI7MTCUimvFBaD6IPmBh5wTySu6mYBs0mqmf -            43RrvS42ieqQJAvVPkIzxxJeTS/M3NXmjbJ3bdx/2Yzd7INdfPkMhOONHcQhTKS4 -            GSXJRTytLYZEah8lp8F4ONggN6ixlhlcQAotToFP4s8c+KqYfIZrtP+pRj7W72Y6 -            vhnobLDJwBbAsW1RQ6FHcw10TrP2H+haewIDAQAB -            -----END RSA PUBLIC KEY----- -          ''; -        }; -      }; -    }; - -    pnp = { -      ci = false; -      cores = 1; -      nets = { -        retiolum = { -          ip4.addr = "10.243.0.210"; -          aliases = [ -            "pnp.r" -            "cgit.pnp.r" -          ]; -          tinc.pubkey = '' -            -----BEGIN RSA PUBLIC KEY----- -            MIIBCgKCAQEAugkgEK4iy2C5+VZHwhjj/q3IOhhazE3TYHuipz37KxHWX8ZbjH+g -            Ewtm79dVysujAOX8ZqV8nD8JgDAvkIZDp8FCIK0/rgckhpTsy1HVlHxa7ECrOS8V -            pGz4xOxgcPFRbv5H2coHtbnfQc4GdA5fcNedQ3BP3T2Tn7n/dbbVs30bOP5V0EMR -            SqZwNmtqaDQxOvjpPg9EoHvAYTevrpbbIst9UzCyvmNli9R+SsiDrzEPgB7zOc4T -            TG12MT+XQr6JUu4jPpzdhb6H/36V6ADCIkBjzWh0iSfWGiFDQFinD+YSWbA1NOTr -            Qtd1I3Ov+He7uc2Z719mb0Og2kCGnCnPIwIDAQAB -            -----END RSA PUBLIC KEY----- -          ''; -        }; -      }; -    }; -    darth = { -      ci = false; -      cores = 4; -      nets = { -        retiolum = { -          ip4.addr = "10.243.0.84"; -          aliases = [ -            "darth.r" -          ]; -          tinc.pubkey = '' -            -----BEGIN RSA PUBLIC KEY----- -            MIIBCgKCAQEA1pWNU+FY9XpQxw6srUb5mvGFgqSyJQAelFoufZng6EFeTnAzQOdq -            qT7IWN+o3kSbQQsC2tQUnRYFoPagsgFP610D+LGwmeJlNgAf23gBI9ar1agUAvYX -            yzYBj7R9OgGXHm6ECKwsxUJoGxM4L0l6mk/rTMVFnzgYPbpVJk1o6NPmiZhW8xIi -            3BfxJUSt8rEQ1OudCirvdSr9uYv/WMR5B538wg4JeQK715yKEYbYi8bqOPnTvGD8 -            q5HRwXszWzCYYnqrdlmXzoCA1fT4vQdtov+63CvHT2RV7o42ruGZbHy7JIX9X3IE -            u0nA8nZhZ5byhWGCpDyr6bTkvwJpltJypQIDAQAB -            -----END RSA PUBLIC KEY----- -          ''; -        }; -        siem = { -          ip4.addr   = "10.8.10.2"; -          ip4.prefix = "10.8.10.0/24"; -          aliases = [ -            "darth.siem" -          ]; -          tinc.pubkey = '' -            Ed25519PublicKey = 24t9ye4gRLg6UbVxBvuuDlvU/cnByxMjYjym4LO6GkK -            -----BEGIN RSA PUBLIC KEY----- -            MIIBCQKCAQEApcUeTecVahqNIfLEkfgNiaW+eHQ9Y90DxHhy9vdPZh8dmLqoFBoW -            TCPcZIRpyj7hxRkNIhh34Ewpul0oQ1tzrUGcT2xvMNwaCupRDmhZn9jR9aFFEYKb -            fUOplCxb4y2UKbWAA6hie3PKH9wnPfbwSsexb2BSQAqSt4iNIVCV6j7LXpiopbGS -            Exs3/Pz+IeMtGyuMYA3rUmJsVRKR1o7axLtlhYK7JSMbqdYhaQJ4NZrvIXw//w21 -            kM/TJTPZ4j47ME18jQInO62X5h+xVch6DtvwvjBMMMKbS0am9qw1P3qo7MP3PmQh -            rvVQRth8L63q4NLOnT29XmnxPSVGL1PBQQICEAE= -            -----END RSA PUBLIC KEY----- -          ''; -        }; -      }; -    }; -    ossim = { # vm on darth -      nets = { -        siem = { -          ip4.addr = "10.8.10.6"; -          ip4.prefix = "10.8.10.0/24"; -          aliases = [ -            "ossim.siem" -          ]; -          tinc.pubkey = '' -            -----BEGIN RSA PUBLIC KEY----- -            MIIBCgKCAQEAv5qv9R3E1AHJOhTnHJ2E5zWjItRdXSw/inpz/W+KcBeM/HSG0XEl -            RyGAwty7VP4CiLp7CagWmtVsz/5ytnXJzLDeRLn5t+KzO6am0aOpvAt6ZggZXPhL -            cQkn4IGi1TJE5tw+lzabBkUZm3zD1KEXpqJeZ6spA4e9lB/+T3Tx23g9WDEOKand -            mAJrsdsvTCIiVJefidOAmgeZVVOV3ltBonNP1nqEy+5v4B3EBT/Uj7ImL2aRj/pd -            dPs6dGV2LqSQvnrSbFZzuKVXKpD1M+wgT/5NQk/hVJJxBQC6rxvpg1XyQkepcLWL -            WjvogOl4NjXStmKDX2+gPPFx6XTmwDenOwIDAQAB -            -----END RSA PUBLIC KEY----- -          ''; -        }; -      }; -    }; -    honeydrive = { # vm on darth -      nets = { -        internet = { # via shoney -          ip4.addr = "64.137.234.232"; -          aliases = [ -            "honeydrive.i" -          ]; -        }; +        retiolum.ip4.addr = "10.243.113.98";        };      };      tsp = {        ci = true;        cores = 1;        nets = { -        retiolum = { -          ip4.addr = "10.243.0.212"; -          aliases = [ -            "tsp.r" -          ]; -          tinc.pubkey = '' -            -----BEGIN RSA PUBLIC KEY----- -            MIICCgKCAgEAwW+RjRcp3uarkfXZ+FcCYY2GFcfI595GDpLRuiS/YQAB3JZEirHi -            HFhDJN80fZ9qHqtq9Af462xSx+cIb282TxAqCM1Z9buipOcYTYo0m8xIqkT10dB3 -            mR87B+Ed1H6G3J6isdwEb9ZMegyGIIeyR53FJQYMZXjxdJbAmGMDKqjZSk1D5mo+ -            n5Vx3lGzTuDy84VyphfO2ypG48RHCxHUAx4Yt3o84LKoiy/y5E66jaowCOjZ6SqG -            R0cymuhoBhMIk2xAXk0Qn7MZ1AOm9N7Wru7FXyoLc7B3+Gb0/8jXOJciysTG7+Gr -            Txza6fJvq2FaH8iBnfezSELmicIYhc8Ynlq4xElcHhQEmRTQavVe/LDhJ0i6xJSi -            aOu0njnK+9xK+MyDkB7n8dO1Iwnn7aG4n3CjVBB4BDO08lrovD3zdpDX0xhWgPRo -            ReOJ3heRO/HsVpzxKlqraKWoHuOXXcREfU9cj3F6CRd0ECOhqtFMEr6TnuSc8GaE -            KCKxY1oN45NbEFOCv2XKd2wEZFH37LFO6xxzSRr1DbVuKRYIPjtOiFKpwN1TIT8v -            XGzTT4TJpBGnq0jfhFwhVjfCjLuGj29MCkvg0nqObQ07qYrjdQI4W1GnGOuyXkvQ -            teyxjUXYbp0doTGxKvQaTWp+JapeEaJPN2MDOhrRFjPrzgo3aW9+97UCAwEAAQ== -            -----END RSA PUBLIC KEY----- -          ''; -        }; +        retiolum.ip4.addr = "10.243.0.212";        };      };      x = {        ci = true;        cores = 4;        nets = { -        retiolum = { -          ip4.addr = "10.243.0.91"; -          aliases = [ -            "x.r" -          ]; -          tinc.pubkey = '' -            -----BEGIN RSA PUBLIC KEY----- -            MIIBCgKCAQEAnztrijsfao+fmNtwAjqwIDKsRaMP3ECsq2T2zqKvxwCyXk69G9bG -            RFhWjgaawS9ZhnHSlgWK/vtoR0O9NxpzdU/mvdQijbVGxM02DegjO9qDSIe8EGmA -            kscW4nDqYtw4rtjOVPfnNiWXbcWD8eiYR0kcSWmSvfOpVvdhTETqduTx5HRHyEFD -            JRQYR/tJSvVWXmM670PENAPNJFJ4VSJR60s5A+bFT7J/uw7HzJXX28LygJz73Dj2 -            2a4ev0WcZQngLq072h/91R/TOpg+ogUDVhXkQtKyFj7im0287JTL4bXGofZBhzaf -            +h9dFGs1QLoNyhG/cgt9fog7boSXTelAiQIDAQAB -            -----END RSA PUBLIC KEY----- -          ''; -        }; -        siem = { -          ip4.addr = "10.8.10.4"; -          ip4.prefix = "10.8.10.0/24"; -          aliases = [ -            "makefu.siem" -          ]; -          tinc.pubkey = '' -            Ed25519PublicKey = rFTglGxm563e/w82Q9Qqy/E+V/ipT4DOTyTuYrWrtmI -            -----BEGIN RSA PUBLIC KEY----- -            MIIBCQKCAQEAx+OQXQj6rlXIByo48JZXSexRz5G5oJVZTHAJ0GF5f70U65C0x83p -            XtNp4LGYti+cyyzmQjf/N7jr2CxUlOATN2nRO4CT+JaMM2MoqnPWqTZBPMDiHq2y -            ce0zjLPPl0hVc5mg+6F0tgolbUvTIo2CgAIl5lNvJiVfmXRSehmMprf1NPkxJd/O -            vAOD7mgnCjkEAWElf1cfxSGZqSLbNltRK340nE5x6A5tY7iEueP/r9chEmOnVjKm -            t+GJAJIe1PClWJHJYAXF8I7R3g+XQIqgw+VTN3Ng5cS5W/mbTFIzLWMZpdZaAhWR -            56pthtZAE5FZ+4vxMpDQ4yeDu0b6gajWNQICEAE= -            -----END RSA PUBLIC KEY----- -          ''; -        }; -        #wiregrill = { -        #  aliases = [ -        #    "x.w" -        #  ]; -        #  wireguard.pubkey = "fe5smvKVy5GAn7EV4w4tav6mqIAKhGWQotm7dRuRt1g="; -        #}; -      }; -      ssh.privkey.path = <secrets/ssh_host_ed25519_key>; -      ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHDM0E608d/6rGzXqGbNSuMb2RlCojCJSiiz6QcPOC2G root@x"; - -    }; - -    vbob = { -      ci = true; -      cores = 2; -      nets = { -        retiolum = { -          ip4.addr = "10.243.1.91"; -          aliases = [ -            "vbob.r" -          ]; -          tinc.pubkey = '' -            -----BEGIN RSA PUBLIC KEY----- -            MIIBCgKCAQEA+0TIo0dS9LtSdrmH0ClPHLO7dHtV9Dj7gaBAsbyuwxAI5cQgYKwr -            4G6t7IcJW+Gu2bh+LKtPP91+zYXq4Qr1nAaKw4ajsify6kpxsCBzknmwi6ibIJMI -            AK114dr/XSk/Pc6hOSA8kqDP4c0MZXwitRBiNjrWbTrQh6GJ3CXhmpZ2lJkoAyNP -            hjdPerbTUrhQlNW8FanyQQzOgN5I7/PXsZShmb3iNKz1Ban5yWKFCVpn8fjWQs5o -            Un2AKowH4Y+/g8faGemL8uy/k5xrHSrn05L92TPDUpAXrcZXzo6ao1OBiwJJVl7s -            AVduOY18FU82GUw7edR0e/b2UC6hUONflwIDAQAB -            -----END RSA PUBLIC KEY----- -          ''; +        retiolum.ip4.addr = "10.243.0.91"; +        wiregrill = { +          # defaults          };        }; -      ssh.privkey.path = <secrets/ssh_host_ed25519_key>; -      ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICPLTMl+thSq77cjYa2XF7lz5fA7JMftrLo8Dy/OBXSg root@nixos"; -    }; -    pigstarter = rec { -      cores = 1; -      extraZones = { -        "krebsco.de" = '' -          euer              IN MX 1   aspmx.l.google.com. -          nixos.unstable    IN CNAME  krebscode.github.io. -          boot              IN A      ${nets.internet.ip4.addr} -        ''; -      }; -      nets = { -        internet = { -          ip4.addr = "192.40.56.122"; -          ip6.addr = "2604:2880::841f:72c"; -          aliases = [ -            "pigstarter.i" -          ]; -        }; -        retiolum = { -          ip4.addr = "10.243.0.153"; -          aliases = [ -            "pigstarter.r" -          ]; -          tinc.pubkey = '' -            -----BEGIN RSA PUBLIC KEY----- -            MIIBCgKCAQEA/efJuJRLUIZROe3QE8WYTD/zyNGRh9I2/yw+5It9HSNVDMIOV1FZ -            9PaspsC+YQSBUQRN8SJ95G4RM6TIn/+ei7LiUYsf1Ik+uEOpP5EPthXqvdJEeswv -            3QFwbpBeOMNdvmGvQLeR1uJKVyf39iep1wWGOSO1sLtUA+skUuN38QKc1BPASzFG -            4ATM6rd2Tkt8+9hCeoePJdLr3pXat9BBuQIxImgx7m5EP02SH1ndb2wttQeAi9cE -            DdJadpzOcEgFatzXP3SoKVV9loRHz5HhV4WtAqBIkDvgjj2j+NnXolAUY25Ix+kv -            sfqfIw5aNLoIX4kDhuDEVBIyoc7/ofSbkQIDAQAB -            -----END RSA PUBLIC KEY----- -          ''; -        }; -      }; -    }; -    wry = rec { -      ci = false; -      cores = 1; -      extraZones = { -        "krebsco.de" = '' -          wry               IN A      ${nets.internet.ip4.addr} -          tinc              IN A      ${nets.internet.ip4.addr} -        ''; -      }; -      nets = rec { -        internet = { -          ip4.addr = "104.233.87.86"; -          aliases = [ -            "wry.i" -          ]; -        }; -        retiolum = { -          via = internet; -          ip4.addr = "10.243.29.169"; -          aliases = [ -            "wry.r" -            "graph.wry.r" -            "paste.wry.r" -          ]; -          tinc.pubkey = '' -            -----BEGIN RSA PUBLIC KEY----- -            MIICCgKCAgEAs9bq++H4HF8EpZMfWGfoIsh/C+YNO2pg74UPBsP/tFFe71yzWwUn -            U9LW0n3bBqCMQ/oDthbSMwCkS9JzcUi22QJEdjbQs/aay9gZR115b+UxWPocw0Ms -            ZoREKo3Oe0hETk7Ing8NdBDI0kCBh9QnvqQ3iKd0rBae3DYvcWlDsY93GLGMddgA -            7E9oa3EHVYH/MPZaeJtTknaJduanBSbiEb/xQOqxTadHoQASKU6DQD1czMH3hLG2 -            8Wn4MBj9fgKBAoIy092tIzPtE2QwAHO73yz4mSW/3r190hREgVbjuEPiw4w5mEyQ -            j+NeN3f3heFKx+GCgdWH9xPw6m6qPdqUiGUPq91KXMOhNa8lLcTp95mHdCMesZCF -            TFj7hf6y+SVt17Vo+YUL7UqnMtAm3eZZmwyDu0DfKFrdgz6MtDD+5dQp9g8VHpqw -            RfbaB1Srlr24EUYYoOBEF9CcIacFbsr+MKh+hQk5R0uEMSeAWARzxvvr69iMgdEC -            zDiu0rrRLN+CrfgkDir7pkRKxeA1lz8KpySyIZRziNg6mSHjKjih4++Bbu4N2ack -            86h84qBrA8lq2xsub4+HgKZGH2l5Y8tvlr+rx0mQKEJkT6XDKCXZFPfl2N0QrWGT -            Dv7l2vn0QMj9E6+BdRhYaO/m3+cIZ9faM851nRj/gq2OOtzW3ekrne0CAwEAAQ== -            -----END RSA PUBLIC KEY----- -          ''; -        }; -      }; -      ssh.privkey.path = <secrets/ssh_host_ed25519_key>; -      ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIH4Tjx9qK6uWtxT1HCpeC0XvDZKO/kaPygyKatpAqU6I root@wry";      };      filepimp = rec {        ci = false; @@ -452,22 +114,7 @@ in {              "filepimp.lan"            ];          }; -        retiolum = { -          ip4.addr = "10.243.153.102"; -          aliases = [ -            "filepimp.r" -          ]; -          tinc.pubkey = '' -            -----BEGIN RSA PUBLIC KEY----- -            MIIBCgKCAQEA43w+A1TMOfugZ/CVwilJn4c36wWSjihaeVe7suZD0DSscKBcbkGg -            3dTCSTnu6Qb9sYd2mKebKXLreO6nhEEoFGsRU0yw/1h8gl7mWYEdTifPfvM5EWwS -            wkN9dJ5njwIUSRyWH7QTsLkiRJVFN2UxEwrhAbo1FJ7yuhRgAKqKJSN4yPVViZwR -            oHyyobvm/i2J+XSiDI9MRo74vNjnDLvO7R6ErIrhOPP1bD9fx3u+UYUfgS0iCO3X -            UN0duBz/faRcl6IRytZOuHaIp30eJ4850ZK8RPz/Dqqj+USMFq60i0oMsuAi/ljB -            8b+eQBt6OXu4MSntxoR8Ja7ht+EOTDnBOwIDAQAB -            -----END RSA PUBLIC KEY----- -          ''; -        }; +        retiolum.ip4.addr = "10.243.153.102";        };      }; @@ -489,68 +136,27 @@ in {              "dcpp.omo.r"              "torrent.omo.r"            ]; -          tinc.pubkey = '' -            -----BEGIN RSA PUBLIC KEY----- -            MIIBCgKCAQEAuHQEeowvxRkoHJUw6cUp431pnoIy4MVv7kTLgWEK46nzgZtld9LM -            ZdNMJB9CuOVVMHEaiY6Q5YchUmapGxwEObc0y+8zQxTPw3I4q0GkSJqKLPrsTpkn -            sgEkHPfs2GVdtIBXDn9I8i5JsY2+U8QF8fbIQSOO08/Vpa3nknDAMege9yEa3NFm -            s/+x+2pS+xV6uzf/H21XNv0oufInXwZH1NCNXAy5I2V6pz7BmAHilVOGCT7g2zn6 -            GasmofiYEnro4V5s8gDlQkb7bCZEIA9EgX/HP6fZJQezSUHcDCQFI0vg26xywbr6 -            5+9tTn8fN2mWS5+Pdmx3haX1qFcBP5HglwIDAQAB -            -----END RSA PUBLIC KEY----- -          '';          };        }; -      ssh.privkey.path = <secrets/ssh.id_ed25519>; -      ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPTBGboU/P00yYiwYje53G0oqDFWmcSJ+hIpMsl4f/HH";      };      wbob = rec {        ci = true;        cores = 4;        nets = { -        siem = { -          ip4.addr = "10.8.10.7"; -          ip4.prefix = "10.8.10.0/24"; -          aliases = [ "display.siem" ]; -          tinc.pubkey = '' -            -----BEGIN RSA PUBLIC KEY----- -            MIIBCgKCAQEA+/TpxsVIBL9J9QAe/+jB6sgu/O6J+KY4YrAzZ6dM4kbFv5JA64f5 -            6znv8EFqn6loS9Aez3e08P5scyGjiwWytdKN5Yztlffc0xDD7MUU2RiCsQF1X74J -            +1i8NhSq3PJ6UeUURxYYnAYzBlFvsxev4vpniFTsIR9tmcAYX9NT9420D6nV7xq7 -            FdkoBlYj4eUQqQzHH1T/Lmt+BGmf+BufIJas+Oo/Sg59vIk9OM08WyAjHVT2iNbg -            LXDhzVaeGOOM3GOa0YGG0giM3Rd245YPaPiVbwrMy8HQRBpMzXOPjcC1nYZSjxrW -            LQxtRS+dmfEMG7MJ8T2T2bseX6z6mONc1QIDAQAB -            -----END RSA PUBLIC KEY----- -            -----BEGIN ED25519 PUBLIC KEY----- -            3JGeGnADWR+hfb4TEoHDyopEYgkfGNJKwy71bqcsNrO -            -----END ED25519 PUBLIC KEY----- -          ''; -        };          retiolum = {            ip4.addr = "10.243.214.15";            aliases = [              "wbob.r"              "hydra.wbob.r"            ]; -          tinc.pubkey = '' -            -----BEGIN RSA PUBLIC KEY----- -            MIIBCgKCAQEAqLTJx91OdR0FlJAc2JGh+AJde95oMzzh8o36JBFpsaN7styNfD3e -            QGM/bDXFjk4ieIe5At0Z63P2KWxRp3cz8LWKJsn5cGsX2074YWMAGmKX+ZZJNlal -            cJ994xX+8MJ6L2tVKpY7Ace7gqDN+l650PrEzV2SLisIqOdxoBlbAupdwHieUBt8 -            khm4NLNUCxPYUx2RtHn4iGdgSgUD/SnyHEFdyDA17lWAGfEi4yFFjFMYQce/TFrs -            rQV9t5hGaofu483Epo6mEfcBcsR4GIHI4a4WKYANsIyvFvzyGFEHOMusG6nRRqE9 -            TNs2RYfwDy/r6H/hDeB/BSngPouedEVcPwIDAQAB -            -----END RSA PUBLIC KEY----- -          '';          };        }; -      ssh.privkey.path = <secrets/ssh.id_ed25519>; -      ssh.pubkey = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIN5ZmJSypW3LXIJ67DdbxMxCfLtORFkl5jEuD131S5Tr";      };      gum = rec {        ci = true;        extraZones = {          "krebsco.de" = '' +          boot              IN A      ${nets.internet.ip4.addr}            boot.euer         IN A      ${nets.internet.ip4.addr}            cache.euer        IN A      ${nets.internet.ip4.addr}            cache.gum         IN A      ${nets.internet.ip4.addr} @@ -558,6 +164,7 @@ in {            dl.euer           IN A      ${nets.internet.ip4.addr}            dockerhub         IN A      ${nets.internet.ip4.addr}            euer              IN A      ${nets.internet.ip4.addr} +          euer              IN MX 1   aspmx.l.google.com.            ghook             IN A      ${nets.internet.ip4.addr}            git.euer          IN A      ${nets.internet.ip4.addr}            gold              IN A      ${nets.internet.ip4.addr} @@ -566,6 +173,7 @@ in {            iso.euer          IN A      ${nets.internet.ip4.addr}            mon.euer          IN A      ${nets.internet.ip4.addr}            netdata.euer      IN A      ${nets.internet.ip4.addr} +          nixos.unstable    IN CNAME  krebscode.github.io.            o.euer            IN A      ${nets.internet.ip4.addr}            photostore        IN A      ${nets.internet.ip4.addr}            pigstarter        IN A      ${nets.internet.ip4.addr} @@ -586,17 +194,21 @@ in {              "nextgum.i"            ];          }; -        #wiregrill = { -        #  via = internet; -        #  aliases = [ -        #    "gum.w" -        #  ]; -        #  wireguard.pubkey = "yAKvxTvcEVdn+MeKsmptZkR3XSEue+wSyLxwcjBYxxo="; -        #}; +        wiregrill = { +          via = internet; +          ip6.addr = w6 "1"; +          wireguard = { +            subnets = [ +              (krebs.genipv6 "wiregrill" "external" 0).subnetCIDR +              (krebs.genipv6 "wiregrill" "makefu" 0).subnetCIDR +            ]; +          }; +        };          retiolum = {            via = internet;            ip4.addr = "10.243.0.213";            aliases = [ +            "gum.r"              "backup.makefu.r"              "blog.gum.r"              "blog.makefu.r" @@ -605,7 +217,6 @@ in {              "dcpp.gum.r"              "dcpp.nextgum.r"              "graph.r" -            "gum.r"              "logs.makefu.r"              "netdata.makefu.r"              "nextgum.r" @@ -617,91 +228,15 @@ in {              "wiki.gum.r"              "wiki.makefu.r"            ]; -          tinc.pubkey = '' -            -----BEGIN RSA PUBLIC KEY----- -            MIIBCgKCAQEAvgvzx3rT/3zLuCkzXk1ZkYBkG4lltxrLOLNivohw2XAzrYDIw/ZY -            BTDDcD424EkNOF6g/3tIRWqvVGZ1u12WQ9A/R+2F7i1SsaE4nTxdNlQ5rjy80gO3 -            i1ZubMkTGwd1OYjJytYdc  | 
