From d213df5c00d3073d2f3bc09471fce466153df881 Mon Sep 17 00:00:00 2001 From: tv Date: Sat, 11 Jul 2015 16:55:22 +0200 Subject: [PATCH] NWO --- .gitignore | 1 + 0make/tv/cd.makefile | 4 + 0make/tv/mkdir.makefile | 4 + 0make/tv/nomic.makefile | 4 + 0make/tv/rmdir.makefile | 4 + 0make/tv/wu.makefile | 4 + 1systems/tv/cd.nix | 98 ++++++ 1systems/tv/mkdir.nix | 76 +++++ 1systems/tv/nomic.nix | 111 +++++++ 1systems/tv/rmdir.nix | 77 +++++ 1systems/tv/wu.nix | 388 +++++++++++++++++++++++ 2configs/tv/AO753.nix | 39 +++ 2configs/tv/CAC-CentOS-7-64bit.nix | 47 +++ 2configs/tv/CAC-Developer-1.nix | 6 + 2configs/tv/CAC-Developer-2.nix | 6 + 2configs/tv/base.nix | 175 +++++++++++ 2configs/tv/consul-client.nix | 9 + 2configs/tv/consul-server.nix | 22 ++ 2configs/tv/cryptoroot.nix | 4 + 2configs/tv/exim-retiolum.nix | 126 ++++++++ 2configs/tv/exim-smarthost.nix | 474 +++++++++++++++++++++++++++++ 2configs/tv/git-public.nix | 83 +++++ 2configs/tv/smartd.nix | 17 ++ 2configs/tv/synaptics.nix | 14 + 2configs/tv/urxvt.nix | 24 ++ 2configs/tv/w110er.nix | 42 +++ 2configs/tv/xserver.nix | 41 +++ 3modules/tv/consul.nix | 122 ++++++++ 3modules/tv/ejabberd.nix | 171 +++++++++++ 3modules/tv/git.nix | 406 ++++++++++++++++++++++++ 3modules/tv/identity.nix | 71 +++++ 3modules/tv/iptables.nix | 129 ++++++++ 3modules/tv/nginx.nix | 83 +++++ 3modules/tv/retiolum.nix | 241 +++++++++++++++ 3modules/tv/urlwatch.nix | 156 ++++++++++ 4lib/tv/default.nix | 62 ++++ 4lib/tv/git.nix | 181 +++++++++++ 4lib/tv/modules.nix | 21 ++ Makefile | 70 +++++ Zhosts/Styx | 10 + Zhosts/ThinkArmageddon | 9 + Zhosts/TriBot | 11 + Zhosts/ach | 11 + Zhosts/air | 11 + Zhosts/alarmpi | 11 + Zhosts/albi10 | 11 + Zhosts/albi7 | 10 + Zhosts/almoehi | 11 + Zhosts/alphalabs | 10 + Zhosts/apfull | 11 + Zhosts/bitchctl | 11 + Zhosts/bitchextend | 11 + Zhosts/bitchtop | 11 + Zhosts/box | 10 + Zhosts/bridge | 12 + Zhosts/c2ft | 10 + Zhosts/c2fthome | 10 + Zhosts/casino | 11 + Zhosts/cat1 | 11 + Zhosts/cband | 11 + Zhosts/cd | 17 ++ Zhosts/cloudkrebs | 12 + Zhosts/darth | 12 + Zhosts/dei | 11 + Zhosts/destroy | 11 + Zhosts/devstar | 11 + Zhosts/eigenserv | 11 + Zhosts/elvis | 12 + Zhosts/exile | 9 + Zhosts/exitium_mobilis | 10 + Zhosts/falk | 11 + Zhosts/fastpoke | 12 + Zhosts/filebitch | 11 + Zhosts/filepimp | 11 + Zhosts/flap | 11 + Zhosts/foobar | 11 + Zhosts/fuerkrebs | 10 + Zhosts/go | 13 + Zhosts/gum | 13 + Zhosts/heidi | 11 + Zhosts/horisa | 12 + Zhosts/horreum_magnus | 15 + Zhosts/incept | 13 + Zhosts/ire | 12 + Zhosts/ire2 | 9 + Zhosts/irkel | 12 + Zhosts/juhulian | 11 + Zhosts/k2 | 28 ++ Zhosts/kabinett | 11 + Zhosts/kaepsele | 11 + Zhosts/kalle | 11 + Zhosts/karthus | 10 + Zhosts/khackplug | 11 + Zhosts/kheurop | 12 + Zhosts/kiosk | 12 + Zhosts/krebsplug | 10 + Zhosts/kvasir | 11 + Zhosts/laqueus | 11 + Zhosts/linuxatom | 11 + Zhosts/luminos | 11 + Zhosts/machine | 11 + Zhosts/makalu | 11 + Zhosts/mako | 11 + Zhosts/miefda0 | 10 + Zhosts/minikrebs | 10 + Zhosts/mkdir | 11 + Zhosts/monitor | 11 + Zhosts/mors | 10 + Zhosts/motor | 12 + Zhosts/mu | 10 + Zhosts/muhbaasu | 13 + Zhosts/nomic | 10 + Zhosts/nomic2 | 10 + Zhosts/nukular | 11 + Zhosts/omo | 9 + Zhosts/pic | 11 + Zhosts/pigstarter | 13 + Zhosts/pike | 11 + Zhosts/pornocauster | 10 + Zhosts/radiotuxmini | 11 + Zhosts/random | 10 + Zhosts/raspafari | 11 + Zhosts/reimae | 12 + Zhosts/rmdir | 11 + Zhosts/robchina | 11 + Zhosts/rockit | 11 + Zhosts/rtjure_debian_oder_so | 11 + Zhosts/rtjure_ras | 11 + Zhosts/rtjure_rdrlab_linkstation | 11 + Zhosts/rubus | 9 + Zhosts/senderechner | 10 + Zhosts/serenity | 11 + Zhosts/seruundroid | 12 + Zhosts/sir_krebs_a_lot | 11 + Zhosts/skirfir | 11 + Zhosts/sleipnir | 12 + Zhosts/smove | 9 + Zhosts/sokrates | 11 + Zhosts/sokrateslaptop | 11 + Zhosts/soundflower | 10 + Zhosts/steve | 10 + Zhosts/tahoe | 12 + Zhosts/taschenkrebs | 11 + Zhosts/terrapi | 11 + Zhosts/thomasDOTde | 9 + Zhosts/tincdroid | 9 + Zhosts/tpsw | 11 + Zhosts/ufo | 11 + Zhosts/uriel | 11 + Zhosts/vault | 10 + Zhosts/voyager | 17 ++ Zhosts/wooktop | 11 + Zhosts/wu | 10 + Zhosts/ytart | 9 + Zhosts/zombiecancer | 11 + Zpubkeys/deploy_wu.ssh.pub | 1 + Zpubkeys/lass.ssh.pub | 1 + Zpubkeys/makefu.ssh.pub | 1 + Zpubkeys/mv_vod.ssh.pub | 1 + Zpubkeys/tv_wu.ssh.pub | 1 + Zpubkeys/uriel.ssh.pub | 1 + 161 files changed, 4912 insertions(+) create mode 100644 .gitignore create mode 100644 0make/tv/cd.makefile create mode 100644 0make/tv/mkdir.makefile create mode 100644 0make/tv/nomic.makefile create mode 100644 0make/tv/rmdir.makefile create mode 100644 0make/tv/wu.makefile create mode 100644 1systems/tv/cd.nix create mode 100644 1systems/tv/mkdir.nix create mode 100644 1systems/tv/nomic.nix create mode 100644 1systems/tv/rmdir.nix create mode 100644 1systems/tv/wu.nix create mode 100644 2configs/tv/AO753.nix create mode 100644 2configs/tv/CAC-CentOS-7-64bit.nix create mode 100644 2configs/tv/CAC-Developer-1.nix create mode 100644 2configs/tv/CAC-Developer-2.nix create mode 100644 2configs/tv/base.nix create mode 100644 2configs/tv/consul-client.nix create mode 100644 2configs/tv/consul-server.nix create mode 100644 2configs/tv/cryptoroot.nix create mode 100644 2configs/tv/exim-retiolum.nix create mode 100644 2configs/tv/exim-smarthost.nix create mode 100644 2configs/tv/git-public.nix create mode 100644 2configs/tv/smartd.nix create mode 100644 2configs/tv/synaptics.nix create mode 100644 2configs/tv/urxvt.nix create mode 100644 2configs/tv/w110er.nix create mode 100644 2configs/tv/xserver.nix create mode 100644 3modules/tv/consul.nix create mode 100644 3modules/tv/ejabberd.nix create mode 100644 3modules/tv/git.nix create mode 100644 3modules/tv/identity.nix create mode 100644 3modules/tv/iptables.nix create mode 100644 3modules/tv/nginx.nix create mode 100644 3modules/tv/retiolum.nix create mode 100644 3modules/tv/urlwatch.nix create mode 100644 4lib/tv/default.nix create mode 100644 4lib/tv/git.nix create mode 100644 4lib/tv/modules.nix create mode 100644 Makefile create mode 100644 Zhosts/Styx create mode 100644 Zhosts/ThinkArmageddon create mode 100644 Zhosts/TriBot create mode 100644 Zhosts/ach create mode 100644 Zhosts/air create mode 100644 Zhosts/alarmpi create mode 100644 Zhosts/albi10 create mode 100644 Zhosts/albi7 create mode 100644 Zhosts/almoehi create mode 100644 Zhosts/alphalabs create mode 100644 Zhosts/apfull create mode 100644 Zhosts/bitchctl create mode 100644 Zhosts/bitchextend create mode 100644 Zhosts/bitchtop create mode 100644 Zhosts/box create mode 100644 Zhosts/bridge create mode 100644 Zhosts/c2ft create mode 100644 Zhosts/c2fthome create mode 100644 Zhosts/casino create mode 100644 Zhosts/cat1 create mode 100644 Zhosts/cband create mode 100644 Zhosts/cd create mode 100644 Zhosts/cloudkrebs create mode 100644 Zhosts/darth create mode 100644 Zhosts/dei create mode 100644 Zhosts/destroy create mode 100644 Zhosts/devstar create mode 100644 Zhosts/eigenserv create mode 100644 Zhosts/elvis create mode 100644 Zhosts/exile create mode 100644 Zhosts/exitium_mobilis create mode 100644 Zhosts/falk create mode 100644 Zhosts/fastpoke create mode 100644 Zhosts/filebitch create mode 100644 Zhosts/filepimp create mode 100644 Zhosts/flap create mode 100644 Zhosts/foobar create mode 100644 Zhosts/fuerkrebs create mode 100644 Zhosts/go create mode 100644 Zhosts/gum create mode 100644 Zhosts/heidi create mode 100644 Zhosts/horisa create mode 100644 Zhosts/horreum_magnus create mode 100644 Zhosts/incept create mode 100644 Zhosts/ire create mode 100644 Zhosts/ire2 create mode 100644 Zhosts/irkel create mode 100644 Zhosts/juhulian create mode 100644 Zhosts/k2 create mode 100644 Zhosts/kabinett create mode 100644 Zhosts/kaepsele create mode 100644 Zhosts/kalle create mode 100644 Zhosts/karthus create mode 100644 Zhosts/khackplug create mode 100644 Zhosts/kheurop create mode 100644 Zhosts/kiosk create mode 100644 Zhosts/krebsplug create mode 100644 Zhosts/kvasir create mode 100644 Zhosts/laqueus create mode 100644 Zhosts/linuxatom create mode 100644 Zhosts/luminos create mode 100644 Zhosts/machine create mode 100644 Zhosts/makalu create mode 100644 Zhosts/mako create mode 100644 Zhosts/miefda0 create mode 100644 Zhosts/minikrebs create mode 100644 Zhosts/mkdir create mode 100644 Zhosts/monitor create mode 100644 Zhosts/mors create mode 100644 Zhosts/motor create mode 100644 Zhosts/mu create mode 100644 Zhosts/muhbaasu create mode 100644 Zhosts/nomic create mode 100644 Zhosts/nomic2 create mode 100644 Zhosts/nukular create mode 100644 Zhosts/omo create mode 100644 Zhosts/pic create mode 100644 Zhosts/pigstarter create mode 100644 Zhosts/pike create mode 100644 Zhosts/pornocauster create mode 100644 Zhosts/radiotuxmini create mode 100644 Zhosts/random create mode 100644 Zhosts/raspafari create mode 100644 Zhosts/reimae create mode 100644 Zhosts/rmdir create mode 100644 Zhosts/robchina create mode 100644 Zhosts/rockit create mode 100644 Zhosts/rtjure_debian_oder_so create mode 100644 Zhosts/rtjure_ras create mode 100644 Zhosts/rtjure_rdrlab_linkstation create mode 100644 Zhosts/rubus create mode 100644 Zhosts/senderechner create mode 100644 Zhosts/serenity create mode 100644 Zhosts/seruundroid create mode 100644 Zhosts/sir_krebs_a_lot create mode 100644 Zhosts/skirfir create mode 100644 Zhosts/sleipnir create mode 100644 Zhosts/smove create mode 100644 Zhosts/sokrates create mode 100644 Zhosts/sokrateslaptop create mode 100644 Zhosts/soundflower create mode 100644 Zhosts/steve create mode 100644 Zhosts/tahoe create mode 100644 Zhosts/taschenkrebs create mode 100644 Zhosts/terrapi create mode 100644 Zhosts/thomasDOTde create mode 100644 Zhosts/tincdroid create mode 100644 Zhosts/tpsw create mode 100644 Zhosts/ufo create mode 100644 Zhosts/uriel create mode 100644 Zhosts/vault create mode 100644 Zhosts/voyager create mode 100644 Zhosts/wooktop create mode 100644 Zhosts/wu create mode 100644 Zhosts/ytart create mode 100644 Zhosts/zombiecancer create mode 100644 Zpubkeys/deploy_wu.ssh.pub create mode 100644 Zpubkeys/lass.ssh.pub create mode 100644 Zpubkeys/makefu.ssh.pub create mode 100644 Zpubkeys/mv_vod.ssh.pub create mode 100644 Zpubkeys/tv_wu.ssh.pub create mode 100644 Zpubkeys/uriel.ssh.pub diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000..1ce082113 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/.graveyard diff --git a/0make/tv/cd.makefile b/0make/tv/cd.makefile new file mode 100644 index 000000000..e021423f4 --- /dev/null +++ b/0make/tv/cd.makefile @@ -0,0 +1,4 @@ +deploy_host := root@cd-global +nixpkgs_url := https://github.com/NixOS/nixpkgs +nixpkgs_rev := 4c01e6d91993b6de128795f4fbdd25f6227fb870 +secrets_dir := /home/tv/secrets/cd diff --git a/0make/tv/mkdir.makefile b/0make/tv/mkdir.makefile new file mode 100644 index 000000000..b10398a07 --- /dev/null +++ b/0make/tv/mkdir.makefile @@ -0,0 +1,4 @@ +deploy_host := root@mkdir +nixpkgs_url := https://github.com/NixOS/nixpkgs +nixpkgs_rev := 4c01e6d91993b6de128795f4fbdd25f6227fb870 +secrets_dir := /home/tv/secrets/mkdir diff --git a/0make/tv/nomic.makefile b/0make/tv/nomic.makefile new file mode 100644 index 000000000..c11f41153 --- /dev/null +++ b/0make/tv/nomic.makefile @@ -0,0 +1,4 @@ +deploy_host := root@nomic-local +nixpkgs_url := https://github.com/NixOS/nixpkgs +nixpkgs_rev := 4e5e44140bfc27211dffbb3cd727842ab02eb9d6 +secrets_dir := /home/tv/secrets/nomic diff --git a/0make/tv/rmdir.makefile b/0make/tv/rmdir.makefile new file mode 100644 index 000000000..6075bd3d4 --- /dev/null +++ b/0make/tv/rmdir.makefile @@ -0,0 +1,4 @@ +deploy_host := root@rmdir +nixpkgs_url := https://github.com/NixOS/nixpkgs +nixpkgs_rev := 4c01e6d91993b6de128795f4fbdd25f6227fb870 +secrets_dir := /home/tv/secrets/rmdir diff --git a/0make/tv/wu.makefile b/0make/tv/wu.makefile new file mode 100644 index 000000000..81f561ce2 --- /dev/null +++ b/0make/tv/wu.makefile @@ -0,0 +1,4 @@ +deploy_host := root@wu +nixpkgs_url := https://github.com/NixOS/nixpkgs +nixpkgs_rev := e1af50c4c4c0332136283e9231f0a32ac11f2b90 +secrets_dir := /home/tv/secrets/wu diff --git a/1systems/tv/cd.nix b/1systems/tv/cd.nix new file mode 100644 index 000000000..e2ce9bba8 --- /dev/null +++ b/1systems/tv/cd.nix @@ -0,0 +1,98 @@ +{ config, lib, pkgs, ... }: + +with lib; + +{ + imports = [ + ../../2configs/tv/CAC-Developer-2.nix + ../../2configs/tv/CAC-CentOS-7-64bit.nix + ../../2configs/tv/base.nix + ../../2configs/tv/consul-server.nix + ../../2configs/tv/exim-smarthost.nix + ../../2configs/tv/git-public.nix + { + imports = [ ../../3modules/tv/ejabberd.nix ]; + tv.ejabberd = { + enable = true; + hosts = [ "jabber.viljetic.de" ]; + }; + } + { + imports = [ ../../3modules/tv/identity.nix ]; + tv.identity = { + enable = true; + self = config.tv.identity.hosts.cd; + }; + } + { + imports = [ ../../3modules/tv/iptables.nix ]; + tv.iptables = { + enable = true; + input-internet-accept-new-tcp = [ + "ssh" + "tinc" + "smtp" + "xmpp-client" + "xmpp-server" + ]; + input-retiolum-accept-new-tcp = [ + "http" + ]; + }; + } + { + imports = [ ../../3modules/tv/retiolum.nix ]; + tv.retiolum = { + enable = true; + hosts = ../../Zhosts; + connectTo = [ + "fastpoke" + "pigstarter" + "ire" + ]; + }; + } + ]; + + networking.hostName = "cd"; + networking.interfaces.enp2s1.ip4 = [ + { + address = "162.219.7.216"; + prefixLength = 24; + } + ]; + networking.defaultGateway = "162.219.7.1"; + networking.nameservers = [ + "8.8.8.8" + ]; + + environment.systemPackages = with pkgs; [ + git # required for ./deploy, clone_or_update + htop + iftop + iotop + iptables + mutt # for mv + nethogs + rxvt_unicode.terminfo + tcpdump + ]; + + services.journald.extraConfig = '' + SystemMaxUse=1G + RuntimeMaxUse=128M + ''; + + users.extraUsers = { + mv = { + uid = 1338; + group = "users"; + home = "/home/mv"; + createHome = true; + useDefaultShell = true; + openssh.authorizedKeys.keys = map readFile [ + ../../Zpubkeys/mv_vod.ssh.pub + ]; + }; + }; +} diff --git a/1systems/tv/mkdir.nix b/1systems/tv/mkdir.nix new file mode 100644 index 000000000..e4e89872e --- /dev/null +++ b/1systems/tv/mkdir.nix @@ -0,0 +1,76 @@ +{ config, lib, pkgs, ... }: + +with lib; + +{ + imports = [ + ../../2configs/tv/CAC-Developer-1.nix + ../../2configs/tv/CAC-CentOS-7-64bit.nix + ../../2configs/tv/base.nix + ../../2configs/tv/consul-server.nix + ../../2configs/tv/exim-smarthost.nix + ../../2configs/tv/git-public.nix + { + imports = [ ../../3modules/tv/identity.nix ]; + tv.identity = { + enable = true; + self = config.tv.identity.hosts.mkdir; + }; + } + { + imports = [ ../../3modules/tv/iptables.nix ]; + tv.iptables = { + enable = true; + input-internet-accept-new-tcp = [ + "ssh" + "tinc" + "smtp" + ]; + input-retiolum-accept-new-tcp = [ + "http" + ]; + }; + } + { + imports = [ ../../3modules/tv/retiolum.nix ]; + tv.retiolum = { + enable = true; + hosts = ../../Zhosts; + connectTo = [ + "cd" + "fastpoke" + "pigstarter" + "ire" + ]; + }; + } + ]; + + networking.hostName = "mkdir"; + networking.interfaces.enp2s1.ip4 = [ + { + address = "162.248.167.241"; + prefixLength = 24; + } + ]; + networking.defaultGateway = "162.248.167.1"; + networking.nameservers = [ + "8.8.8.8" + ]; + + environment.systemPackages = with pkgs; [ + git # required for ./deploy, clone_or_update + htop + iftop + iotop + iptables + nethogs + rxvt_unicode.terminfo + tcpdump + ]; + + services.journald.extraConfig = '' + SystemMaxUse=1G + RuntimeMaxUse=128M + ''; +} diff --git a/1systems/tv/nomic.nix b/1systems/tv/nomic.nix new file mode 100644 index 000000000..1696c509a --- /dev/null +++ b/1systems/tv/nomic.nix @@ -0,0 +1,111 @@ +{ config, lib, pkgs, ... }: + +with lib; + +{ + imports = [ + ../../2configs/tv/AO753.nix + ../../2configs/tv/base.nix + ../../2configs/tv/consul-server.nix + ../../2configs/tv/exim-retiolum.nix + ../../2configs/tv/git-public.nix + { + imports = [ ../../3modules/tv/identity.nix ]; + tv.identity = { + enable = true; + self = config.tv.identity.hosts.nomic; + }; + } + { + imports = [ ../../3modules/tv/iptables.nix ]; + tv.iptables = { + enable = true; + input-internet-accept-new-tcp = [ + "ssh" + "http" + "tinc" + "smtp" + ]; + }; + } + { + imports = [ ../../3modules/tv/nginx.nix ]; + tv.nginx = { + enable = true; + retiolum-locations = [ + (nameValuePair "~ ^/~(.+?)(/.*)?\$" '' + alias /home/$1/public_html$2; + '') + ]; + }; + } + { + imports = [ ../../3modules/tv/retiolum.nix ]; + tv.retiolum = { + enable = true; + hosts = ../../Zhosts; + connectTo = [ + "gum" + "pigstarter" + ]; + }; + } + ]; + + boot.initrd.luks = { + cryptoModules = [ "aes" "sha1" "xts" ]; + devices = [ + { + name = "luks1"; + device = "/dev/disk/by-uuid/cac73902-1023-4906-8e95-3a8b245337d4"; + } + ]; + }; + + fileSystems."/" = + { device = "/dev/disk/by-uuid/de4780fc-0473-4708-81df-299b7383274c"; + fsType = "btrfs"; + }; + + fileSystems."/boot" = + { device = "/dev/disk/by-uuid/be3a1d80-3157-4d7c-86cc-ef01b64eff5e"; + fsType = "ext4"; + }; + + fileSystems."/home" = + { device = "/dev/disk/by-uuid/9db9c8ff-51da-4cbd-9f0a-0cd3333bbaff"; + fsType = "btrfs"; + }; + + swapDevices = [ ]; + + nix = { + buildCores = 2; + maxJobs = 2; + daemonIONiceLevel = 1; + daemonNiceLevel = 1; + }; + + # TODO base + boot.tmpOnTmpfs = true; + + environment.systemPackages = with pkgs; [ + (writeScriptBin "play" '' + #! /bin/sh + set -euf + mpv() { exec ${mpv}/bin/mpv "$@"; } + case $1 in + deepmix) mpv http://deepmix.ru/deepmix128.pls;; + groovesalad) mpv http://somafm.com/play/groovesalad;; + ntslive) mpv http://listen2.ntslive.co.uk/listen.pls;; + *) + echo "$0: bad argument: $*" >&2 + exit 23 + esac + '') + rxvt_unicode.terminfo + tmux + ]; + + networking.hostName = "nomic"; +} diff --git a/1systems/tv/rmdir.nix b/1systems/tv/rmdir.nix new file mode 100644 index 000000000..14817c9bc --- /dev/null +++ b/1systems/tv/rmdir.nix @@ -0,0 +1,77 @@ +{ config, lib, pkgs, ... }: + +with lib; + +{ + imports = [ + ../../2configs/tv/CAC-Developer-1.nix + ../../2configs/tv/CAC-CentOS-7-64bit.nix + ../../2configs/tv/base.nix + ../../2configs/tv/consul-server.nix + ../../2configs/tv/exim-smarthost.nix + ../../2configs/tv/git-public.nix + { + imports = [ ../../3modules/tv/identity.nix ]; + tv.identity = { + enable = true; + self = config.tv.identity.hosts.rmdir; + }; + } + { + imports = [ ../../3modules/tv/iptables.nix ]; + tv.iptables = { + enable = true; + input-internet-accept-new-tcp = [ + "ssh" + "tinc" + "smtp" + ]; + input-retiolum-accept-new-tcp = [ + "http" + ]; + }; + } + { + imports = [ ../../3modules/tv/retiolum.nix ]; + tv.retiolum = { + enable = true; + hosts = ../../Zhosts; + connectTo = [ + "cd" + "mkdir" + "fastpoke" + "pigstarter" + "ire" + ]; + }; + } + ]; + + networking.hostName = "rmdir"; + networking.interfaces.enp2s1.ip4 = [ + { + address = "167.88.44.94"; + prefixLength = 24; + } + ]; + networking.defaultGateway = "167.88.44.1"; + networking.nameservers = [ + "8.8.8.8" + ]; + + environment.systemPackages = with pkgs; [ + git # required for ./deploy, clone_or_update + htop + iftop + iotop + iptables + nethogs + rxvt_unicode.terminfo + tcpdump + ]; + + services.journald.extraConfig = '' + SystemMaxUse=1G + RuntimeMaxUse=128M + ''; +} diff --git a/1systems/tv/wu.nix b/1systems/tv/wu.nix new file mode 100644 index 000000000..2645b8c2c --- /dev/null +++ b/1systems/tv/wu.nix @@ -0,0 +1,388 @@ +{ config, lib, pkgs, ... }: + +with lib; + +{ + imports = [ + ../../2configs/tv/w110er.nix + ../../2configs/tv/base.nix + ../../2configs/tv/consul-client.nix + ../../2configs/tv/exim-retiolum.nix + ../../2configs/tv/git-public.nix + # TODO git-private.nix + ../../2configs/tv/xserver.nix + ../../2configs/tv/synaptics.nix # TODO w110er if xserver is enabled + { + imports = [ ../../3modules/tv/identity.nix ]; + tv.identity = { + enable = true; + self = config.tv.identity.hosts.wu; + }; + } + { + imports = [ ../../3modules/tv/iptables.nix ]; + tv.iptables = { + enable = true; + input-internet-accept-new-tcp = [ + "ssh" + "http" + "tinc" + "smtp" + ]; + }; + } + { + imports = [ ../../3modules/tv/nginx.nix ]; + tv.nginx = { + enable = true; + retiolum-locations = [ + (nameValuePair "~ ^/~(.+?)(/.*)?\$" '' + alias /home/$1/public_html$2; + '') + ]; + }; + } + { + imports = [ ../../3modules/tv/retiolum.nix ]; + tv.retiolum = { + enable = true; + hosts = ../../Zhosts; + connectTo = [ + "gum" + "pigstarter" + ]; + }; + } + { + imports = [ ../../3modules/tv/urlwatch.nix ]; + tv.urlwatch = { + enable = true; + mailto = "tv@wu.retiolum"; # TODO + onCalendar = "*-*-* 05:00:00"; + urls = [ + ## nixpkgs maintenance + + # 2014-07-29 when one of the following urls change + # then we have to update the package + + # ref src/nixpkgs/pkgs/tools/admin/sec/default.nix + http://simple-evcorr.sourceforge.net/ + + # ref src/nixpkgs/pkgs/tools/networking/urlwatch/default.nix + https://thp.io/2008/urlwatch/ + + # 2014-12-20 ref src/nixpkgs/pkgs/tools/networking/tlsdate/default.nix + https://api.github.com/repos/ioerror/tlsdate/tags + + # 2015-02-18 + # ref ~/src/nixpkgs/pkgs/tools/text/qprint/default.nix + http://www.fourmilab.ch/webtools/qprint/ + + # 2014-09-24 ref https://github.com/4z3/xintmap + http://www.mathstat.dal.ca/~selinger/quipper/ + + # 2014-12-12 remove nixopsUnstable when nixops get's bumped to 1.3 + # ref https://github.com/NixOS/nixpkgs/blob/master/pkgs/tools/package-management/nixops/unstable.nix + http://nixos.org/releases/nixops/ + + ## other + + https://nixos.org/channels/nixos-unstable/git-revision + + ## 2014-10-17 + ## TODO update ~/src/login/default.nix + #http://hackage.haskell.org/package/bcrypt + #http://hackage.haskell.org/package/cron + #http://hackage.haskell.org/package/hyphenation + #http://hackage.haskell.org/package/iso8601-time + #http://hackage.haskell.org/package/ixset-typed + #http://hackage.haskell.org/package/system-command + #http://hackage.haskell.org/package/transformers + #http://hackage.haskell.org/package/web-routes-wai + #http://hackage.haskell.org/package/web-page + ]; + }; + } + { + users.extraGroups = { + tv-sub.gid = 1337; + }; + + users.extraUsers = + mapAttrs (name: user: user // { + inherit name; + home = "/home/${name}"; + createHome = true; + useDefaultShell = true; + }) { + ff = { + uid = 13378001; + group = "tv-sub"; + extraGroups = [ + "audio" + "video" + ]; + }; + + cr = { + uid = 13378002; + group = "tv-sub"; + extraGroups = [ + "audio" + "video" + "bumblebee" + ]; + }; + + vimb = { + uid = 13378003; + group = "tv-sub"; + extraGroups = [ + "audio" + "video" + "bumblebee" + ]; + }; + + fa = { + uid = 2300001; + group = "tv-sub"; + }; + + rl = { + uid = 2300002; + group = "tv-sub"; + }; + + tief = { + uid = 2300702; + group = "tv-sub"; + }; + + btc-bitcoind = { + uid = 2301001; + group = "tv-sub"; + }; + + btc-electrum = { + uid = 2301002; + group = "tv-sub"; + }; + + ltc-litecoind = { + uid = 2301101; + group = "tv-sub"; + }; + + eth = { + uid = 2302001; + group = "tv-sub"; + }; + + emse-hsdb = { + uid = 4200101; + group = "tv-sub"; + }; + + wine = { + uid = 13370400; + group = "tv-sub"; + extraGroups = [ + "audio" + "video" + "bumblebee" + ]; + }; + + # dwarffortress + df = { + uid = 13370401; + group = "tv-sub"; + extraGroups = [ + "audio" + "video" + "bumblebee" + ]; + }; + + # XXX visudo: Warning: Runas_Alias `FTL' referenced but not defined + FTL = { + uid = 13370402; + #group = "tv-sub"; + extraGroups = [ + "audio" + "video" + "bumblebee" + ]; + }; + + freeciv = { + uid = 13370403; + group = "tv-sub"; + }; + + xr = { + uid = 13370061; + group = "tv-sub"; + extraGroups = [ + "audio" + "video" + ]; + }; + + "23" = { + uid = 13370023; + group = "tv-sub"; + }; + + electrum = { + uid = 13370102; + group = "tv-sub"; + }; + + Reaktor = { + uid = 4230010; + group = "tv-sub"; + }; + + gitolite = { + uid = 7700; + }; + + skype = { + uid = 6660001; + group = "tv-sub"; + extraGroups = [ + "audio" + ]; + }; + + onion = { + uid = 6660010; + group = "tv-sub"; + }; + + zalora = { + uid = 1000301; + group = "tv-sub"; + extraGroups = [ + "audio" + # TODO remove vboxusers when hardening is active + "vboxusers" + "video" + ]; + }; + }; + + security.sudo.extraConfig = + let + inherit (import ../../4lib/tv { inherit lib pkgs; }) + isSuffixOf; + + hasMaster = { group ? "", ... }: + isSuffixOf "-sub" group; + + masterOf = user : removeSuffix "-sub" user.group; + in + concatStringsSep "\n" + (map (u: "${masterOf u} ALL=(${u.name}) NOPASSWD: ALL") + (filter hasMaster (attrValues config.users.extraUsers))); + } + ]; + + boot.initrd.luks = { + cryptoModules = [ "aes" "sha512" "xts" ]; + devices = [ + { name = "home"; device = "/dev/vg840/enchome"; preLVM = false; } + ]; + }; + + fileSystems = { + "/" = { + device = "/dev/mapper/vg840-wuroot"; + fsType = "btrfs"; + options = "defaults,noatime,ssd,compress=lzo"; + }; + "/home" = { + device = "/dev/mapper/home"; + options = "defaults,noatime,ssd,compress=lzo"; + }; + "/boot" = { + device = "/dev/sda1"; + }; + "/tmp" = { + device = "tmpfs"; + fsType = "tmpfs"; + options = "nosuid,nodev,noatime"; + }; + }; + + nixpkgs.config.firefox.enableAdobeFlash = true; + nixpkgs.config.chromium.enablePepperFlash = true; + + nixpkgs.config.allowUnfree = true; + hardware.bumblebee.enable = true; + hardware.bumblebee.group = "video"; + hardware.enableAllFirmware = true; + hardware.opengl.driSupport32Bit = true; + hardware.pulseaudio.enable = true; + + networking.hostName = "wu"; + + environment.systemPackages = with pkgs; [ + xlibs.fontschumachermisc + slock + ethtool + #firefoxWrapper # with plugins + #chromiumDevWrapper + tinc + iptables + #jack2 + ]; + + security.setuidPrograms = [ + "sendmail" # for cron + "slock" + ]; + + services.printing.enable = true; + + services.journald.extraConfig = '' + SystemMaxUse=1G + RuntimeMaxUse=128M + ''; + + # see tmpfiles.d(5) + systemd.tmpfiles.rules = [ + "d /tmp 1777 root root - -" # does this work with mounted /tmp? + ]; + + virtualisation.libvirtd.enable = true; + + networking.extraHosts = '' + 192.168.1.1 wrt.gg23 wrt + 192.168.1.11 mors.gg23 + 192.168.1.12 uriel.gg23 + 192.168.1.23 raspi.gg23 raspi + 192.168.1.37 wu.gg23 + 192.168.1.110 nomic.gg23 + 192.168.1.124 schnabeldrucker.gg23 schnabeldrucker + ''; + + services.udev.extraRules = '' + SUBSYSTEM=="net", ATTR{address}=="00:90:f5:da:aa:c3", NAME="en0" + SUBSYSTEM=="net", ATTR{address}=="a0:88:b4:1b:ae:6c", NAME="wl0" + + # for jack + KERNEL=="rtc0", GROUP="audio" + KERNEL=="hpet", GROUP="audio" + ''; + + services.bitlbee.enable = true; + services.tor.client.enable = true; + services.tor.enable = true; + services.virtualboxHost.enable = true; + + # TODO w110er if xserver is enabled + services.xserver.vaapiDrivers = [ pkgs.vaapiIntel ]; +} diff --git a/2configs/tv/AO753.nix b/2configs/tv/AO753.nix new file mode 100644 index 000000000..70eae1786 --- /dev/null +++ b/2configs/tv/AO753.nix @@ -0,0 +1,39 @@ +{ config, pkgs, ... }: + +{ + imports = [ + ../../2configs/tv/smartd.nix + ]; + + boot.loader.grub = { + device = "/dev/sda"; + splashImage = null; + }; + + boot.initrd.availableKernelModules = [ + "ahci" + ]; + + boot.kernelModules = [ + "kvm-intel" + "wl" + ]; + + boot.extraModulePackages = [ + config.boot.kernelPackages.broadcom_sta + ]; + + networking.wireless.enable = true; + + services.logind.extraConfig = '' + HandleHibernateKey=ignore + HandleLidSwitch=ignore + HandlePowerKey=ignore + HandleSuspendKey=ignore + ''; + + nixpkgs.config = { + allowUnfree = false; + allowUnfreePredicate = (x: pkgs.lib.hasPrefix "broadcom-sta-" x.name); + }; +} diff --git a/2configs/tv/CAC-CentOS-7-64bit.nix b/2configs/tv/CAC-CentOS-7-64bit.nix new file mode 100644 index 000000000..95c6e815c --- /dev/null +++ b/2configs/tv/CAC-CentOS-7-64bit.nix @@ -0,0 +1,47 @@ +_: + +{ + boot.loader.grub = { + device = "/dev/sda"; + splashImage = null; + }; + + boot.initrd.availableKernelModules = [ + "ata_piix" + "vmw_pvscsi" + ]; + + fileSystems."/" = { + device = "/dev/centos/root"; + fsType = "xfs"; + }; + + fileSystems."/boot" = { + device = "/dev/sda1"; + fsType = "xfs"; + }; + + swapDevices = [ + { device = "/dev/centos/swap"; } + ]; + + users.extraGroups = { + # ● systemd-tmpfiles-setup.service - Create Volatile Files and Directories + # Loaded: loaded (/nix/store/2l33gg7nmncqkpysq9f5fxyhlw6ncm2j-systemd-217/example/systemd/system/systemd-tmpfiles-setup.service) + # Active: failed (Result: exit-code) since Mon 2015-03-16 10:29:18 UTC; 4s ago + # Docs: man:tmpfiles.d(5) + # man:systemd-tmpfiles(8) + # Process: 19272 ExecStart=/nix/store/2l33gg7nmncqkpysq9f5fxyhlw6ncm2j-systemd-217/bin/systemd-tmpfiles --create --remove --boot --exclude-prefix=/dev (code=exited, status=1/FAILURE) + # Main PID: 19272 (code=exited, status=1/FAILURE) + # + # Mar 16 10:29:17 cd systemd-tmpfiles[19272]: [/usr/lib/tmpfiles.d/legacy.conf:26] Unknown group 'lock'. + # Mar 16 10:29:18 cd systemd-tmpfiles[19272]: Two or more conflicting lines for /var/log/journal configured, ignoring. + # Mar 16 10:29:18 cd systemd-tmpfiles[19272]: Two or more conflicting lines for /var/log/journal/7b35116927d74ea58785e00b47ac0f0d configured, ignoring. + # Mar 16 10:29:18 cd systemd[1]: systemd-tmpfiles-setup.service: main process exited, code=exited, status=1/FAILURE + # Mar 16 10:29:18 cd systemd[1]: Failed to start Create Volatile Files and Directories. + # Mar 16 10:29:18 cd systemd[1]: Unit systemd-tmpfiles-setup.service entered failed state. + # Mar 16 10:29:18 cd systemd[1]: systemd-tmpfiles-setup.service failed. + # warning: error(s) occured while switching to the new configuration + lock.gid = 10001; + }; +} diff --git a/2configs/tv/CAC-Developer-1.nix b/2configs/tv/CAC-Developer-1.nix new file mode 100644 index 000000000..37bc32afb --- /dev/null +++ b/2configs/tv/CAC-Developer-1.nix @@ -0,0 +1,6 @@ +_: + +{ + nix.maxJobs = 1; + sound.enable = false; +} diff --git a/2configs/tv/CAC-Developer-2.nix b/2configs/tv/CAC-Developer-2.nix new file mode 100644 index 000000000..fedb808df --- /dev/null +++ b/2configs/tv/CAC-Developer-2.nix @@ -0,0 +1,6 @@ +_: + +{ + nix.maxJobs = 2; + sound.enable = false; +} diff --git a/2configs/tv/base.nix b/2configs/tv/base.nix new file mode 100644 index 000000000..f91e5bc50 --- /dev/null +++ b/2configs/tv/base.nix @@ -0,0 +1,175 @@ +{ config, lib, pkgs, ... }: + +with lib; + +let + # "7.4.335" -> "74" + majmin = x: concatStrings (take 2 (splitString "." x)); +in + +{ + imports = [ + { + users.extraUsers = + mapAttrs (_: h: { hashedPassword = h; }) + (import /root/src/secrets/hashedPasswords.nix); + } + { + users.defaultUserShell = "/run/current-system/sw/bin/bash"; + users.mutableUsers = false; + } + { + users.extraUsers = { + root = { + openssh.authorizedKeys.keys = map readFile [ + ../../Zpubkeys/tv_wu.ssh.pub + ]; + }; + tv = { + uid = 1337; + group = "users"; + home = "/home/tv"; + createHome = true; + useDefaultShell = true; + extraGroups = [ + "audio" + "video" + "wheel" + ]; + openssh.authorizedKeys.keys = map readFile [ + ../../Zpubkeys/tv_wu.ssh.pub + ]; + }; + }; + } + { + security.sudo.extraConfig = '' + Defaults mailto="tv@wu.retiolum" + ''; + time.timeZone = "Europe/Berlin"; + } + { + # TODO check if both are required: + nix.chrootDirs = [ "/etc/protocols" pkgs.iana_etc.outPath ]; + + nix.trustedBinaryCaches = [ + "https://cache.nixos.org" + "http://cache.nixos.org" + "http://hydra.nixos.org" + ]; + + nix.useChroot = true; + } + + { + environment.systemPackages = with pkgs; [ + vim + ]; + + environment.etc."vim/vimrc".text = '' + set nocp + ''; + + environment.etc."vim/vim${majmin pkgs.vim.version}".source = + "${pkgs.vim}/share/vim/vim${majmin pkgs.vim.version}"; + + # multiple-definition-problem when defining environment.variables.EDITOR + environment.extraInit = '' + EDITOR=vim + ''; + + environment.shellAliases = { + # alias cal='cal -m3' + gp = "${pkgs.pari}/bin/gp -q"; + df = "df -h"; + du = "du -h"; + # alias grep='grep --color=auto' + + # TODO alias cannot contain #\' + # "ps?" = "ps ax | head -n 1;ps ax | fgrep -v ' grep --color=auto ' | grep"; + + # alias la='ls -lA' + lAtr = "ls -lAtr"; + # alias ll='ls -l' + ls = "ls -h --color=auto --group-directories-first"; + # alias vim='vim -p' + # alias vi='vim' + # alias view='vim -R' + dmesg = "dmesg -L --reltime"; + }; + + environment.variables.VIM = "/etc/vim"; + + programs.bash = { + interactiveShellInit = '' + HISTCONTROL='erasedups:ignorespace' + HISTSIZE=65536 + HISTFILESIZE=$HISTSIZE + + shopt -s checkhash + shopt -s histappend histreedit histverify + shopt -s no_empty_cmd_completion + complete -d cd + + # TODO source bridge + ''; + promptInit = '' + case $UID in + 0) + PS1='\[\e[1;31m\]\w\[\e[0m\] ' + ;; + 1337) + PS1='\[\e[1;32m\]\w\[\e[0m\] ' + ;; + *) + PS1='\[\e[1;35m\]\u \[\e[1;32m\]\w\[\e[0m\] ' + ;; + esac + if test -n "$SSH_CLIENT"; then + PS1='\[\e[35m\]\h'" $PS1" + fi + if test -n "$SSH_AGENT_PID"; then + PS1="ssh-agent[$SSH_AGENT_PID] $PS1" + fi + ''; + }; + + programs.ssh.startAgent = false; + } + + { + nixpkgs.config.packageOverrides = pkgs: + { + nano = pkgs.runCommand "empty" {} "mkdir -p $out"; + }; + + services.cron.enable = false; + services.nscd.enable = false; + services.ntp.enable = false; + } + + { + boot.kernel.sysctl = { + # Enable IPv6 Privacy Extensions + "net.ipv6.conf.all.use_tempaddr" = 2; + "net.ipv6.conf.default.use_tempaddr" = 2; + }; + } + + { + services.openssh = { + enable = true; + hostKeys = [ + { type = "ed25519"; path = "/etc/ssh/ssh_host_ed25519_key"; } + ]; + }; + } + + { + # TODO: exim + security.setuidPrograms = [ + "sendmail" # for sudo + ]; + } + ]; +} diff --git a/2configs/tv/consul-client.nix b/2configs/tv/consul-client.nix new file mode 100644 index 000000000..0a8bf4d75 --- /dev/null +++ b/2configs/tv/consul-client.nix @@ -0,0 +1,9 @@ +{ pkgs, ... }: + +{ + imports = [ ./consul-server.nix ]; + + tv.consul = { + server = pkgs.lib.mkForce false; + }; +} diff --git a/2configs/tv/consul-server.nix b/2configs/tv/consul-server.nix new file mode 100644 index 000000000..1c8dcb884 --- /dev/null +++ b/2configs/tv/consul-server.nix @@ -0,0 +1,22 @@ +{ config, ... }: + +{ + imports = [ ../../3modules/tv/consul.nix ]; + tv.consul = rec { + enable = true; + + inherit (config.tv.identity) self; + inherit (self) dc; + + server = true; + + hosts = with config.tv.identity.hosts; [ + # TODO get this list automatically from each host where tv.consul.enable is true + cd + mkdir + nomic + rmdir + #wu + ]; + }; +} diff --git a/2configs/tv/cryptoroot.nix b/2configs/tv/cryptoroot.nix new file mode 100644 index 000000000..04618ac4a --- /dev/null +++ b/2configs/tv/cryptoroot.nix @@ -0,0 +1,4 @@ +{ ... }: + +{ +} diff --git a/2configs/tv/exim-retiolum.nix b/2configs/tv/exim-retiolum.nix new file mode 100644 index 000000000..efab5cf32 --- /dev/null +++ b/2configs/tv/exim-retiolum.nix @@ -0,0 +1,126 @@ +{ config, pkgs, ... }: + +{ + services.exim = + # This configuration makes only sense for retiolum-enabled hosts. + # TODO modular configuration + assert config.tv.retiolum.enable; + let + # TODO get the hostname from config.tv.retiolum. + retiolumHostname = "${config.networking.hostName}.retiolum"; + in + { enable = true; + config = '' + primary_hostname = ${retiolumHostname} + domainlist local_domains = @ : localhost + domainlist relay_to_domains = *.retiolum + hostlist relay_from_hosts = <; 127.0.0.1 ; ::1 + + acl_smtp_rcpt = acl_check_rcpt + acl_smtp_data = acl_check_data + + host_lookup = * + rfc1413_hosts = * + rfc1413_query_timeout = 5s + + log_file_path = syslog + syslog_timestamp = false + syslog_duplication = false + + begin acl + + acl_check_rcpt: + accept hosts = : + control = dkim_disable_verify + + deny message = Restricted characters in address + domains = +local_domains + local_parts = ^[.] : ^.*[@%!/|] + + deny message = Restricted characters in address + domains = !+local_domains + local_parts = ^[./|] : ^.*[@%!] : ^.*/\\.\\./ + + accept local_parts = postmaster + domains = +local_domains + + #accept + # hosts = *.retiolum + # domains = *.retiolum + # control = dkim_disable_verify + + #require verify = sender + + accept hosts = +relay_from_hosts + control = submission + control = dkim_disable_verify + + accept authenticated = * + control = submission + control = dkim_disable_verify + + require message = relay not permitted + domains = +local_domains : +relay_to_domains + + require verify = recipient + + accept + + + acl_check_data: + accept + + + begin routers + + retiolum: + driver = manualroute + domains = ! ${retiolumHostname} : *.retiolum + transport = remote_smtp + route_list = ^.* $0 byname + no_more + + nonlocal: + debug_print = "R: nonlocal for $local_part@$domain" + driver = redirect + domains = ! +local_domains + allow_fail + data = :fail: Mailing to remote domains not supported + no_more + + local_user: + # debug_print = "R: local_user for $local_part@$domain" + driver = accept + check_local_user + # local_part_suffix = +* : -* + # local_part_suffix_optional + transport = home_maildir + cannot_route_message = Unknown user + + + begin transports + + remote_smtp: + driver = smtp + + home_maildir: + driver = appendfile + maildir_format + directory = $home/Maildir + directory_mode = 0700 + delivery_date_add + envelope_to_add + return_path_add + # group = mail + # mode = 0660 + + begin retry + *.retiolum * F,42d,1m + * * F,2h,15m; G,16h,1h,1.5; F,4d,6h + + begin rewrite + + begin authenticators + ''; + }; +} diff --git a/2configs/tv/exim-smarthost.nix b/2configs/tv/exim-smarthost.nix new file mode 100644 index 000000000..a4c47b399 --- /dev/null +++ b/2configs/tv/exim-smarthost.nix @@ -0,0 +1,474 @@ +{ config, pkgs, ... }: + +let + inherit (builtins) toFile; + inherit (pkgs.lib.attrsets) mapAttrs; + inherit (pkgs.lib.strings) concatMapStringsSep; +in + +{ + services.exim = + let + retiolumHostname = "${config.networking.hostName}.retiolum"; + + internet-aliases = [ + { from = "tomislav@viljetic.de"; to = "tv@wu.retiolum"; } + + # (mindestens) lisp-stammtisch und elli haben die: + { from = "tv@viljetic.de"; to = "tv@wu.retiolum"; } + + { from = "tv@destroy.dyn.shackspace.de"; to = "tv@wu.retiolum"; } + + { from = "mirko@viljetic.de"; to = "mv@cd.retiolum"; } + + # TODO killme (wo wird die benutzt?) + { from = "tv@cd.retiolum"; to = "tv@wu.retiolum"; } + + { from = "postmaster@krebsco.de"; to = "tv@wu.retiolum"; } + ]; + + system-aliases = [ + { from = "mailer-daemon"; to = "postmaster"; } + { from = "postmaster"; to = "root"; } + { from = "nobody"; to = "root"; } + { from = "hostmaster"; to = "root"; } + { from = "usenet"; to = "root"; } + { from = "news"; to = "root"; } + { from = "webmaster"; to = "root"; } + { from = "www"; to = "root"; } + { from = "ftp"; to = "root"; } + { from = "abuse"; to = "root"; } + { from = "noc"; to = "root"; } + { from = "security"; to = "root"; } + { from = "root"; to = "tv"; } + { from = "mirko"; to = "mv"; } + ]; + + to-lsearch = concatMapStringsSep "\n" ({ from, to }: "${from}: ${to}"); + lsearch = + mapAttrs (name: set: toFile name (to-lsearch set)) { + inherit internet-aliases; + inherit system-aliases; + }; + in + { + enable = true; + config = + '' + primary_hostname = ${retiolumHostname} + + # HOST_REDIR contains the real destinations for "local_domains". + #HOST_REDIR = /etc/exim4/host_redirect + + + # Domains not listed in local_domains need to be deliverable remotely. + # XXX We abuse local_domains to mean "domains, we're the gateway for". + domainlist local_domains = @ : localhost + #: viljetic.de : SHACK_REDIR_HOSTNAME + domainlist relay_to_domains = + hostlist relay_from_hosts = <; 127.0.0.1 ; ::1 ; 10.243.13.37 + + acl_smtp_rcpt = acl_check_rcpt + acl_smtp_data = acl_check_data + + # av_scanner = clamd:/tmp/clamd + # spamd_address = 127.0.0.1 783 + + # tls_advertise_hosts = * + # tls_certificate = /etc/ssl/exim.crt + # tls_privatekey = /etc/ssl/exim.pem + # (debian) tls_verify_certificates (to check client certs) + + # daemon_smtp_ports = 25 : 465 : 587 + # tls_on_connect_ports = 465 + + # qualify_domain defaults to primary_hostname + # qualify_recipient defaults to qualify_domain + + # allow_domain_literals + + never_users = root + + host_lookup = * + + # ident callbacks for all incoming SMTP calls + rfc1413_hosts = * + rfc1413_query_timeout = 5s + + # sender_unqualified_hosts = + # recipient_unqualified_hosts = + + # percent_hack_domains = + + # arch & debian + #ignore_bounce_errors_after = 2d + #timeout_frozen_after = 7d + # debian + #smtp_banner = $smtp_active_hostname ESMTP Exim $version_number $tod_full + #freeze_tell = postmaster + #trusted_users = uucp + # arch + #split_spool_directory = true + + log_selector = -queue_run +address_rewrite +all_parents +queue_time + log_file_path = syslog + syslog_timestamp = false + syslog_duplication = false + + begin acl + + acl_check_rcpt: + # Accept if the source is local SMTP (i.e. not over TCP/IP). + # We do this by testing for an empty sending host field. + accept hosts = : + # arch & debian: + control = dkim_disable_verify + + deny message = Restricted characters in address + domains = +local_domains + local_parts = ^[.] : ^.*[@%!/|] + + deny message = Restricted characters in address + domains = !+local_domains + local_parts = ^[./|] : ^.*[@%!] : ^.*/\\.\\./ + + accept local_parts = postmaster + domains = +local_domains + + ## feature RETIOLUM_MAIL + #accept + # hosts = *.retiolum + # domains = *.retiolum + # control = dkim_disable_verify + + #require verify = sender + + accept hosts = +relay_from_hosts + control = submission + # debian: control = submission/sender_retain + # arch & debian: + control = dkim_disable_verify + + accept authenticated = * + control = submission + control = dkim_disable_verify + + accept message = relay not permitted 2 + recipients = lsearch;${lsearch.internet-aliases} + + require message = relay not permitted + domains = +local_domains : +relay_to_domains + + require + message = unknown user + verify = recipient/callout + + # deny message = rejected because $sender_host_address is in a black list at $dnslist_domain\n$dnslist_text + # dnslists = black.list.example + # + # warn dnslists = black.list.example + # add_header = X-Warning: $sender_host_address is in a black list at $dnslist_domain + # log_message = found in $dnslist_domain + + # Client SMTP Authorization (csa) checks on the sending host. + # Such checks do DNS lookups for special SRV records. + # require verify = csa + + accept + + + acl_check_data: + # see av_scanner + #deny malware = * + # message = This message contains a virus ($malware_name). + + # Add headers to a message if it is judged to be spam. Before enabling this, + # you must install SpamAssassin. You may also need to set the spamd_address + # option above. + # + # warn spam = nobody + # add_header = X-Spam_score: $spam_score\n\ + # X-Spam_score_int: $spam_score_int\n\ + # X-Spam_bar: $spam_bar\n\ + # X-Spam_report: $spam_report + + # feature HELO_REWRITE + # XXX note that the public ip (162.219.5.183) resolves to viljetic.de + warn + sender_domains = viljetic.de : shackspace.de + set acl_m_special_dom = $sender_address_domain + + accept + + + begin routers + + # feature RETIOLUM_MAIL + retiolum: + debug_print = "R: retiolum for $local_part@$domain" + driver = manualroute + domains = ! ${retiolumHostname} : *.retiolum + transport = retiolum_smtp + route_list = ^.* $0 byname + no_more + + internet_aliases: + debug_print = "R: internet_aliases for $local_part@$domain" + driver = redirect + data = ''${lookup{$local_part@$domain}lsearch{${lsearch.internet-aliases}}} + + dnslookup: + debug_print = "R: dnslookup for $local_part@$domain" + driver = dnslookup + domains = ! +local_domains + transport = remote_smtp + ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8 + # if ipv6-enabled then instead use: + # ignore_target_hosts = <; 0.0.0.0 ; 127.0.0.0/8 ; ::1 + + # (debian) same_domain_copy_routing = yes + # (debian) ignore private rfc1918 and APIPA addresses + # (debian) ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8 : 192.168.0.0/16 :\ + # 172.16.0.0/12 : 10.0.0.0/8 : 169.254.0.0/16 :\ + # 255.255.255.255 + + # Fail and bounce if the router does not find the domain in the DNS. + # I.e. no more routers are tried. + # There are a few cases where a dnslookup router will decline to accept an + # address; if such a router is expected to handle "all remaining non-local + # domains", then it is important to set no_more. + no_more + + # XXX this is only used because these "well known aliases" goto tv@cd.retiolum + # TODO bounce everything, there is no @cd.retiolum + system_aliases: + debug_print = "R: system_aliases for $local_part@$domain" + driver = redirect + data = ''${lookup{$local_part}lsearch{${lsearch.system-aliases}}} + + # TODO this is only b/c mv here... send mv's mails somewhere else... + local_user: + debug_print = "R: local_user for $local_part@$domain" + driver = accept + check_local_user + # local_part_suffix = +* : -* + # local_part_suffix_optional + transport = home_maildir + cannot_route_message = Unknown user + + begin transports + + retiolum_smtp: + driver = smtp + retry_include_ip_address = false + # serialize_hosts = TODO-all-slow-hosts + + remote_smtp: + driver = smtp + # debian has also stuff for tls, headers_rewrite and more here + + # feature HELO_REWRITE + # XXX note that the public ip (162.219.5.183) resolves to viljetic.de + helo_data = ''${if eq{$acl_m_special_dom}{} \ + {$primary_hostname} \ + {$acl_m_special_dom} } + + home_maildir: + driver = appendfile + maildir_format + maildir_use_size_file + directory = $home/Mail + directory_mode = 0700 + delivery_date_add + envelope_to_add + return_path_add + + begin retry + *.retiolum * F,42d,1m + * * F,2h,15m; G,16h,1h,1.5; F,4d,6h + + begin rewrite + begin authenticators + ''; + + + # group = mail + # mode = 0660 + + + #address_pipe: + # driver = pipe + # return_output + # + #address_file: + # driver = appendfile + # delivery_date_add + # envelope_to_add + # return_path_add + # + #address_reply: + # driver = autoreply + + + #maildrop_pipe: + # debug_print = "T: maildrop_pipe for $local_part@$domain" + # driver = pipe + # path = "/bin:/usr/bin:/usr/local/bin" + # command = "/usr/bin/maildrop" + # return_path_add + # delivery_date_add + # envelope_to_add + + + + + + ##begin retry + # Address or Domain Error Retries + + # Our host_redirect destinations might be offline a lot. + # TODO define fallback destinations(?) + #lsearch;${lsearch.internet-aliases} * F,42d,1m + + + ## begin rewrite + + # just in case (shackspace.de should already do this) + #tv@shackspace.de tv@SHACK_REDIR_HOSTNAME T + + + ## begin authenticators + #PLAIN: + # driver = plaintext + # server_set_id = $auth2 + # server_prompts = : + # server_condition = Authentication is not yet configured + # server_advertise_condition = ''${if def:tls_in_cipher } + + #LOGIN: + # driver = plaintext + # server_set_id = $auth1 + # server_prompts = <| Username: | Password: + # server_condition = Authentication is not yet configured + # server_advertise_condition = ''${if def:tls_in_cipher } + + + + }; + +} + +# config = '' +# primary_hostname = ${retiolumHostname} +# domainlist local_domains = @ : localhost +# domainlist relay_to_domains = *.retiolum +# hostlist relay_from_hosts = <; 127.0.0.1 ; ::1 +# +# acl_smtp_rcpt = acl_check_rcpt +# acl_smtp_data = acl_check_data +# +# host_lookup = * +# rfc1413_hosts = * +# rfc1413_query_timeout = 5s +# +# log_file_path = syslog +# syslog_timestamp = false +# syslog_duplication = false +# +# begin acl +# +# acl_check_rcpt: +# accept hosts = : +# control = dkim_disable_verify +# +# deny message = Restricted characters in address +# domains = +local_domains +# local_parts = ^[.] : ^.*[@%!/|] +# +# deny message = Restricted characters in address +# domains = !+local_domains +# local_parts = ^[./|] : ^.*[@%!] : ^.*/\\.\\./ +# +# accept local_parts = postmaster +# domains = +local_domains +# +# #accept +# # hosts = *.retiolum +# # domains = *.retiolum +# # control = dkim_disable_verify +# +# #require verify = sender +# +# accept hosts = +relay_from_hosts +# control = submission +# control = dkim_disable_verify +# +# accept authenticated = * +# control = submission +# control = dkim_disable_verify +# +# require message = relay not permitted +# domains = +local_domains : +relay_to_domains +# +# require verify = recipient +# +# accept +# +# +# acl_check_data: +# accept +# +# +# begin routers +# +# retiolum: +# driver = manualroute +# domains = ! ${retiolumHostname} : *.retiolum +# transport = remote_smtp +# route_list = ^.* $0 byname +# no_more +# +# nonlocal: +# debug_print = "R: nonlocal for $local_part@$domain" +# driver = redirect +# domains = ! +local_domains +# allow_fail +# data = :fail: Mailing to remote domains not supported +# no_more +# +# local_user: +# # debug_print = "R: local_user for $local_part@$domain" +# driver = accept +# check_local_user +# # local_part_suffix = +* : -* +# # local_part_suffix_optional +# transport = home_maildir +# cannot_route_message = Unknown user +# +# +# begin transports +# +# remote_smtp: +# driver = smtp +# +# home_maildir: +# driver = appendfile +# maildir_format +# directory = $home/Maildir +# directory_mode = 0700 +# delivery_date_add +# envelope_to_add +# return_path_add +# # group = mail +# # mode = 0660 +# +# begin retry +# *.retiolum * F,42d,1m +# * * F,2h,15m; G,16h,1h,1.5; F,4d,6h +# +# begin rewrite +# +# begin authenticators +# ''; +# }; +#} diff --git a/2configs/tv/git-public.nix b/2configs/tv/git-public.nix new file mode 100644 index 000000000..0ca04d263 --- /dev/null +++ b/2configs/tv/git-public.nix @@ -0,0 +1,83 @@ +{ config, lib, pkgs, ... }: + +with lib; +let + inherit (builtins) map readFile; + inherit (lib) concatMap listToAttrs; + # TODO lib should already include our stuff + inherit (import ../../4lib/tv { inherit lib pkgs; }) addNames git; + + public-git-repos = [ + (public "cgserver") + (public "crude-mail-setup") + (public "dot-xmonad") + (public "hack") + (public "load-env") + (public "make-snapshot") + (public "mime") + (public "much") + (public "nixos-infest") + (public "nixpkgs") + (public "painload") + (public "regfish") + (public' { + name = "shitment"; + desc = "turn all the computers into one computer!"; + }) + (public "wai-middleware-time") + (public "web-routes-wai-custom") + ]; + + users = addNames { + tv = { pubkey = readFile ../../Zpubkeys/tv_wu.ssh.pub; }; + lass = { pubkey = readFile ../../Zpubkeys/lass.ssh.pub; }; + uriel = { pubkey = readFile ../../Zpubkeys/uriel.ssh.pub; }; + makefu = { pubkey = readFile ../../Zpubkeys/makefu.ssh.pub; }; + }; + + repos = listToAttrs (map ({ repo, ... }: { name = repo.name; value = repo; }) public-git-repos); + + rules = concatMap ({ rules, ... }: rules) public-git-repos; + + public' = { name, desc }: + let + x = public name; + in + x // { repo = x.repo // { inherit desc; }; }; + + public = repo-name: + rec { + repo = { + name = repo-name; + hooks = { + post-receive = git.irc-announce { + nick = config.networking.hostName; # TODO make this the default + channel = "#retiolum"; + server = "ire.retiolum"; + }; + }; + public = true; + }; + rules = with git; with users; [ + { user = tv; + repo = [ repo ]; + perm = push "refs/*" [ non-fast-forward create delete merge ]; + } + { user = [ lass makefu uriel ]; + repo = [ repo ]; + perm = fetch; + } + ]; + }; + +in + +{ + imports = [ + ../../3modules/tv/git.nix + ]; + tv.git = { + enable = true; + inherit repos rules users; + }; +} diff --git a/2configs/tv/smartd.nix b/2configs/tv/smartd.nix new file mode 100644 index 000000000..2e9d955d1 --- /dev/null +++ b/2configs/tv/smartd.nix @@ -0,0 +1,17 @@ +{ config, pkgs, ... }: + +{ + services.smartd = { + enable = true; + devices = [ + { + device = "DEVICESCAN"; + options = toString [ + "-a" + "-m tv@wu.retiolum" + "-s (O/../.././09|S/../.././04|L/../../6/05)" + ]; + } + ]; + }; +} diff --git a/2configs/tv/synaptics.nix b/2configs/tv/synaptics.nix new file mode 100644 index 000000000..c47cb9deb --- /dev/null +++ b/2configs/tv/synaptics.nix @@ -0,0 +1,14 @@ +{ config, pkgs, ... }: + +{ + # TODO this is host specific + services.xserver.synaptics = { + enable = true; + twoFingerScroll = true; + accelFactor = "0.035"; + additionalOptions = '' + Option "FingerHigh" "60" + Option "FingerLow" "60" + ''; + }; +} diff --git a/2configs/tv/urxvt.nix b/2configs/tv/urxvt.nix new file mode 100644 index 000000000..89bb421aa --- /dev/null +++ b/2configs/tv/urxvt.nix @@ -0,0 +1,24 @@ +{ pkgs, ... }: + +with builtins; + +let + users = [ "tv" ]; + urxvt = pkgs.rxvt_unicode; + mkService = user: { + description = "urxvt terminal daemon"; + wantedBy = [ "multi-user.target" ]; + restartIfChanged = false; + serviceConfig = { + Restart = "always"; + User = user; + ExecStart = "${urxvt}/bin/urxvtd"; + }; + }; + +in + +{ + environment.systemPackages = [ urxvt ]; + systemd.services = listToAttrs (map (u: { name = "${u}-urxvtd"; value = mkService u; }) users); +} diff --git a/2configs/tv/w110er.nix b/2configs/tv/w110er.nix new file mode 100644 index 000000000..7ef0e6e9d --- /dev/null +++ b/2configs/tv/w110er.nix @@ -0,0 +1,42 @@ +{ pkgs, ... }: + +{ + imports = [ + ../../2configs/tv/smartd.nix + ]; + + boot.extraModprobeConfig = '' + options kvm_intel nested=1 + ''; + + boot.initrd.availableKernelModules = [ "ahci" ]; + boot.kernelModules = [ "kvm-intel" ]; + + boot.loader.gummiboot.enable = true; + boot.loader.efi.canTouchEfiVariables = true; + + networking.wireless.enable = true; + + nix = { + buildCores = 4; + maxJobs = 4; + daemonIONiceLevel = 1; + daemonNiceLevel = 1; + }; + + services.logind.extraConfig = '' + HandleHibernateKey=ignore + HandleLidSwitch=ignore + HandlePowerKey=ignore + HandleSuspendKey=ignore + ''; + + system.activationScripts.powertopTunables = '' + echo 1 > /sys/module/snd_hda_intel/parameters/power_save + echo 1500 > /proc/sys/vm/dirty_writeback_centisecs + (cd /sys/bus/pci/devices + for i in *; do + echo auto > $i/power/control # defaults to 'on' + done) + ''; +} diff --git a/2configs/tv/xserver.nix b/2configs/tv/xserver.nix new file mode 100644 index 000000000..4a3de482a --- /dev/null +++ b/2configs/tv/xserver.nix @@ -0,0 +1,41 @@ +{ config, pkgs, ... }: + +{ + imports = [ + ../../2configs/tv/urxvt.nix # TODO via xserver + ]; + + services.xserver.enable = true; + + + #fonts.enableFontConfig = true; + #fonts.enableFontDir = true; + fonts.fonts = [ + pkgs.xlibs.fontschumachermisc + ]; + #services.xfs.enable = true; + #services.xserver.useXFS = "unix/:7100"; + + services.xserver.displayManager.desktopManagerHandlesLidAndPower = true; + + #services.xserver.display = 11; + #services.xserver.tty = 11; + # services.xserver.layout = "us"; + # services.xserver.xkbOptions = "eurosign:e"; + + #services.xserver.multitouch.enable = true; + + services.xserver.windowManager.xmonad.extraPackages = hspkgs: with hspkgs; [ + X11-xshape + ]; + services.xserver.windowManager.xmonad.enable = true; + services.xserver.windowManager.xmonad.enableContribAndExtras = true; + services.xserver.windowManager.default = "xmonad"; + services.xserver.desktopManager.default = "none"; + services.xserver.desktopManager.xterm.enable = false; + + services.xserver.displayManager.slim.enable = true; + #services.xserver.displayManager.auto.enable = true; + #services.xserver.displayManager.auto.user = "tv"; + #services.xserver.displayManager.job.logsXsession = true; +} diff --git a/3modules/tv/consul.nix b/3modules/tv/consul.nix new file mode 100644 index 000000000..dc9a180dd --- /dev/null +++ b/3modules/tv/consul.nix @@ -0,0 +1,122 @@ +{ config, lib, pkgs, ... }: + +# if quorum gets lost, then start any node with a config that doesn't contain bootstrap_expect +# but -bootstrap +# TODO consul-bootstrap HOST that actually does is +# TODO tools to inspect state of a cluster in outage state + +with builtins; +with lib; +let + cfg = config.tv.consul; + + out = { + imports = [ ../../3modules/tv/iptables.nix ]; + options.tv.consul = api; + config = mkIf cfg.enable (mkMerge [ + imp + { tv.iptables.input-retiolum-accept-new-tcp = [ "8300" "8301" ]; } + # TODO udp for 8301 + ]); + }; + + api = { + # TODO inherit (lib) api.options.enable; oder so + enable = mkOption { + type = types.bool; + default = false; + description = "enable tv.consul"; + }; + dc = mkOption { + type = types.unspecified; + }; + hosts = mkOption { + type = with types; listOf unspecified; + }; + encrypt-file = mkOption { + type = types.str; # TODO path (but not just into store) + default = "/root/src/secrets/consul-encrypt.json"; + }; + data-dir = mkOption { + type = types.str; # TODO path (but not just into store) + default = "/var/lib/consul"; + }; + self = mkOption { + type = types.unspecified; + }; + server = mkOption { + type = types.bool; + default = false; + }; + GOMAXPROCS = mkOption { + type = types.int; + default = cfg.self.cores; + }; + }; + + consul-config = { + datacenter = cfg.dc; + data_dir = cfg.data-dir; + log_level = "INFO"; + #node_name = + server = cfg.server; + bind_addr = cfg.self.addr; # TODO cfg.addr + enable_syslog = true; + retry_join = map (getAttr "addr") (filter (host: host.fqdn != cfg.self.fqdn) cfg.hosts); + leave_on_terminate = true; + } // optionalAttrs cfg.server { + bootstrap_expect = length cfg.hosts; + leave_on_terminate = false; + }; + + imp = { + environment.systemPackages = with pkgs; [ + consul + ]; + + systemd.services.consul = { + after = [ "network.target" ]; + wantedBy = [ "multi-user.target" ]; + path = with pkgs; [ + consul + ]; + environment = { + GOMAXPROCS = toString cfg.GOMAXPROCS; + }; + serviceConfig = { + PermissionsStartOnly = "true"; + SyslogIdentifier = "consul"; + User = user.name; + PrivateTmp = "true"; + Restart = "always"; + ExecStartPre = pkgs.writeScript "consul-init" '' + #! /bin/sh + mkdir -p ${cfg.data-dir} + chown consul: ${cfg.data-dir} + install -o ${user.name} -m 0400 ${cfg.encrypt-file} /tmp/encrypt.json + ''; + ExecStart = pkgs.writeScript "consul-service" '' + #! /bin/sh + set -euf + exec >/dev/null + exec consul agent \ + -config-file=${toFile "consul.json" (toJSON consul-config)} \ + -config-file=/tmp/encrypt.json + ''; + #-node=${cfg.self.fqdn} \ + #ExecStart = "${tinc}/sbin/tincd -c ${confDir} -d 0 -U ${user} -D"; + }; + }; + + users.extraUsers = singleton { + inherit (user) name uid; + }; + }; + + user = { + name = "consul"; + uid = 2983239726; # genid consul + }; + +in +out diff --git a/3modules/tv/ejabberd.nix b/3modules/tv/ejabberd.nix new file mode 100644 index 000000000..ffcc5cfb4 --- /dev/null +++ b/3modules/tv/ejabberd.nix @@ -0,0 +1,171 @@ +{ config, lib, pkgs, ... }: + +with builtins; +with lib; +let + cfg = config.tv.ejabberd; + + out = { + options.tv.ejabberd = api; + config = mkIf cfg.enable imp; + }; + + api = { + enable = mkOption { + type = types.bool; + default = false; + }; + + certFile = mkOption { + type = types.str; + default = "/root/src/secrets/ejabberd.pem"; + }; + + hosts = mkOption { + type = with types; listOf str; + }; + }; + + imp = { + environment.systemPackages = [ my-ejabberdctl ]; + + systemd.services.ejabberd = { + wantedBy = [ "multi-user.target" ]; + after = [ "network.target" ]; + serviceConfig = { + Type = "oneshot"; + RemainAfterExit = "yes"; + PermissionsStartOnly = "true"; + SyslogIdentifier = "ejabberd"; + User = user.name; + PrivateTmp = "true"; + ExecStartPre = pkgs.writeScript "ejabberd-start" '' + #! /bin/sh + install -o ${user.name} -m 0400 ${cfg.certFile} /tmp/certfile.pem + ''; + ExecStart = pkgs.writeScript "ejabberd-service" '' + #! /bin/sh + ${my-ejabberdctl}/bin/ejabberdctl start + ''; + }; + }; + + users.extraUsers = singleton { + inherit (user) name uid; + home = "/var/ejabberd"; + createHome = true; + }; + }; + + user = { + name = "ejabberd"; + uid = 405222; + # TODO uid = 3483034447; # genid ejabberd + }; + + my-ejabberdctl = pkgs.writeScriptBin "ejabberdctl" '' + #! /bin/sh + set -euf + exec env \ + SPOOLDIR=/var/ejabberd \ + EJABBERD_CONFIG_PATH=${config-file} \ + ${pkgs.ejabberd}/bin/ejabberdctl \ + --logs /var/ejabberd \ + "$@" + ''; + + config-file = pkgs.writeText "ejabberd.cfg" '' + {loglevel, 3}. + {hosts, ${toErlang cfg.hosts}}. + {listen, + [ + {5222, ejabberd_c2s, [ + starttls, + {certfile, "/tmp/certfile.pem"}, + {access, c2s}, + {shaper, c2s_shaper}, + {max_stanza_size, 65536} + ]}, + {5269, ejabberd_s2s_in, [ + {shaper, s2s_shaper}, + {max_stanza_size, 131072} + ]}, + {5280, ejabberd_http, [ + captcha, + http_bind, + http_poll, + web_admin + ]} + ]}. + {s2s_use_starttls, required}. + {s2s_certfile, "/tmp/certfile.pem"}. + {auth_method, internal}. + {shaper, normal, {maxrate, 1000}}. + {shaper, fast, {maxrate, 50000}}. + {max_fsm_queue, 1000}. + {acl, local, {user_regexp, ""}}. + {access, max_user_sessions, [{10, all}]}. + {access, max_user_offline_messages, [{5000, admin}, {100, all}]}. + {access, local, [{allow, local}]}. + {access, c2s, [{deny, blocked}, + {allow, all}]}. + {access, c2s_shaper, [{none, admin}, + {normal, all}]}. + {access, s2s_shaper, [{fast, all}]}. + {access, announce, [{allow, admin}]}. + {access, configure, [{allow, admin}]}. + {access, muc_admin, [{allow, admin}]}. + {access, muc_create, [{allow, local}]}. + {access, muc, [{allow, all}]}. + {access, pubsub_createnode, [{allow, local}]}. + {access, register, [{allow, all}]}. + {language, "en"}. + {modules, + [ + {mod_adhoc, []}, + {mod_announce, [{access, announce}]}, + {mod_blocking,[]}, + {mod_caps, []}, + {mod_configure,[]}, + {mod_disco, []}, + {mod_irc, []}, + {mod_http_bind, []}, + {mod_last, []}, + {mod_muc, [ + {access, muc}, + {access_create, muc_create}, + {access_persistent, muc_create}, + {access_admin, muc_admin} + ]}, + {mod_offline, [{access_max_user_messages, max_user_offline_messages}]}, + {mod_ping, []}, + {mod_privacy, []}, + {mod_private, []}, + {mod_pubsub, [ + {access_createnode, pubsub_createnode}, + {ignore_pep_from_offline, true}, + {last_item_cache, false}, + {plugins, ["flat", "hometree", "pep"]} + ]}, + {mod_register, [ + {welcome_message, {"Welcome!", + "Hi.\nWelcome to this XMPP server."}}, + {ip_access, [{allow, "127.0.0.0/8"}, + {deny, "0.0.0.0/0"}]}, + {access, register} + ]}, + {mod_roster, []}, + {mod_shared_roster,[]}, + {mod_stats, []}, + {mod_time, []}, + {mod_vcard, []}, + {mod_version, []} + ]}. + ''; + + + # XXX this is a placeholder that happens to work the default strings. + toErlang = builtins.toJSON; + +in +out diff --git a/3modules/tv/git.nix b/3modules/tv/git.nix new file mode 100644 index 000000000..4ab0df257 --- /dev/null +++ b/3modules/tv/git.nix @@ -0,0 +1,406 @@ +arg@{ config, pkgs, lib, ... }: + +with builtins; +with lib; +let + cfg = config.tv.git; + + out = { + imports = [ + ../../3modules/tv/nginx.nix + ]; + options.tv.git = api; + config = mkIf cfg.enable (mkMerge [ + imp + ]); + }; + + api = { + enable = mkOption { + type = types.bool; + default = false; + description = "Enable Git repository hosting."; + }; + cgit = mkOption { + type = types.bool; + default = true; + description = "Enable cgit."; # TODO better desc; talk about nginx + }; + dataDir = mkOption { + type = types.str; + default = "/var/lib/git"; + description = "Directory used to store repositories."; + }; + etcDir = mkOption { + type = types.str; + default = "/etc/git"; + }; + rules = mkOption { + type = types.unspecified; + }; + repos = mkOption { + type = types.attrsOf (types.submodule ({ + options = { + desc = mkOption { + type = types.nullOr types.str; + default = null; + description = '' + Repository description. + ''; + }; + section = mkOption { + type = types.nullOr types.str; + default = null; + description = '' + Repository section. + ''; + }; + name = mkOption { + type = types.str; + description = '' + Repository name. + ''; + }; + hooks = mkOption { + type = types.attrsOf types.str; + description = '' + Repository-specific hooks. + ''; + }; + public = mkOption { + type = types.bool; + default = false; + description = '' + Allow everybody to read the repository via HTTP if cgit enabled. + ''; + # TODO allow every configured user to fetch the repository via SSH. + }; + }; + })); + + default = {}; + + example = literalExample '' + { + testing = { + name = "testing"; + hooks.post-update = ''' + #! /bin/sh + set -euf + echo post-update hook: $* >&2 + '''; + }; + testing2 = { name = "testing2"; }; + } + ''; + + description = '' + Repositories. + ''; + }; + users = mkOption { + type = types.unspecified; + }; + }; + + imp = { + system.activationScripts.git-init = "${init-script}"; + + # TODO maybe put all scripts here and then use PATH? + environment.etc."${etc-base}".source = + scriptFarm "git-ssh-authorizers" { + authorize-command = makeAuthorizeScript (map ({ repo, user, perm }: [ + (map getName (ensureList user)) + (map getName (ensureList repo)) + (map getName perm.allow-commands) + ]) cfg.rules); + + authorize-push = makeAuthorizeScript (map ({ repo, user, perm }: [ + (map getName (ensureList user)) + (map getName (ensureList repo)) + (ensureList perm.allow-receive-ref) + (map getName perm.allow-receive-modes) + ]) (filter (x: hasAttr "allow-receive-ref" x.perm) cfg.rules)); + }; + + users.extraUsers = singleton { + description = "Git repository hosting user"; + name = "git"; + shell = "/bin/sh"; + openssh.authorizedKeys.keys = + mapAttrsToList (_: makeAuthorizedKey git-ssh-command) cfg.users; + uid = 112606723; # genid git + }; + }; + + + ensureList = x: + if typeOf x == "list" then x else [x]; + + getName = x: x.name; + + isPublicRepo = getAttr "public"; # TODO this is also in ./cgit.nix + + makeAuthorizedKey = git-ssh-command: user@{ name, pubkey }: + # TODO assert name + # TODO assert pubkey + let + options = concatStringsSep "," [ + ''command="exec ${git-ssh-command} ${name}"'' + "no-agent-forwarding" + "no-port-forwarding" + "no-pty" + "no-X11-forwarding" + ]; + in + "${options} ${pubkey}"; + + # [case-pattern] -> shell-script + # Create a shell script that succeeds (exit 0) when all its arguments + # match the case patterns (in the given order). + makeAuthorizeScript = + let + # TODO escape + to-pattern = x: concatStringsSep "|" (ensureList x); + go = i: ps: + if ps == [] + then "exit 0" + else '' + case ''$${toString i} in ${to-pattern (head ps)}) + ${go (i + 1) (tail ps)} + esac''; + in + patterns: '' + #! /bin/sh + set -euf + ${concatStringsSep "\n" (map (go 1) patterns)} + exit -1 + ''; + + reponames = rules: sort lessThan (unique (map (x: x.repo.name) rules)); + + # TODO makeGitHooks that uses runCommand instead of scriptFarm? + scriptFarm = + farm-name: scripts: + let + makeScript = script-name: script-string: { + name = script-name; + path = pkgs.writeScript "${farm-name}_${script-name}" script-string; + }; + in + pkgs.linkFarm farm-name (mapAttrsToList makeScript scripts); + + + git-ssh-command = pkgs.writeScript "git-ssh-command" '' + #! /bin/sh + set -euf + + PATH=${makeSearchPath "bin" (with pkgs; [ + coreutils + git + gnugrep + gnused + systemd + ])} + + abort() { + echo "error: $1" >&2 + systemd-cat -p err -t git echo "error: $1" + exit -1 + } + + GIT_SSH_USER=$1 + + systemd-cat -p info -t git echo \ + "authorizing $GIT_SSH_USER $SSH_CONNECTION $SSH_ORIGINAL_COMMAND" + + # References: The Base Definitions volume of + # POSIX.1‐2013, Section 3.278, Portable Filename Character Set + portable_filename_bre="^[A-Za-z0-9._-]\\+$" + + command=$(echo "$SSH_ORIGINAL_COMMAND" \ + | sed -n 's/^\([^ ]*\) '"'"'\(.*\)'"'"'/\1/p' \ + | grep "$portable_filename_bre" \ + || abort 'cannot read command') + + GIT_SSH_REPO=$(echo "$SSH_ORIGINAL_COMMAND" \ + | sed -n 's/^\([^ ]*\) '"'"'\(.*\)'"'"'/\2/p' \ + | grep "$portable_filename_bre" \ + || abort 'cannot read reponame') + + ${cfg.etcDir}/authorize-command \ + "$GIT_SSH_USER" "$GIT_SSH_REPO" "$command" \ + || abort 'access denied' + + repodir=${escapeShellArg cfg.dataDir}/$GIT_SSH_REPO + + systemd-cat -p info -t git \ + echo "authorized exec $command $repodir" + + export GIT_SSH_USER + export GIT_SSH_REPO + exec "$command" "$repodir" + ''; + + init-script = pkgs.writeScript "git-init" '' + #! /bin/sh + set -euf + + PATH=${makeSearchPath "bin" (with pkgs; [ + coreutils + findutils + gawk + git + gnugrep + gnused + ])} + + dataDir=${escapeShellArg cfg.dataDir} + mkdir -p "$dataDir" + + # Notice how the presence of hooks symlinks determine whether + # we manage a repositry or not. + + # Make sure that no existing repository has hooks. We can delete + # symlinks because we assume we created them. + find "$dataDir" -mindepth 2 -maxdepth 2 -name hooks -type l -delete + bad_hooks=$(find "$dataDir" -mindepth 2 -maxdepth 2 -name hooks) + if echo "$bad_hooks" | grep -q .; then + printf 'error: unknown hooks:\n%s\n' \ + "$(echo "$bad_hooks" | sed 's/^/ /')" \ + >&2 + exit -1 + fi + + # Initialize repositories. + ${concatMapStringsSep "\n" (repo: + let + hooks = scriptFarm "git-hooks" (makeHooks repo); + in + '' + reponame=${escapeShellArg repo.name} + repodir=$dataDir/$reponame + mode=${toString (if isPublicRepo repo then 0711 else 0700)} + if ! test -d "$repodir"; then + mkdir -m "$mode" "$repodir" + git init --bare --template=/var/empty "$repodir" + chown -R git:nogroup "$repodir" + fi + ln -s ${hooks} "$repodir/hooks" + '' + ) (attrValues cfg.repos)} + + # Warn about repositories that exist but aren't mentioned in the + # current configuration (and thus didn't receive a hooks symlink). + unknown_repos=$(find "$dataDir" -mindepth 1 -maxdepth 1 \ + -type d \! -exec test -e '{}/hooks' \; -print) + if echo "$unknown_repos" | grep -q .; then + printf 'warning: stale repositories:\n%s\n' \ + "$(echo "$unknown_repos" | sed 's/^/ /')" \ + >&2 + fi + ''; + + makeHooks = repo: removeAttrs repo.hooks [ "pre-receive" ] // { + pre-receive = '' + #! /bin/sh + set -euf + + PATH=${makeSearchPath "bin" (with pkgs; [ + coreutils # env + git + systemd + ])} + + accept() { + #systemd-cat -p info -t git echo "authorized $1" + accept_string="''${accept_string+$accept_string + }authorized $1" + } + reject() { + #systemd-cat -p err -t git echo "denied $1" + #echo 'access denied' >&2 + #exit_code=-1 + reject_string="''${reject_string+$reject_string + }access denied: $1" + } + + empty=0000000000000000000000000000000000000000 + + accept_string= + reject_string= + while read oldrev newrev ref; do + + if [ $oldrev = $empty ]; then + receive_mode=create + elif [ $newrev = $empty ]; then + receive_mode=delete + elif [ "$(git merge-base $oldrev $newrev)" = $oldrev ]; then + receive_mode=fast-forward + else + receive_mode=non-fast-forward + fi + + if ${cfg.etcDir}/authorize-push \ + "$GIT_SSH_USER" "$GIT_SSH_REPO" "$ref" "$receive_mode"; then + accept "$receive_mode $ref" + else + reject "$receive_mode $ref" + fi + done + + if [ -n "$reject_string" ]; then + systemd-cat -p err -t git echo "$reject_string" + exit -1 + fi + + systemd-cat -p info -t git echo "$accept_string" + + ${optionalString (hasAttr "post-receive" repo.hooks) '' + # custom post-receive hook + ${repo.hooks.post-receive}''} + ''; + }; + + etc-base = + assert (hasPrefix "/etc/" cfg.etcDir); + removePrefix "/etc/" cfg.etcDir; + +in +out + + + + + + + + + + + +#let +# inherit (lib) mkIf mkMerge; +# +# cfg = config.tv.git; +# arg' = arg // { inherit cfg; }; +#in +# +## TODO unify logging of shell scripts to user and journal +## TODO move all scripts to ${etcDir}, so ControlMaster connections +## immediately pick up new authenticators +## TODO when authorized_keys changes, then restart ssh +## (or kill already connected users somehow) +# +#{ +# imports = [ +# ../../3modules/tv/nginx.nix +# ]; +# +# options.tv.git = import ./options.nix arg'; +# +# config = mkIf cfg.enable (mkMerge [ +# (import ./config.nix arg') +# (mkIf cfg.cgit (import ./cgit.nix arg')) +# ]); +#} diff --git a/3modules/tv/identity.nix b/3modules/tv/identity.nix new file mode 100644 index 000000000..7cf90de01 --- /dev/null +++ b/3modules/tv/identity.nix @@ -0,0 +1,71 @@ +{ lib, ... }: + +with lib; + +let + + cfg = config.tv.identity; + + out = { + options.tv.identity = api; + #config = mkIf cfg.enable imp; + }; + + api = { + enable = mkOption { + type = types.bool; + default = false; + }; + self = mkOption { + type = types.unspecified; + }; + hosts = mkOption { + type = with types; attrsOf unspecified; + default = { + cd = { + #dc = "cac"; + dc = "tv"; + fqdn = "cd.retiolum"; + addr = "10.243.113.222"; + #addr6 = "42:4522:25f8:36bb:8ccb:0150:231a:2af3"; + #internet-addr = "162.219.5.183"; + cores = 2; + }; + mkdir = { + #dc = "cac"; + dc = "tv"; + fqdn = "mkdir.retiolum"; + addr = "10.243.113.223"; + cores = 1; + }; + nomic = { + #dc = "gg"; + dc = "tv"; + fqdn = "nomic.retiolum"; + addr = "10.243.0.110"; + cores = 2; + }; + rmdir = { + #dc = "cac"; + dc = "tv"; + fqdn = "rmdir.retiolum"; + addr = "10.243.113.224"; + #addr = "42:4522:25f8:36bb:8ccb:0150:231a:2af5"; + cores = 1; + }; + wu = { + #dc = "gg"; + dc = "tv"; + fqdn = "wu.retiolum"; + addr = "10.243.13.37"; + cores = 8; + }; + }; + }; + }; + + #imp = { + #}; + +in +out diff --git a/3modules/tv/iptables.nix b/3modules/tv/iptables.nix new file mode 100644 index 000000000..096b04e1d --- /dev/null +++ b/3modules/tv/iptables.nix @@ -0,0 +1,129 @@ +{ config, lib, pkgs, ... }: + +with builtins; +with lib; +let + cfg = config.tv.iptables; + + out = { + options.tv.iptables = api; + config = mkIf cfg.enable imp; + }; + + api = { + enable = mkOption { + type = types.bool; + default = false; + }; + + input-internet-accept-new-tcp = mkOption { + type = with types; listOf str; + default = []; + }; + + input-retiolum-accept-new-tcp = mkOption { + type = with types; listOf str; + default = []; + }; + }; + + imp = { + networking.firewall.enable = false; + + systemd.services.tv-iptables = { + description = "tv-iptables"; + wantedBy = [ "network-pre.target" ]; + before = [ "network-pre.target" ]; + after = [ "systemd-modules-load.service" ]; + + path = with pkgs; [ + iptables + ]; + + restartIfChanged = true; + + serviceConfig = { + Type = "simple"; + RemainAfterExit = true; + Restart = "always"; + ExecStart = "@${startScript} tv-iptables_start"; + }; + }; + }; + + + accept-new-tcp = port: + "-p tcp -m tcp --dport ${port} -m conntrack --ctstate NEW -j ACCEPT"; + + rules = iptables-version: + pkgs.writeText "tv-iptables-rules${toString iptables-version}" '' + *nat + :PREROUTING ACCEPT [0:0] + :INPUT ACCEPT [0:0] + :OUTPUT ACCEPT [0:0] + :POSTROUTING ACCEPT [0:0] + ${concatMapStringsSep "\n" (rule: "-A PREROUTING ${rule}") ([] + ++ [ + "! -i retiolum -p tcp -m tcp --dport 22 -j REDIRECT --to-ports 0" + "-p tcp -m tcp --dport 11423 -j REDIRECT --to-ports 22" + ] + )} + COMMIT + *filter + :INPUT DROP [0:0] + :FORWARD DROP [0:0] + :OUTPUT ACCEPT [0:0] + :Retiolum - [0:0] + ${concatMapStringsSep "\n" (rule: "-A INPUT ${rule}") ([] + ++ [ + "-m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT" + "-i lo -j ACCEPT" + ] + ++ map accept-new-tcp cfg.input-internet-accept-new-tcp + ++ ["-i retiolum -j Retiolum"] + )} + ${concatMapStringsSep "\n" (rule: "-A Retiolum ${rule}") ([] + ++ { + ip4tables = [ + "-p icmp -m icmp --icmp-type echo-request -j ACCEPT" + ]; + ip6tables = [ + "-p ipv6-icmp -m icmp6 --icmpv6-type echo-request -j ACCEPT" + ]; + }."ip${toString iptables-version}tables" + ++ map accept-new-tcp cfg.input-retiolum-accept-new-tcp + ++ { + ip4tables = [ + "-p tcp -j REJECT --reject-with tcp-reset" + "-p udp -j REJECT --reject-with icmp-port-unreachable" + "-j REJECT --reject-with icmp-proto-unreachable" + ]; + ip6tables = [ + "-p tcp -j REJECT --reject-with tcp-reset" + "-p udp -j REJECT --reject-with icmp6-port-unreachable" + "-j REJECT" + ]; + }."ip${toString iptables-version}tables" + )} + COMMIT + ''; + + startScript = pkgs.writeScript "tv-iptables_start" '' + #! /bin/sh + set -euf + iptables-restore < ${rules 4} + ip6tables-restore < ${rules 6} + ''; + +in +out + +#let +# cfg = config.tv.iptables; +# arg' = arg // { inherit cfg; }; +#in +# +#{ +# options.tv.iptables = import ./options.nix arg'; +# config = lib.mkIf cfg.enable (import ./config.nix arg'); +#} diff --git a/3modules/tv/nginx.nix b/3modules/tv/nginx.nix new file mode 100644 index 000000000..d9d95be84 --- /dev/null +++ b/3modules/tv/nginx.nix @@ -0,0 +1,83 @@ +{ config, pkgs, lib, ... }: + +with builtins; +with lib; +let + cfg = config.tv.nginx; + + out = { + options.tv.nginx = api; + config = mkIf cfg.enable imp; + }; + + api = { + enable = mkOption { + type = types.bool; + default = false; + description = "Enable nginx."; + }; + + retiolum-locations = mkOption { + type = with types; listOf (attrsOf str); + default = []; + }; + }; + + imp = { + services.nginx = + let + name = config.tv.retiolum.name; + qname = "${name}.retiolum"; + in + assert config.tv.retiolum.enable; + { + enable = true; + httpConfig = '' + include ${pkgs.nginx}/conf/mime.types; + default_type application/octet-stream; + sendfile on; + keepalive_timeout 65; + gzip on; + server { + listen 80 default_server; + server_name _; + location / { + return 404; + } + } + server { + listen 80; + server_name ${name} ${qname}; + + ${indent (concatStrings (map to-location cfg.retiolum-locations))} + + location / { + return 404; + } + } + ''; + }; + }; + + + indent = replaceChars ["\n"] ["\n "]; + + to-location = { name, value }: '' + location ${name} { + ${indent value} + } + ''; + +in +out + + +#let +# cfg = config.tv.nginx; +# arg' = arg // { inherit cfg; }; +#in +# +#{ +# options.tv.nginx = import ./options.nix arg'; +# config = lib.mkIf cfg.enable (import ./config.nix arg'); +#} diff --git a/3modules/tv/retiolum.nix b/3modules/tv/retiolum.nix new file mode 100644 index 000000000..7c78d7124 --- /dev/null +++ b/3modules/tv/retiolum.nix @@ -0,0 +1,241 @@ +{ config, pkgs, lib, ... }: + +with builtins; +with lib; +let + cfg = config.tv.retiolum; + + out = { + options.tv.retiolum = api; + config = mkIf cfg.enable imp; + }; + + api = { + enable = mkOption { + type = types.bool; + default = false; + description = "Enable tinc daemon for Retiolum."; + }; + + name = mkOption { + type = types.str; + default = config.networking.hostName; + # Description stolen from tinc.conf(5). + description = '' + This is the name which identifies this tinc daemon. It must + be unique for the virtual private network this daemon will + connect to. The Name may only consist of alphanumeric and + underscore characters. If Name starts with a $, then the + contents of the environment variable that follows will be + used. In that case, invalid characters will be converted to + underscores. If Name is $HOST, but no such environment + variable exist, the hostname will be read using the + gethostnname() system call This is the name which identifies + the this tinc daemon. + ''; + }; + + generateEtcHosts = mkOption { + type = types.str; + default = "both"; + description = '' + If set to short, long, or both, + then generate entries in /etc/hosts from subnets. + ''; + }; + + network = mkOption { + type = types.str; + default = "retiolum"; + description = '' + The tinc network name. + It is used to generate long host entries, + derive the name of the user account under which tincd runs, + and name the TUN device. + ''; + }; + + tincPackage = mkOption { + type = types.package; + default = pkgs.tinc; + description = "Tincd package to use."; + }; + + hosts = mkOption { + default = null; + description = '' + Hosts package or path to use. + If a path is given, then it will be used to generate an ad-hoc package. + ''; + }; + + iproutePackage = mkOption { + type = types.package; + default = pkgs.iproute; + description = "Iproute2 package to use."; + }; + + + privateKeyFile = mkOption { + # TODO if it's types.path then it gets copied to /nix/store with + # bad unsafe permissions... + type = types.str; + default = "/root/src/secrets/retiolum.rsa_key.priv"; + description = "Generate file with tincd -K."; + }; + + connectTo = mkOption { + type = types.listOf types.str; + default = [ "fastpoke" "pigstarter" "kheurop" ]; + description = "TODO describe me"; + }; + + }; + + imp = { + environment.systemPackages = [ tinc hosts iproute ]; + + networking.extraHosts = retiolumExtraHosts; + + systemd.services.retiolum = { + description = "Tinc daemon for Retiolum"; + after = [ "network.target" ]; + wantedBy = [ "multi-user.target" ]; + path = [ tinc iproute ]; + serviceConfig = { + PermissionsStartOnly = "true"; + PrivateTmp = "true"; + Restart = "always"; + # TODO we cannot chroot (-R) b/c we use symlinks to hosts + # and the private key. + ExecStartPre = pkgs.writeScript "retiolum-init" '' + #! /bin/sh + install -o ${user} -m 0400 ${cfg.privateKeyFile} /tmp/retiolum-rsa_key.priv + ''; + ExecStart = "${tinc}/sbin/tincd -c ${confDir} -d 0 -U ${user} -D"; + SyslogIdentifier = "retiolum"; + }; + }; + + # TODO user.name = "retiolum" + users.extraUsers = singleton { + name = user; + uid = 2961822815; # bin/genid retiolum-tinc + }; + }; + + + tinc = cfg.tincPackage; + hostsType = builtins.typeOf cfg.hosts; + hosts = + if hostsType == "package" then + # use package as is + cfg.hosts + else if hostsType == "path" then + # use path to generate a package + pkgs.stdenv.mkDerivation { + name = "custom-retiolum-hosts"; + src = cfg.hosts; + installPhase = '' + mkdir $out + find . -name .git -prune -o -type f -print0 | xargs -0 cp --target-directory $out + ''; + } + else + abort "The option `services.retiolum.hosts' must be set to a package or a path" + ; + iproute = cfg.iproutePackage; + + retiolumExtraHosts = import (pkgs.runCommand "retiolum-etc-hosts" + { } + '' + generate() { + (cd ${hosts} + printf \'\' + for i in `ls`; do + names=$(hostnames $i) + for j in `sed -En 's|^ *Aliases *= *(.+)|\1|p' $i`; do + names="$names $(hostnames $j)" + done + sed -En ' + s|^ *Subnet *= *([^ /]*)(/[0-9]*)? *$|\1 '"$names"'|p + ' $i + done | sort + printf \'\' + ) + } + + case ${cfg.generateEtcHosts} in + short) + hostnames() { echo "$1"; } + generate + ;; + long) + hostnames() { echo "$1.${cfg.network}"; } + generate + ;; + both) + hostnames() { echo "$1.${cfg.network} $1"; } + generate + ;; + *) + echo '""' + ;; + esac > $out + ''); + + + confDir = pkgs.runCommand "retiolum" { + # TODO text + executable = true; + preferLocalBuild = true; + } '' + set -euf + + mkdir -p $out + + ln -s ${hosts} $out/hosts + + cat > $out/tinc.conf < $out/tinc-up < changes 2>&1 || : + + if test -s changes; then + date=$(date -R) + subject=$(sed -n 's/^\(CHANGED\|ERROR\|NEW\): //p' changes \ + | tr \\n \ ) + { + echo "Date: $date" + echo "From: $from" + echo "Subject: $subject" + echo "To: $mailto" + echo + cat changes + } | /var/setuid-wrappers/sendmail -t + fi + ''; + }; + }; + users.extraUsers = optionals (cfg.user == "urlwatch") (singleton { + name = "urlwatch"; + uid = 3450919516; # bin/genid urlwatch + }); + }; + +in + +{ + # TODO + #imports = [ + # ./exim + #]; + #config = mkIf cfg.enable + # (if config.tv.exim.enable + # then impl + # else throw "tv.exim must be enabled when enabling tv.urlwatch"); + + options.tv.urlwatch = api; + + config = impl; +} diff --git a/4lib/tv/default.nix b/4lib/tv/default.nix new file mode 100644 index 000000000..164a6a1aa --- /dev/null +++ b/4lib/tv/default.nix @@ -0,0 +1,62 @@ +{ lib, pkgs, ... }: + +with builtins; + +let + inherit (lib) mapAttrs stringAsChars; +in + +rec { + git = import ./git.nix { + lib = lib // { + inherit addNames; + }; + inherit pkgs; + }; + + addName = name: set: + set // { inherit name; }; + + addNames = mapAttrs addName; + + + # "7.4.335" -> "74" + majmin = with lib; x : concatStrings (take 2 (splitString "." x)); + + + concat = xs : + if xs == [] + then "" + else head xs + concat (tail xs) + ; + + flip = f : x : y : f y x; + + # isSuffixOf :: String -> String -> Bool + isSuffixOf = + s : xs : + let + sn = stringLength s; + xsn = stringLength xs; + in + xsn >= sn && substring (xsn - sn) sn xs == s ; + + removeSuffix = + s : xs : substring 0 (stringLength xs - stringLength s) xs; + + # setMap :: (String -> a -> b) -> Set String a -> [b] + #setMap = f: xs: map (k : f k (getAttr k xs)) (attrNames xs); + + # setToList :: Set k a -> [a] + #setToList = setMap (_: v: v); + + shell-escape = + let + isSafeChar = c: match "[-./0-9_a-zA-Z]" c != null; + in + stringAsChars (c: + if isSafeChar c then c + else if c == "\n" then "'\n'" + else "\\${c}"); + +} diff --git a/4lib/tv/git.nix b/4lib/tv/git.nix new file mode 100644 index 000000000..8dc176114 --- /dev/null +++ b/4lib/tv/git.nix @@ -0,0 +1,181 @@ +{ lib, pkgs, ... }: + +let + inherit (lib) addNames escapeShellArg makeSearchPath; + + commands = addNames { + git-receive-pack = {}; + git-upload-pack = {}; + }; + + receive-modes = addNames { + fast-forward = {}; + non-fast-forward = {}; + create = {}; + delete = {}; + merge = {}; # TODO implement in git.nix + }; + + permissions = { + fetch = { + allow-commands = [ + commands.git-upload-pack + ]; + }; + + push = ref: extra-modes: { + allow-commands = [ + commands.git-receive-pack + commands.git-upload-pack + ]; + allow-receive-ref = ref; + allow-receive-modes = [ receive-modes.fast-forward ] ++ extra-modes; + }; + }; + + refs = { + master = "refs/heads/master"; + all-heads = "refs/heads/*"; + }; + + irc-announce-script = pkgs.writeScript "irc-announce-script" '' + #! /bin/sh + set -euf + + export PATH=${makeSearchPath "bin" (with pkgs; [ + coreutils + gawk + gnused + netcat + nettools + ])} + + IRC_SERVER=$1 + IRC_PORT=$2 + IRC_NICK=$3$$ + IRC_CHANNEL=$4 + message=$5 + + export IRC_CHANNEL # for privmsg_cat + + # echo2 and cat2 are used output to both, stdout and stderr + # This is used to see what we send to the irc server. (debug output) + echo2() { echo "$*"; echo "$*" >&2; } + cat2() { tee /dev/stderr; } + + # privmsg_cat transforms stdin to a privmsg + privmsg_cat() { awk '{ print "PRIVMSG "ENVIRON["IRC_CHANNEL"]" :"$0 }'; } + + # ircin is used to feed the output of netcat back to the "irc client" + # so we can implement expect-like behavior with sed^_^ + # XXX mkselfdestructingtmpfifo would be nice instead of this cruft + tmpdir="$(mktemp -d irc-announce_XXXXXXXX)" + cd "$tmpdir" + mkfifo ircin + trap " + rm ircin + cd '$OLDPWD' + rmdir '$tmpdir' + trap - EXIT INT QUIT + " EXIT INT QUIT + + { + echo2 "USER $LOGNAME 0 * :$LOGNAME@$(hostname)" + echo2 "NICK $IRC_NICK" + + # wait for MODE message + sed -n '/^:[^ ]* MODE /q' + + echo2 "JOIN $IRC_CHANNEL" + + printf '%s' "$message" \ + | privmsg_cat \ + | cat2 + + echo2 "PART $IRC_CHANNEL" + + # wait for PART confirmation + sed -n '/:'"$IRC_NICK"'![^ ]* PART /q' + + echo2 'QUIT :Gone to have lunch' + } < ircin \ + | nc "$IRC_SERVER" "$IRC_PORT" | tee -a ircin + ''; + + hooks = { + # TODO make this a package? + irc-announce = { nick, channel, server, port ? 6667 }: '' + #! /bin/sh + set -euf + + export PATH=${makeSearchPath "bin" (with pkgs; [ + coreutils + git + gnused + ])} + + nick=${escapeShellArg nick} + channel=${escapeShellArg channel} + server=${escapeShellArg server} + port=${toString port} + + host=$nick + + empty=0000000000000000000000000000000000000000 + + unset message + while read oldrev newrev ref; do + + if [ $oldrev = $empty ]; then + receive_mode=create + elif [ $newrev = $empty ]; then + receive_mode=delete + elif [ "$(git merge-base $oldrev $newrev)" = $oldrev ]; then + receive_mode=fast-forward + else + receive_mode=non-fast-forward + fi + + h=$(echo $ref | sed 's:^refs/heads/::') + + # empty_tree=$(git hash-object -t tree /dev/null + empty_tree=4b825dc6 + + id=$(echo $newrev | cut -b-7) + id2=$(echo $oldrev | cut -b-7) + if [ $newrev = $empty ]; then id=$empty_tree; fi + if [ $oldrev = $empty ]; then id2=$empty_tree; fi + + case $receive_mode in + create) + #git log --oneline $id2 + link="http://$host/cgit/$GIT_SSH_REPO/?h=$h" + ;; + delete) + #git log --oneline $id2 + link="http://$host/cgit/$GIT_SSH_REPO/ ($h)" + ;; + fast-forward|non-fast-forward) + #git diff --stat $id..$id2 + link="http://$host/cgit/$GIT_SSH_REPO/diff/?h=$h&id=$id&id2=$id2" + ;; + esac + + #$host $GIT_SSH_REPO $ref $link + message="''${message+$message + }$GIT_SSH_USER $receive_mode $link" + done + + if test -n "''${message-}"; then + exec ${irc-announce-script} \ + "$server" \ + "$port" \ + "$nick" \ + "$channel" \ + "$message" + fi + ''; + }; + +in +commands // receive-modes // permissions // refs // hooks diff --git a/4lib/tv/modules.nix b/4lib/tv/modules.nix new file mode 100644 index 000000000..248e638ea --- /dev/null +++ b/4lib/tv/modules.nix @@ -0,0 +1,21 @@ +let + pkgs = import {}; + inherit (pkgs.lib) concatMap hasAttr; +in rec { + + no-touch-args = { + config = throw "no-touch-args: can't touch config!"; + lib = throw "no-touch-args: can't touch lib!"; + pkgs = throw "no-touch-args: can't touch pkgs!"; + }; + + # list-imports : path -> [path] + # Return a module's transitive list of imports. + # XXX duplicates won't get eliminated from the result. + list-imports = path: + let module = import path no-touch-args; + imports = if hasAttr "imports" module + then concatMap list-imports module.imports + else []; + in [path] ++ imports; +} diff --git a/Makefile b/Makefile new file mode 100644 index 000000000..67364305c --- /dev/null +++ b/Makefile @@ -0,0 +1,70 @@ +ifndef system +$(error unbound variable: system) +else +include 0make/tv/$(system).makefile +.ONESHELL: +.SHELLFLAGS := -eufc +.PHONY: deploy +deploy:;@ + system_name=$(system) + deploy_host=$(deploy_host) + nixpkgs_url=$(nixpkgs_url) + nixpkgs_rev=$(nixpkgs_rev) + secrets_dir=$(secrets_dir) + + prepush(){( + dst=$$1 + src=$$2 + rsync \ + --exclude .git \ + --rsync-path="mkdir -p \"$$dst\" && rsync" \ + --usermap=\*:0 \ + --groupmap=\*:0 \ + --delete-excluded \ + -vrLptgoD \ + "$$src/" "$$deploy_host:$$dst" + )} + + prepush /root/src/shitment "$$PWD" + prepush /root/src/secrets "$$secrets_dir" + + ssh -S none "$$deploy_host" -T env \ + nixpkgs_url="$$nixpkgs_url" \ + nixpkgs_rev="$$nixpkgs_rev" \ + system_name="$$system_name" \ + sh -euf \ + <<-\EOF + prefetch(){( + dst=$$1 + url=$$2 + rev=$$3 + mkdir -p "$$dst" + cd "$$dst" + if ! test -e .git; then + git init + fi + if ! cur_url=$$(git config remote.origin.url 2>/dev/null); then + git remote add origin "$$url" + elif test "$$cur_url" != "$$url"; then + git remote set-url origin "$$url" + fi + if test "$$(git rev-parse --verify HEAD 2>/dev/null)" != "$$rev"; then + git fetch origin + git checkout "$$rev" -- . + git checkout -q "$$rev" + git submodule init + git submodule update + fi + git clean -dxf + )} + + prefetch /root/src/nixpkgs "$$nixpkgs_url" "$$nixpkgs_rev" + + echo build system... + NIXOS_CONFIG=/root/src/shitment/1systems/tv/$$system_name.nix \ + NIX_PATH=src \ + nix-build -Q -A system '' + + result/bin/switch-to-configuration switch + EOF +endif diff --git a/Zhosts/Styx b/Zhosts/Styx new file mode 100644 index 000000000..fad453168 --- /dev/null +++ b/Zhosts/Styx @@ -0,0 +1,10 @@ +Subnet = 10.243.0.42/32 +Compression = 9 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA4jbOi+HZIGOGNm4aBSwnq4m3Vg3IXHmYUbJx1AzP4a/yvEgswfk6 +MP5FXvoY/hZ0NQ0IRzbbJxGbcUdulz0WSjX1C+8uQUZstz+lvYZ4FeCXcdE5cuFM +ROKAbA4qxO3WOFhPAs4G+K6srDqswmmBSfgPAfOBexEZxHweoBQLOYKUPnBCWf5q +I1gKWgMVWv6KY/pgYxloarycb8gEd2GsNZcNwoNhRd2G/Tn6idh1qRBI96eaasbV +P24FEVkPVFVgIGrvFZCICCeQzA4g+Sn4TmgxnTWLQxG4hAHOZQX/ld8u7NHTU9Qm +PwmjESwfas9Z8UjknrbcaZvuqKrnMp7JwwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/ThinkArmageddon b/Zhosts/ThinkArmageddon new file mode 100644 index 000000000..e51e1c92b --- /dev/null +++ b/Zhosts/ThinkArmageddon @@ -0,0 +1,9 @@ +Subnet = 10.243.0.137/32 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA1EAiyBWICkyB1zHE31fHSbGR1nJJmXSfnrqm9yXRZSGweIKrbsof +QVcRzM4vsFBRUMBeKW7fzlGcvgXULFRnGelvEl4GRiBMO9odBlBI3t8CjZW7X2N7 +JqCMkB+CRuiHbNYQdRFTozQEfPq+DNh8accD5LjUM6gF0dKUdby5qNeHCfZSxU4v +YZDRqq/haO4up6m8/S6YhnHPOSaIAu7R7hFaUeB/FPT+s5irKk6WtAiWnIdXb22q +0zxT4+t9sWFb4V9u/MImggYQVWjk+TfF5KpihBOvExEQsSR8JJcRUJAtN4W0w2Pc +S4/j9ArKcBj5Wf2qHcJMN5MbwUFW1oMkGwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/TriBot b/Zhosts/TriBot new file mode 100644 index 000000000..821046f5d --- /dev/null +++ b/Zhosts/TriBot @@ -0,0 +1,11 @@ +Subnet = 10.243.117.163 +Subnet = 42:ff05:504f:f27a:3534:9be1:4343:5e95 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAz8pZtvSqDEKo/8IHt71GzWa2oTqZPUv2kRoipUXbJGv3eWpkbd4n +OpaLuY7MjUveZ39m830t5RAkgB9iChU5wurszgfLrxJ15uibJe+yFJl9O6kuYJr1 +69s12F/v/pPno5eWuXWJ+CdMW8srZB1I/ZIL1/GaptuDoMxu7uBnDbL/NJrpPBSr +JxCJGHET8jh2++B3cqsBWNGkQjQTM8NwwAup6HQjBrbOQYOAQbcOTMmalc/9JFfO +LUz63LrCPk5pIeLi+876IdAJBuJsVWwmTbl/D9R6D34Z8bYHIv9mDmO/omckcxX2 +JJgEq5/xlLb2gHt/qfUunbYHIstp/s2bSwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/ach b/Zhosts/ach new file mode 100644 index 000000000..7774f17c4 --- /dev/null +++ b/Zhosts/ach @@ -0,0 +1,11 @@ +Subnet = 10.243.32.89 +Subnet = 42:6bb3:0a07:6777:9aa5:e39c:e140:cb68 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAsTyjNQ5aO2aIKXgkgZSiUb0POtEVoAPFrIkSv5Ci+7AYv+CLXsIr +TKBfFIg474KZ4MCrX0oA3Z66s9d2UW6mcH5JufW8siRPJvdydqaANyF6Fvk++59R ++GMKR0MGdPGfcxjaw64ChemOZx1T6ODHF7KTgaWRI+Aiz+jWsvVCSKutSwVDJTgJ +4lub95/gbWckRY6fchkh7rSTfNXXYevbysQYdZaAR/qgquUNt23/ewlagF7uqgZt +CQx7MHMU2quEdvIfZuUPFWe0yHBb1bZCHYxKXo6XG8I7WdUAFRuwFLTjqgSYPD1j +EpUyU0+xxfyXB3vWrM/jcw8XKzi04wWHuQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/air b/Zhosts/air new file mode 100644 index 000000000..f27106f0e --- /dev/null +++ b/Zhosts/air @@ -0,0 +1,11 @@ +Subnet = 10.243.0.99 +Subnet = 42:32d7:b589:8ae8:57a5:4cde:f49e:851d/128 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA1yNqMyy9C1O031M518kzLYLh+Ox0D2r9UgVSSb9OgpQ85ZJgl7Kb +SUzlZLbC9CX4O+PmtWvZwtPfLjua9VbVOtUJTB6zTB9Oqe4hTmX0oKIgheGf1rKS +ylOaLfSz7PaPR3zGms17F4ovLDUBG2rpOyoHJM54T9LyJbPny/t7v/fjAFqu6atK +1RgER3j3s5oPaRPw0pYR0kiGXayZRL6q7Qc6AXMlMi22sdRI9e1YCMCyC4u1oU6U +grw7khyPWoEaue9B7fKfG5PixRHHlrsVDdwXEVvH87+/X2IU3H3C1/pslenAQ98i +qGNJOl2eJ9FHInQjI1cDMgFURcT6i8mGpQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/alarmpi b/Zhosts/alarmpi new file mode 100644 index 000000000..205b0d838 --- /dev/null +++ b/Zhosts/alarmpi @@ -0,0 +1,11 @@ +Subnet = 10.243.124.187 +Subnet = 42:2de9:fab6:7460:2fee:9199:fa1d:70ea + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAunQOFP1mnEmsmnMYjCwbWdbGe0/hHQs2bxIdwO1RXngXgw/TBBhN +Xlp75LzPiT0ELF5WBPVclqskT+bl+FOOITH9XDkYzm22jzeLHq3bs3YiZhwzidkO +Xhq5pwGY4HL4o3SfFtfOHse688qqLXefoc9CfyAIKMCRRAxlzpqNVuZEg1eUcuUJ +z6gugJj+YyA4V3JGq7GuJDiPPOMrGel0rITMlWtYYtm0jf6deYBPjo+ZogDESlez +tBmPKNCXynSxb6cV39StUsbUQbLvHgPBrA01T+Hw1DV5eHmWoycvD4IfJqXdfMbc +BOqRHOlErXGTG5m2EUoU0VSj75zl06gW6wIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/albi10 b/Zhosts/albi10 new file mode 100644 index 000000000..9bcca7ccd --- /dev/null +++ b/Zhosts/albi10 @@ -0,0 +1,11 @@ +Address = 74.122.198.15 +Subnet = 10.243.0.10 +Subnet = 42:aaa9:4ba3:8c43:bdd8:2cc8:29a0:e8e6/128 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA0Jz5rQ7NpIQWwhDsrZHlJYAnC1k1onl2ln/6CJbdV9t3gG2hlx/9 +0SEARo6sq9fftyzzZd3iY4WK7+zRXJFXHsLmDa6mq8Mme7Yv+YHZoHPTm9c3tN3v +laiV/qAdoi/sv43DCo7JywI2lTW1pPxuitXuud2ajd7GXuCoRqFRqLtaURorVKkW +4j9UGpMKrEa+CV9wP5jZ57RSPQ7aMq8D4GiMqKDgUeCZnvXxpYWDOEdGNlpuUcWt +/erC6u50/vnjUkkHx66OmkZe5AX5MmwNp2q4zC4sTh/BRhqk27AmNl5wbp0kL7/B +hg+r0F8ckrdLc21sSU36lUIeeFa/S+A06QIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/albi7 b/Zhosts/albi7 new file mode 100644 index 000000000..32cf0dc84 --- /dev/null +++ b/Zhosts/albi7 @@ -0,0 +1,10 @@ +Subnet = 10.243.0.7/32 +Subnet = 42:6c61:6962:6137:626c:3769:000a:1337/128 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA+SwdWv1anjIaKSnvel9d23tgqye5RguIVfgMnjpMsqOYpFklLIa8 +4wREhVvpiArnIsoTXbKzdeCFgaAbMS6aQ701Pyv7QriVy8m3iUlgqvB/znogxN8U +z1fqL0jAHLkQkoyZ2a6mUgHpByvUqZNcq6istYLwGnXO3JQrS7U54hHPpXbxwFY5 +0/Wli9OueG4fWaZ9skDa2Faq4c/Lngku+Iv1gBBgII1EDSsgedNWw3YBTmHDFNTZ +SsORj2ho5nQgdvw42qEINbxpU01jK8XB+jmVEO+ixZZCsWlOeCjl9Zym4MZDRePg +euTLTbgs/809ElM8V+EzRKSPNR2k6FrBXwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/almoehi b/Zhosts/almoehi new file mode 100644 index 000000000..d856f682f --- /dev/null +++ b/Zhosts/almoehi @@ -0,0 +1,11 @@ +Subnet = 10.243.239.66 +Subnet = 42:0730:2eed:2bb9:9d4b:eeb1:641c:0fe6 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAtyfcqaDrDmsBVh5w4CksDI1Hn/jDcZVyNWZlqxQojjB2SsxH1VyD +VcpmwyzDSE87CCZPN4xjIbrc+KgjiOVSAu+8Ax4dLqVrP96s5lJUIunVcwd3lQVi +D7Ol2zDredbXuNi3jb0qBU+/qiK9mp1vTcEXhXmCSTiXIHz0d7vkv9S0h+YgKGMJ +xBQsyCsEI9uAeGghVwrLcwY0ea6ZJuYz0miIn9+g4D5PROxImBAJV6uvbG0cP8QG +rLY85YYByk2qKPIXrpec4uc1A/P1+1DSl5I+GEkBBhSmQB71UYCDULfuL4Eu6mFN +AFAPsSCk8DFo5//lULky24CEkxTtp4rcPwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/alphalabs b/Zhosts/alphalabs new file mode 100644 index 000000000..e5f98d692 --- /dev/null +++ b/Zhosts/alphalabs @@ -0,0 +1,10 @@ +Subnet = 42:0:0:0:0:0:0:a1fa/128 +Subnet = 10.243.1.10/32 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAvUAbMmmOFn+4kOvJAvmi0R/XCQa1YBlkjUvC6Pmt0Q8gV1DodXjB +DgwP8yhLcxaVy2Hk82aJvNTUrfMeB2sdt1RJHQiEPQkHthdp8Spm0Px4uTiMjmFB +ev91xi00eCCGIKsXdh/qso1K7EDHt9MEVHOvSlkawWzoyJ6AaHStW1ElwDdGjZpl +0YWrhx4Gk5X7pCp3LKkQJFfGtqoqGOVg2JjqK3qMsAdRo6QvYDqjFzARed/D0k55 +kcKXjBJAVxoU/CqGfS/Lr0fL8tdYgXaAXvPO9dbr1t0KyOUY2KRNBePeSvRp/etb +H0LBPsO9F7PQiPI3DBoWCYgsuj/hBXapvwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/apfull b/Zhosts/apfull new file mode 100644 index 000000000..c64750b84 --- /dev/null +++ b/Zhosts/apfull @@ -0,0 +1,11 @@ +Subnet = 10.243.138.112 +Subnet = 42:0707:afc5:96a3:8215:305e:0474:02fb + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAxNnJB29djjUFUZqM7EQ8kj+IRx/a+2fA0ZdNoUm4ar6t7kTmOc40 +GzGr0zE+QPqQ3abDk7eTmZbU3yUNiAUDzDMD+iqwKAVJnMb8pjXlGmcpdvMuxwbz +bHeTEaVqBmF4seXlwUKL+waa2Yr1t0YsynCUte8dbcauaD9CY61QjDUP7TQBglmk +eKq+qbFNKjzIjLQf2iXsl2+dzuFqg4OUaUD0zZJVzjNpKSz24uEK2mD9fSmS3oYF +yzsNaOKaXr/j+1Xlosxy9Rde/o54UbtZTPYsNdhNgnXmBan4zTv/QnI67Uf9RqiK +PHsSAkfCj/K7iAOKE/A30xYbd8eV2tPANwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/bitchctl b/Zhosts/bitchctl new file mode 100644 index 000000000..8f188a2ae --- /dev/null +++ b/Zhosts/bitchctl @@ -0,0 +1,11 @@ +Subnet = 10.243.104.101 +Subnet = 42:5ac9:c698:4d1d:6ec5:45b9:647b:a8ee + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAuxd4ZU3y1ZgvI+/7mQkWBlF6VvX6ty8+iKYwmjsSUCclxz3O5DB+ +clps9k+0tQvtKlsxG3lnFQz9fd4Pj0GIuWsAdHRH/hpnb9nYSRePKWy0RBjAZRr4 +8rXqI8NOdkQiIQT8gWw3ujzw/Mau/bV6AWqi+CbeExm+J0bPW/QZlAZ4BEKFvuqK +U8yOQ38p9s3Dpe4S5JZ3cu54j5f5JygXTZgk2ZW3frJ/JS+lRHfFlIW0ZAuTqn/u +GD5ahHLbRZPGsG5aSR+agfOVIAHLBnDoFx6AQUr09m4zyMgPEC+Xq/DvdP/Hvuas +RYRol9qHtNeFJViWIUOQPHypTw2a4Ev7fQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/bitchextend b/Zhosts/bitchextend new file mode 100644 index 000000000..82d8ffa43 --- /dev/null +++ b/Zhosts/bitchextend @@ -0,0 +1,11 @@ +Subnet = 10.243.141.142 +Subnet = 42:f8a6:9f59:381d:eedf:d90d:8611:4a9e + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA02Zp9aYkEn5yLSaOhrmuFzObpmWdZfT5OWzE11LUeoCu4rsEZY9T +DB93iliJpxKYuLnmI49vGfSSzqGs6B2yoh6Y60OsrYrvBSQ2Li3aTOqUTL8GpR6Y +GivInlr6F5/T+6BEg8paau/1rwRE/r2cJ78AvG1nd+JtRL9Hl4tYPakOVIbRk3D9 +4qDtWDWZS5BdirbaO66wvYxS8ps14LRvyVkjiT7IPMXf8p6rxumXPIr3JtJ6QC/K +DKuP95v0vztZm3U32hO92NB+mDb0XjGSOaspEl2HX45phad6GnGBPqhGpSv47xDa +HprcO9uxkGcEhyQtCALWD8THX1SNoNHh0QIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/bitchtop b/Zhosts/bitchtop new file mode 100644 index 000000000..975575efa --- /dev/null +++ b/Zhosts/bitchtop @@ -0,0 +1,11 @@ +Subnet = 10.243.12.178 +Subnet = 42:4119:cdae:6fb4:0b58:59c6:a993:17ea + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA3NJmRzOn5e8FwhlcdvjIwZSvCL2eJ/lJ6E3/m/BOy7qUneMwfotE +DarxHFxd6ccMLK8yH0fUuTC9zKVud6bw5Xfaw8BnFm8QXTr3eSwol3Lq1I8+k06I +PZ5a3tkdK7bQxOi+v70jGyR9E/Q1D7fP6L/q9L3W2RmNivlvS5qi5LgfxiEkFvgM +EO1FPfXwTKhBCB5LqFY4e+viyGxjZ+nK55QgacU7MMNEJN0ntvSp4pLepL29q7ZN +wSRAjZC3PJX5QZtOOtCYAJ0QqsUv8vZPhaObwPfLvGHku2vl9E8TH+HY0DWjvrte +E9ZjPn19RWRFExiK2KpbfTJezFULhaAQaQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/box b/Zhosts/box new file mode 100644 index 000000000..e02f8ca67 --- /dev/null +++ b/Zhosts/box @@ -0,0 +1,10 @@ +Subnet = 10.243.43.43 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAvUMfRZOPb/zKvALZTyxKQuzowqqJ/HW2lm/RIOKL2uoTUgVX1DJB +fCLf66e2fHnjnStXuaMDNs1kq2gi4EyK5Q50RxVBq7XayXYqfnFwzTE+Iqape542 +vYSWKLdrxljln8a2EYU7njtcWkTpW+cJIwSHEUkDLAowF87ElQ0gBmyX4p107pow +jg7zcYierVdQXkI7mO4g2zWsywfhwscbu5hdCp1Fw3wHFDatgyhPj1pJruKe+O3c +AebF5yQOAsCxAk8ZcwGLmmF5xK7lAeux2Qzu1B4Pkfxi97g1GVLnX+so7PR+vvkQ ++OMzQGIWXtaOqov5q2O1N5RJzng/kCjC/QIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/bridge b/Zhosts/bridge new file mode 100644 index 000000000..db75113be --- /dev/null +++ b/Zhosts/bridge @@ -0,0 +1,12 @@ +Subnet = 10.243.26.29 +Subnet = 42:927a:3d59:1cb3:29d6:1a08:78d3:812e + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEApeeMSYMuXg4o/fNHnG2ftp2WskZLrt63zhRag7U1HqYUnuPqY60d +VVy9MBTawm6N02nC2Svm3V07ZXaRp/XsXQLx+evZcDjPjnDYgl2ZGX0ir5Cn50bm +UzhJiMW6/J7AYvucgeAaVJ0YmIwRw6ndYGcxmXWi4TK0jSzhuSLgookWM6iJfbdB +oaYsjiXisEvNxt7rBlCfacaHMlPhz3gr1gc4IDCwF+RAMM29NUN3OinI+/f56d7b +/hLZWbimiwtvGVsGLiA2EIcfxQ7aD/LINu+XXMaq7f8QByXj/Lzi7456tDi3pdJg +lyg9yqRJYt4Zle5PVejn08qiofTUmlEhnwIDAQAB +-----END RSA PUBLIC KEY----- + diff --git a/Zhosts/c2ft b/Zhosts/c2ft new file mode 100644 index 000000000..8ce0539e2 --- /dev/null +++ b/Zhosts/c2ft @@ -0,0 +1,10 @@ +Subnet = 42:e674:8a82:7fe4:fa51:d305:192e:846b/128 +Subnet = 42.221.17.214/32 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAqS+nvuQnAlhsGHgjKRz0nq2nj9HWwzrA96xnng6UCmkTpFyprM7b +20vQ5wqcHFAbuZh1dOOb9G2qqsZYE6V1452YLZZLMsnxiJD8kSorHrF6kJid5JjH +xyyqSvkXaHClQItVjo7rIn5P/Tl+BMt64KaPxpu/4GBVHkCE1apLtaVRnEq5t2DG +htZuUqzhuLN4TQiSVC++7qY1UQotjLbAQpYxf67np5sKWMOqg5UA+ghuLeO9jpqL +qKoh2TMzotGwlYBMXVA0jJtQu5Sq/IWKWAyk9zca2LT0W0ZZWYiTl+Ai5urbJgCV +GvWeJCoBKteIKUHRVNK1RLDFl6/ITOu9XQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/c2fthome b/Zhosts/c2fthome new file mode 100644 index 000000000..a8eaabc97 --- /dev/null +++ b/Zhosts/c2fthome @@ -0,0 +1,10 @@ +Address = samularity.mine.nu +Subnet = 42.44.64.126/32 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA4ADumWibheOOocw3diK27ww4xfyptLZzlPcih5BJFUPOljXN33th +1rbFwBr0QyRSad5U+/w1qlTCCqadjNdu+0RPGxbCrEqE3bUlrbES3Fw1ZtyIeuRH +v6yTQuOzJXyceGGYJpK4JjFgFOggSH35dURDa1+x3pJECyWUAVDknWE5CS7HNufW +bcREh18LoTUi7SGPeWauDLvVb/eeuDNJkoFj+HWpNqupFXpXUD7vQ+FBTtKO9FZu +vd/QGYv7gkRGQfma3+2XW9fWgIfE1oS0qf4UfbycaEKMFS5Tn7li3tzCcH9Da4iB +SsyWm1Hg1UYXccBdDYWYo+vdG59hIjmh8wIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/casino b/Zhosts/casino new file mode 100644 index 000000000..e35691c3c --- /dev/null +++ b/Zhosts/casino @@ -0,0 +1,11 @@ +Subnet = 10.243.0.233 +Subnet = 42:3c1f:ea16:e181:7ab2:c51a:8892:7fb7/128 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAzmZ7x4HVpW8RC3ZkwmNKY/6VGlMKQbpBQtmrUzV1XFxKWZRhH3VI +NOqlfVpTEaRTorht7R8F1aw9psDDUcg7yuQFcUdoXxBJxwbc1h0FKyZZr5kAIfpS +ObE0rbBRRqJVAWgztpQAalWC95D73y/+tpHnQ+LRFq9IWeX5+QobaSym1oG4Y0Jz +STSbw2ksjH8CuWHS5TjZr50Nyx6cH99HABDnadxhLBtQriJPSYRYdWyp7tYrW3jd +As28mxkyFj0sFV3IJ/bYfZD9KSGg1KjQu+c73xKOBUhNtSHFjUzN5myYGd/nWCw8 +0PUReLrWC1ZHYPzqiwelTHcNJ3UcojpO9wIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/cat1 b/Zhosts/cat1 new file mode 100644 index 000000000..1a9dd2fea --- /dev/null +++ b/Zhosts/cat1 @@ -0,0 +1,11 @@ +Subnet = 10.243.244.32 +Subnet = 42:86cf:a3fb:16b4:edbb:df13:a7a9:cd61 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAyjmB9IyBYexahK+fxSzVNrVxMXroXMc4Fyx16+XOt9hugn24Suht +06kQwwbpkwjWfIEONzr0UPAbsOWG/Qj3w+dqiC5iqHZWFW/NdBgwunF5+INnEamj +eIIqei1230C/NNpTph9u3UsT+ZgZnc+r4usEmTpZslvtkVwg20jwT4w3Vq1ws1Jc +8Ccy8vk4FjgBP88zuvqzjBtTGQMrDgBd68XlGVKOhrvxCebHknbcHWpUz4cN8TX7 +bRNpSUTCSGd2taY6g4cUxiegbTeK2LDVvW/6XtISvJqVVllLD/p661W6gRUlkspv +phLJc+zNLRxOC624JRivt+Ag5iBI4YP4SQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/cband b/Zhosts/cband new file mode 100644 index 000000000..51c51e9c9 --- /dev/null +++ b/Zhosts/cband @@ -0,0 +1,11 @@ +Subnet = 10.243.7.76 +Subnet = 42:c293:090f:df44:0926:c7af:5012:7cd8 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA11kwqXkkDRmxmoZNFDqtUsxK6d/HzTdFC/v1V3fttePuYFiEOhZl +rLBS3+Eei4CsQrOwnaRBhHdnoOZGEdxJmq3YXDWGoVAn4bEgommCddzssVzWtVMf +hIntuCExczEMIY+MGzM3QupYxUgRRVjFtvxoC9kKOSlaq0BhkdJiWygzN/NUfqpv +HgDufoAcORLQInTpmQYEkZO+XmXejcCY/C+VD0MENqj3SijGw9tm2YmInwSwZnwX +Zjh2xn96QbV9O7bpfGHcLxWhsUyyRC46knbbBXuAdbDsa2TUdzT5D7nb/TLfP412 +agIhk+cwFM24y/ChHdfoUBakKF4wZI3l4wIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/cd b/Zhosts/cd new file mode 100644 index 000000000..d65814f46 --- /dev/null +++ b/Zhosts/cd @@ -0,0 +1,17 @@ +Address = 162.219.7.216 +Subnet = 10.243.113.222 +Subnet = 42:4522:25f8:36bb:8ccb:0150:231a:2af3 + +-----BEGIN RSA PUBLIC KEY----- +MIICCgKCAgEAvmCBVNKT/Su4v9nl/Nm3STPo5QxWPg7xEkzIs3Oh39BS8+r6/7UQ +rebib7mczb+ebZd+Rg2yFoGrWO8cmM0VcLy5bYRMK7in8XroLEjWecNNM4TRfNR4 +e53+LhcPdkxo0A3/D+yiut+A2Mkqe+4VXDm/JhAiAYkZTn7jUtj00Atrc7CWW1gN +sP3jIgv4+CGftdSYOB4dm699B7OD9XDLci2kOaFqFl4cjDYUok03G0AduUlRx10v +CKbKOTIdm8C36A902/3ms+Hyzkruu+VagGIZuPSwqXHJPCu7Ju+jarKQstMmpQi0 +PubweWDL0o/Dfz2qT3DuL4xDecIvGE6kv3m41hHJYiK+2/azTSehyPFbsVbL7w0V +LgKN3usnZNcpTsBWxRGT7nMFSnX2FLDu7d9OfCuaXYxHVFLZaNrpccOq8NF/7Hbk +DDW81W7CvLyJDlp0WLnAawSOGTUTPoYv/2wAapJ89i8QGCueGvEc6o2EcnBVMFEW +ejWTQzyD816f4RsplnrRqLVlIMbr9Q/n5TvlgjjhX7IMEfMy4+7qLGRQkNbFzgwK +jxNG2fFSCjOEQitm0gAtx7QRIyvYr6c7/xiHz4AwxYzBmvQsL/OK57NO4+Krwgj5 +Vk8TQ2jGO7J4bB38zaxK+Lrtfl8i1AK1171JqFMhOc34JSJ7T4LWDMECAwEAAQ== +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/cloudkrebs b/Zhosts/cloudkrebs new file mode 100644 index 000000000..ed46a36bd --- /dev/null +++ b/Zhosts/cloudkrebs @@ -0,0 +1,12 @@ +Address = 167.88.34.190 +Subnet = 10.243.206.102 +Subnet = 42:941e:2816:35f4:5c5e:206b:3f0b:f762 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAttUygCu7G6lIA9y+9rfTpLKIy2UgNDglUVoKZYLs8JPjtAtQVbtA +OcWwwPc8ijLQvwJWa8e/shqSzSIrtOe+HJbRGdXLdBLtOuLKpz+ZFHcS+95RS5aF +QTehg+QY7pvhbrrwKX936tkMR568suTQG6C8qNC/5jWYO/wIxFMhnQ2iRRKQOq1v +3aGGPC16KeXKVioY9KoV98S3n1rZW1JK07CIsZU4qb5txtLlW6FplJ7UmhVku1WC +sgOOj9yi6Zk1t8R2Pwv9gxa3Hc270voj5U+I2hgLV/LjheE8yhQgYHEA4vXerPdO +TGSATlSmMtE2NYGrKsLM7pKn286aSpXinwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/darth b/Zhosts/darth new file mode 100644 index 000000000..bcabc5f58 --- /dev/null +++ b/Zhosts/darth @@ -0,0 +1,12 @@ +Subnet = 10.243.0.84 +Subnet = 42:ff6b:5f0b:460d:2cee:4d05:73f7:5566/128 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAyx5x0jzfhex8EBSFLlOIkP1yJ5cSPLQ3hpPMvN0J7QdVbypU6a9C +fzGpzBph1sRwXnaqCMe0og5VT3EdFtngbmm6t/CyMhBojkxMQI08m71JT5c07+1U +OSSLXBXYHcN6cAEYEsvTiSuvP9RoAbUeQQbZryI4wpzzQ7ET1l7k/3eeXAwqRKR6 +xiqn/4597U09QYmllqfplJUBv2pIAIcFlm/KHvNTZGEZS83udfnECwDwgU63PMns +38yiCpI79kagXyTOGCbkUatt0KNTzGNLAm0CyeFd1AdgUrj8fVg2jQLQlBrze+Gx +jkphgkVEgMtVMTz8WKfz+Dro3jBfQstIjQIDAQAB +-----END RSA PUBLIC KEY----- + diff --git a/Zhosts/dei b/Zhosts/dei new file mode 100644 index 000000000..0d401b019 --- /dev/null +++ b/Zhosts/dei @@ -0,0 +1,11 @@ +Subnet = 10.243.247.164 +Subnet = 42:d702:e261:bf4d:2f5f:00e8:bf56:4d50 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAva8pJ7H+ebQFEpqLZhr6hE6OlCRhSlPQwEoWtQLHT/zsgmUEhXcw +9045IAAgALc1Wf6lVWKwNEBNyLNULUgmkXzgjCG1OuLAn7jWtaNQZT+b6ZM/b2Qn +hrGdHCcpvW1kpIfho3zMts4dVx28Z85JJlI4ZqfFZWwiuCj+x8OELdqtm2IYryiu +6dHRR+4WkgEvqL+1YF2RRxXIcSW2wFdZOggjXYobzC2wl9zWkTBPC6lKQjlKlSrV +ZZBKRwuHloHPt7HJTjWZTX28CbC/P+3l5NyMhfmqtFPZuhC4p7EAWwcXXDz1Gkxl +w5EbcTz01pePFj5oVfK5aUoi1JFZ9GSZFQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/destroy b/Zhosts/destroy new file mode 100644 index 000000000..8b5f7f5ab --- /dev/null +++ b/Zhosts/destroy @@ -0,0 +1,11 @@ +Subnet = 42:9277:1f1e:7599:ae4b:7cca:b4a3:fe47/128 +Subnet = 10.243.0.31/32 +Compression = 9 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAofIF/j4ddJEG0sOJJNp6hVXqLpj9FPw6a1vLLqZsn/NuZi3QCZ/w +xj1nIsQbc1TnPLluHhpn5kuvzb0lThqmPJvX2uXnbq7WH6OvRyN/FV/Gn40txdni +MFWD53zGlAle1/Jdt+to/+0mvRP8U+dKuggemGljX2nrUxaJgVRVzynvkys5l6vZ +2oMeO/LnFcAt9ZkMFoqDfKB/RPOqTD9k6Sz8xubVtasQ4ufpQl8Uv6zcYl1PnV7C +9Pj5MMtQVtRRV8hljImqpERunU6ZsXhyqI9O/cVw9+QkWf7Qh5E0vUKTT9FISyTV +nmQ9v8JGV2zPDVMmwP1ewyA1W9YhGiFd7QIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/devstar b/Zhosts/devstar new file mode 100644 index 000000000..875f62e2a --- /dev/null +++ b/Zhosts/devstar @@ -0,0 +1,11 @@ +Subnet = 10.243.0.133 +Subnet = 42:2be0:92f5:3546:5f0f:8f22:6244:25f4/128 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAwkkmkhGMnI0x5VIgdLwV2SvXO9Bw3Sy1U5AToZiG2dSB+OiwwLir +JIrTHv4r73lMLROJjQhznq06VMmNviC82178H7/DZqgSqlGU7d9p1Okd5XCs6LI3 +eaL5mYTXFuA+PMHVvYqQ5fDQRQ4KoWmlSV65XUPejPlxtl3FXqOSHVuuBSbka+St +qLyWLAh9d8AfWjxbAIv41fl6WOyw2IuDc05K36aT/TwzA3ykl+ekNObAjvpI0cxI ++d3j8H8JY5jDcg1hvWT06JqpUcTJRkWLL7BBdQvWySaBcET1Flfo8eYVqVQDK4kU +XV/tA1ax7YPFBQ7Lh3Ru9nEC45Gv6R4HbwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/eigenserv b/Zhosts/eigenserv new file mode 100644 index 000000000..f59667940 --- /dev/null +++ b/Zhosts/eigenserv @@ -0,0 +1,11 @@ +Subnet = 42:c9d8:ab9e:c7fe:43ff:0268:f862:42f7/128 +Subnet = 10.243.0.32/32 +Compression = 9 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAyy060LWeo6Z+Kp2h5LtyMx+KGdxL9/WjWfc1yf/YZ8lhZutNb+Kd +u9AHbnrqTRWRslP+toNiC55aJ/KlTBFQA5nBu2DC1KdG71AX5th7bRvUMfEAEG1+ +7MpcyuC8Owvleg/b4Ihr+/kQNbIPPhAraPJU780Oy173jnt+PCIYY+aTnEuO3UBh +yt3oPhfwMa2ssPL8GfF3YL9Pvh4UEbUu1E7zSOqzCOzH3od5I/G/TjvfHl3u4tEr +6kWHVqOYaKMJlqYvb7tnw7QjJNFhVneBJN6eMaWfcmTp2G9S+SwOppW3P4yRxrar +GLWPgEU6to1wduAktecWU/oWambgXb/hUQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/elvis b/Zhosts/elvis new file mode 100644 index 000000000..c98ce7865 --- /dev/null +++ b/Zhosts/elvis @@ -0,0 +1,12 @@ +Address = 94.79.154.86 +Subnet = 10.243.228.181 +Subnet = 42:42a3:7ad4:f156:906f:f6f3:943b:7b1d + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAv7wpfzpazvXzKJsDkJ8J9zsTZRoI6LnpSIcO8hLQcHNk6LTWjBy1 +xdnsSe3eQYxNmZPKi28PdbMo4YQlFdewLSB69PP6ZX5ISNXVlCZ5Cend/kfU1fXV +tcZ4JQCl/adHqg8niLAODfnXhwVjMpllgq6gCg5mVPILy+CZ08OM6Ij7Q5d+3Jr4 +1zMvAXyeuNQcL+MkBveblKC6j/e9fqaK86sUh/4unfgmkB7GWjqFwmoHZepR83o9 +HTBmKxEIDKYjLWVXV1Wph3/JN/65igTtju26cVarUmTtGIhU44NzCi+94+wKuJMU +Bbjk/CnuWQoU2ABPsxtW3r6m4pSDhypNZQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/exile b/Zhosts/exile new file mode 100644 index 000000000..25d68ca4c --- /dev/null +++ b/Zhosts/exile @@ -0,0 +1,9 @@ +Subnet = 42.116.243.248/32 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA0H+DslKV6EDCZWBCJs+MFyvTR9Ej0yWthIHKzFrA4qI8rxskrGGP +xhb16keQLPCAgBVVVmikh3pQVMq1K6ry5Of0uM7rU7crBzRfJ8zpGZXfYlBDFDAd +Vg8wwDvEYsYCAKrZbYIKb88WR0mT7K47ipTbXd9utzmoWGa/SuGtPkYOigcWYMRN +4QClPDLdICQvdohVvfd7/LXRNuwrWOJcmtLitTEZY9lo2hhv+ZKs7PBrmpTBhTMY +N2Et69tVPQh1t7cljf3Esij5AUczv979C9Lvukj8Kb51Et0T9qcGAs/M3b64X7FO +KjWVVQttj3AkjgLZ5OdYlm7uRRmYmKQ95wIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/exitium_mobilis b/Zhosts/exitium_mobilis new file mode 100644 index 000000000..3b112a0f7 --- /dev/null +++ b/Zhosts/exitium_mobilis @@ -0,0 +1,10 @@ +Subnet = 42:0:0:0:0:0:0:AFFF/128 +Subnet = 42.127.75.187/32 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA1zv7tkHIUxJX2FIFcfakvZZYuI3VH56nkQYlpTUzO9WscMF1BgoH +WKOvHy9QzxAJgqmceroZKbV2PIws/PZgwk7vNGPmmZtzkTuNS+RXd2y1WwKTHpxT +IZ5TKo9AGuU4dcMLAR2xheCJzTRNoxj4UrUgN1WkAqdKhN0Dysglfb+FuUiMdbop +rbzsKhJZKnJOnS00Z9K7ZrTWkYQR6nhMuZ0EMggc+pa5NesHfIoeitXQxB7tz9M4 +6O7xE8ZkECdKXmRBGhSU2ghnCqiomDj9l6L6S6Ms8Q0ElPM78RTh1a32Euj9Ffob +v4gQuzI0fUKe+pbm3VC6B+9awkdd8n1AzwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/falk b/Zhosts/falk new file mode 100644 index 000000000..a8c9e2f21 --- /dev/null +++ b/Zhosts/falk @@ -0,0 +1,11 @@ +Subnet = 10.243.120.19 +Subnet = 42:845f:0432:a816:c623:fa89:8485:8700 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA961eCQE562VPYjuZtd0+FNRfUghvD2ccjUlihMjzg46GAK+duqK+ +4peWklGOL4eRYQBg6G2VDzWiU2MxXVbXUZaMrxh7fTc3G3LdbqTxzAv3GQKR/6iA +9bGUf6u4ztVNAcj2mrY3mfs4gMlBQyQ2wcM0ZUpiAMaRB4cdq7I4GVHbYTFYfQuI +2zdnr0w8AjlMpFFcD0ExsWeppiJsE7iiME/S2VVfh2NrEpAKQbLH9fKrfkiJA/+9 +0VIH9wLLIYngUtQKbvEQ5xgx6ybrg0vO8ZqZ1ZGXYxOQZzWzPP0tvDU0QHSKYSWb +FjcOf1lWSWjsjHxMl/Gh57hjNJFCbs8yjQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/fastpoke b/Zhosts/fastpoke new file mode 100644 index 000000000..c897a97bc --- /dev/null +++ b/Zhosts/fastpoke @@ -0,0 +1,12 @@ +Address = 193.22.164.36 +Subnet = 10.243.253.152 +Subnet = 42:422a:194f:ff3b:e196:2f82:5cf5:bc00 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAs4p5xsQYx06v+OkUbc09K6voFAbkvO66QdFoM71E10XyCeLP6iuq +DaIOFN4GrPR36pgyjqtJ+62G9uR+WsB/y14eio1p1ivDWgcpt5soOZAH5zVRRD9O +FBDlgVNwIJ6stMHy6OenEKWsfEiZRN3XstnqAqyykzjddglth1tJntn6kbZehzNQ +ezfIyN4XgaX2fhSu+UnAyLcV8wWnF9cMABjz7eKcSmRJgtG4ZiuDkbgiiEew7+pB +EPqOVQ80lJvzQKgO4PmVoAjD9A+AHnmLJNPDQQi8nIVilGCT60IX+XT1rt85Zpdy +rEaeriw/qsVJnberAhDAdQYYuM1ai2H5swIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/filebitch b/Zhosts/filebitch new file mode 100644 index 000000000..64c88cb0d --- /dev/null +++ b/Zhosts/filebitch @@ -0,0 +1,11 @@ +Subnet = 10.243.189.130 +Subnet = 42:c64e:011f:9755:31e1:c3e6:73c0:af2d + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA2VjW30A3uQoo5QwbFTnl5fuGg81DZVu8HXmDwgEkhZYr5Xf3V5/d +fmPlX1igzatWYX0OylFAY69r0V4dqeTubIf83sz1eqtpXjK4czG8A3wMHEXj5Pzs +e1Qh8K4rHMEATc7Y/cwpQBi2THn2bhufqgaz94m8HrStCZcKCin3fDMbE01WHWX1 +KFqeBtUd7b9pWbXKlLBNpHTZoGxVQk0Hto9pxYzHecRsbQXykYk3Rw2tSuf0aH99 +oY0i3LjOb+f2oq2S4qVHqHZsMJfDVr+x2/LP1SIcc1lVTztWSSAzZEokE0/ejvXf +wkquBVHXdl6LuzH+/V1I7OsaMhHShYu1LwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/filepimp b/Zhosts/filepimp new file mode 100644 index 000000000..c689c8852 --- /dev/null +++ b/Zhosts/filepimp @@ -0,0 +1,11 @@ +Subnet = 10.243.153.102 +Subnet = 42:4b0b:d990:55ba:8da8:630f:dc0e:aae0 + +-----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----- diff --git a/Zhosts/flap b/Zhosts/flap new file mode 100644 index 000000000..ea6aace53 --- /dev/null +++ b/Zhosts/flap @@ -0,0 +1,11 @@ +Subnet = 10.243.211.172 +Subnet = 42:472a:3d01:bbe4:4425:567e:592b:065d + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAwtLD+sgTQGO+eh2Ipq2r54J1I0byvfkaTBeBwhtUmWst+lUQUoGy +2fGReRYsb4ThDLeyK439jZuQBeXSc5r2g0IHBJCSWj3pVxc1HRTa8LASY7QuprQM +8rSQa2XUtx/KpfM2eVX0yIvLuPTxBoOf/AwklIf+NmL7WCfN7sfZssoakD5a1LGn +3EtZ2M/4GyoXJy34+B8v7LugeClnW3WDqUBZnNfUnsNWvoldMucxsl4fAhvEehrL +hGgQMjHFOdKaLyatZOx6Pq4jAna+kiJoq3mVDsB4rcjLuz8XkAUZmVpe5fXAG4hr +Ig8l/SI6ilu0zCWNSJ/v3wUzksm0P9AJkwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/foobar b/Zhosts/foobar new file mode 100644 index 000000000..2c77b79c4 --- /dev/null +++ b/Zhosts/foobar @@ -0,0 +1,11 @@ +Subnet = 10.243.135.219 +Subnet = 42:edd1:d518:f7d8:ada3:1ce3:f4f5:a986 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAsCu6xC0OctUKu0UsscOWfyQlMtMrD0Pt/wB+IDOnkEgDKqcTYGXW +h6VqMqE2cQhV3ThoxqeIPnQzwiMuVd0n2q3ZDexfYvHmqTZoaMrQZJlgY4rDx8jC +USFqnvtkJbOxFBiS3c5yjOIybGSGDXrAaxmn80xewNIsdSqaY1/2FxKwx1Fn+Kf2 +hIQOEYkdLhwPso+HyNGUwVKjsRVCSWdJSzBHB38cPZRoPpcmRHOTs/Jtx0b4RXQr +tVYW8i+Jq6hCt9sDLJexP9unPGl30Gn052noj1t4DRCPFpOYSLJFcGU4n/OzYbzY +O8VB5DjgGK0eyEXvtByxvWYPnuRwSLaH3wIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/fuerkrebs b/Zhosts/fuerkrebs new file mode 100644 index 000000000..35bbcf181 --- /dev/null +++ b/Zhosts/fuerkrebs @@ -0,0 +1,10 @@ +Subnet = 42:0f19:8a1e:7865:721b:2378:bef7:1159/128 +Subnet = 10.243.0.144/32 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA1HoKqh7HvXCKybe2FNBI/wuOvkZuftL0/DDZfZtPlCRtdcOA4XFj +hQng5+VE3NG0yKcRs59U8iHSeN9b7Is1YF4q0RtM9YQTDhvS/vfpHDq42ftjMs/e +MIFvYBGr2WIOzOYPiACURRcaMmoAViqK2Bwda45jORPUGo1afibH9UcDs76lFuaI +f3mUZvLlqdJEtG040WoT1douGWtUWkCB6/pVUgLAurncOz/XiSI3GFzkMUY+0pT6 +0G34AcYqvdQyxH3x0ebclFlfY2aPStf6bGMejcpRJm4M02xF809DVYlUL3mG6krF +MdWP85dCQ4V/RL0HdZ9PEjlVhgNOF1aQowIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/go b/Zhosts/go new file mode 100644 index 000000000..de9ebeb78 --- /dev/null +++ b/Zhosts/go @@ -0,0 +1,13 @@ +Subnet = 10.243.109.132 +Subnet = 42:f9f0:be1f:b191:116a:3db0:d546:70d2 +# dn42 routing +Subnet = 172.22.0.0/15 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEApKt/lYqRgl4KE1ouSi5nbt7n7FEjECkGtkRhLFDJs0uWNvPj7wEh +nTtqzk7lJ8upHgmNN+1w98n2bcJ7Qcbz8vCcMEO7MXdlzGH9vet/g6ZgQ/Z1ijHl +IxYeH7yyBDLoJ2gghMhiSF0cezFDmNKPMhN+cGr9Lou54igK3I5CMIMN8cx0Fu0G +uLAxvnZfxIzzCnrF9xvZ6i3g/rEcaGjxmAysCW8SQdRmBKlkzQaUbLy39V2Z5y6m +SWR7gIGgMVCkpSeWUVSi05wgnMhoEu6LEYTBy/3bPK96O/Y7JBVpYUHqk/ya2PNR +eaHfEpCrKsek4t/5hcLk64Eo/ydzeU+gAQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/gum b/Zhosts/gum new file mode 100644 index 000000000..9749f975a --- /dev/null +++ b/Zhosts/gum @@ -0,0 +1,13 @@ +Address= 195.154.108.70 +Subnet = 10.243.0.211 +Subnet = 42:f9f0:0000:0000:0000:0000:0000:70d2 +Aliases = paste + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAvgvzx3rT/3zLuCkzXk1ZkYBkG4lltxrLOLNivohw2XAzrYDIw/ZY +BTDDcD424EkNOF6g/3tIRWqvVGZ1u12WQ9A/R+2F7i1SsaE4nTxdNlQ5rjy80gO3 +i1ZubMkTGwd1OYjJytYdcMTwM9V9/8QYFiiWqh77Xxu/FhY6PcQqwHxM7SMyZCJ7 +09gtZuR16ngKnKfo2tw6C3hHQtWCfORVbWQq5cmGzCb4sdIKow5BxUC855MulNsS +u5l+G8wX+UbDI85VSDAtOP4QaSFzLL+U0aaDAmq0NO1QiODJoCo0iPhULZQTFZUa +OMDYHHfqzluEI7n8ENI4WwchDXH+MstsgwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/heidi b/Zhosts/heidi new file mode 100644 index 000000000..c8af51b04 --- /dev/null +++ b/Zhosts/heidi @@ -0,0 +1,11 @@ +Subnet = 10.243.124.21 +Subnet = 42:9898:a8be:ce56:0ee3:b99c:42c5:109e + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAqRLnAJNZ1OoO1bTS58DQgxi1VKgITHIuTW0fVGDvbXnsjPUB3cgx +1GEVtLc0LN6R9wrPKDaqHS6mkiRSDVScaW/FqkdFhTDaBJy8LfomL9ZmkU9DzkvQ +jncDjr0WoR+49rJHYsUULp1fe98Ev+y3VwVdJOOH92pAj1CAAUdtfG7XcGyHznYY +ZNLriGZe3l1AwsWMEflzHLeXcKQ/ZPOrjZ4EFVvfGfdQdJ24UUF3r4sBypYnasmA +q8lCw9rCrFh1OS6mHLC9qsvGfal6X4x2/xKc5VxZD4MQ/Bp7pBi1kwfHpKoREFKo +w/Jr3oG/uDxMGIzphGX185ObIkZ1wl/9DwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/horisa b/Zhosts/horisa new file mode 100644 index 000000000..ac4ed6dab --- /dev/null +++ b/Zhosts/horisa @@ -0,0 +1,12 @@ +Subnet = 10.243.226.213 +Subnet = 42:432e:2379:0cd2:8486:f3b5:335a:5d83 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA1hhBqCku98gimv0yXr6DFwE2HUemigyqX8o7IsPOW5XT/K8o+V40 +Oxk3r0+c7IYREvug/raxoullf5TMJFzTzqzX4njgsiTs25V8D7hVT4jcRKTcXmBn +XpjtD+tIeDW1E6dIMMDbxKCyfd/qaeg83G7gPobeFYr4JNqQLXrnotlWMO9S13UT ++EgSP2pixv/dGIqX8WRg23YumO8jZKbso/sKKFMIEOJvnh/5EcWb24+q2sDRCitP +sWJ5j/9M1Naec/Zl27Ac2HyMWRk39F9Oo+iSbc47QvjKTEmn37P4bBg3hY9FSSFo +M90wG/NRbw1Voz6BgGlwOAoA+Ln0rVKqDQIDAQAB +-----END RSA PUBLIC KEY----- + diff --git a/Zhosts/horreum_magnus b/Zhosts/horreum_magnus new file mode 100644 index 000000000..3019e9cf5 --- /dev/null +++ b/Zhosts/horreum_magnus @@ -0,0 +1,15 @@ +Subnet = 42:0:0:0:0:0:0:affe/128 +Subnet = 42.35.89.21/32 +-----BEGIN RSA PUBLIC KEY----- +MIICCgKCAgEA4PcEqnw1ZrBgPl0yNO7eQ9aJpV4HKlENVhc/cobLh3dQgbmpw2Qr +MQODR5qPxY+WmyZiQeU5sh8WutfpVn6xBCmR7QDqA+xpPhe/Y6uqWGDjxNftnetz +gphYv/nPGj0Dv5mo2HGPFK1VG+kp9k+vlZb3r+03OVFrIVHsUg6qE4e8o7pN4OmF +O10i85csMyKvSfA/rNHC7RdYP0tVLZTw4ZMTQh5t6zr/foHMr5KPXGVM/hjUWXW+ +ujSxUam6JxS1wk1zFp72Vd3X+JQH1eaDHidm3BBVAvCynyhUyaQh7nSjIDWZdGqQ +GmBcj0M05o1tVGV/7sgQUTNHiLaX6vE35hQoq0Jr2bhfIzjhESLl7HuBMpvDntLE +Tv+c/R3qryTNBBHFZOvYU0qx7I0cq5NLx4BqUXd6EykQvLZ53TyjFlINGQuEZXsj +LOtyAj4n2EEg6WmSUhrB+tyowqumdT8ltemuhZ2zDmimep9EvMiZOVns8VkTqmBw +lRzatTHS5tv6NieDzWTBuMqZiWjgpK8GILUn5e/ecIT2xTSVvo0jzIBwKtFpwf+X +CkBB0tNlYYmDmHJxiKWBsgw27BFmQI59h3wGHXHSDRgShLBjNH62Lm6omDwivDJQ +CJaTYPIsL8sdoCglCIV9NwUkj8tM+cvxZiZjvB3zizNxL57ZqpAcNGsCAwEAAQ== +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/incept b/Zhosts/incept new file mode 100644 index 000000000..348e44b1b --- /dev/null +++ b/Zhosts/incept @@ -0,0 +1,13 @@ +Address = 77.95.224.63 +#Address = incept.krebsco.de +Address = 2a00:7b80:3008:3::fafc:241 +Subnet = 10.243.0.174 +Subnet = 42:a2fc:1c89:65c7:6e60:1f62:eaf9:e9b6/128 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAvy4J8CewsXeFkFOLqDwiTN+3fF0yjmP5ZVtrLrPJn7Ux75elTdn3 +iLcJYTgaO1/dmw8fPD5DkNnb3wiadZiFGXpsTd1jD69mHcn/6RY/0Fcne9qDiqgp +vafpUD5UP7/7S+l5kkD6n7HVRblLXJIJk6Z8RCRN8OGyfjMM1IKeoR8kR1+85fpf +C28fnU3Nz3YJDazOaMD7aGiyGZDRyY+wRjbWtMXE/NH8ydN148ZpFaMvBjM7fl/B +q8XS5Rs9lFlW2jpex+W2DNq5t4QRMUDrLgD0gug0UiYCYw4IJg7OiI3g6vwjSDtq +hRxpQ4nq3avmTR/NWzZ97PP4eXTCIQhiQQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/ire b/Zhosts/ire new file mode 100644 index 000000000..724158cb0 --- /dev/null +++ b/Zhosts/ire @@ -0,0 +1,12 @@ +Address = 198.147.23.143 +Subnet = 10.243.231.66 +Subnet = 42:b912:0f42:a82d:0d27:8610:e89b:490c + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAwofjmP/XBf5pwsJlWklkSzI+Bo0I0B9ONc7/j+zpbmMRkwbWk4X7 +rVLt1cWvTY15ujg2u8l0o6OgEbIkc6rslkD603fv1sEAd0KOv7iKLgRpE9qfSvAt +6YpiSv+mxEMTpH0g36OmBfOJ10uT+iHDB/FfxmgGJx//jdJADzLjjWC6ID+iGkGU +1Sf+yHXF7HRmQ29Yak8LYVCJpGC5bQfWIMSL5lujLq4NchY2d+NZDkuvh42Ayr0K +LPflnPBQ3XnKHKtSsnFR2vaP6q+d3Opsq/kzBnAkjL26jEuFK1v7P/HhNhJoPzwu +nKKWj/W/k448ce374k5ycjvKm0c6baAC/wIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/ire2 b/Zhosts/ire2 new file mode 100644 index 000000000..6b9d0a79c --- /dev/null +++ b/Zhosts/ire2 @@ -0,0 +1,9 @@ + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAwXkn0H/+BUiARYSzZCpjqEwGeDZsbRHoWcRNlmlP6XjPMbKKQBHf +gdERPevhoGaNtQdW6SEA5xb1cJDHZILHZtpJ63hs6999gB9x/n4x7eR6C9d7HPDD +rGv+tBdwo8QWOIQIVnSAr6WdduSg2CyZbHd6d2Xd12vrfqJxnODSUHibrUusEc/D +XBK2n1un3znzk7P+KT0xXMtNPU2678tGuwsvSIOoDfDx9+2xuxGANeqvEOeSAgg/ +SUH5CbcAFI2/4AKWP4e/yxM26YoKdz1Fu/hx7WqKwYmPERrgcr8ienx4WFGG83AJ +CmiYwO23L4qSp1KZT8SbGDh2YpamZg2BZwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/irkel b/Zhosts/irkel new file mode 100644 index 000000000..b197e5d29 --- /dev/null +++ b/Zhosts/irkel @@ -0,0 +1,12 @@ +Subnet = 10.243.253.117 +Subnet = 42:1970:cb1b:d9e2:4603:c1fe:ee00:8145 +Address = 2a01:4f8:140:21cb::5 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA1i2XcUold9p5aa4qGv2o3hMwlIt4+CBxuOwnzMOp4WjJyGWBrQiM +Lw9qpwvc0W6c/MYTAUzkq42766jlYRzA/yse0/DeKJvF5BrCk36eH9R2okK1A7K5 +tk725pTf6D37mkjbiupo7FFfHNGjFdSH7174ZpK/N81YWgrGo1cQUU8JJKGgFv6S +XZWiWbJWKnLW/a4zyg7wnkH3KlvOAthSNgyrVqZazi6gTJ12kZTg9DGg+Q7iTdi5 +oXc4hilymCdF2fDfmG7M3naaRQKntjlpJmc2Au7wTVXj3525c3Ms+1k//HlX8DQK +a93ZJA25nfpoYznx73lz/IASO2n/jn/3mwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/juhulian b/Zhosts/juhulian new file mode 100644 index 000000000..d9da75aa0 --- /dev/null +++ b/Zhosts/juhulian @@ -0,0 +1,11 @@ +Subnet = 10.243.0.38 +Subnet = 42:449f:b00a:e973:514c:3e9f:97ed:aac2/128 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAnNyOsNItOzNQndheZ3ppOMWvIOuO1wgLXArINS1ORcgIAJmLpqDI +whsZFCVifwAXsdeBJyyZOPZrc2PQ4F3KB9ByX6PQ9jqAhun1aE9SDDqp+woOrTlP +BtJ/8zAmRhrfak61TxpeTndLk95xOLaCwvS2P4SJLIcyutTbbFdBCqpu7cFUGOOP +qCKLX7/mv2L+GNmQAnWZ5HwXQzBS6gNaNIcQ8mPCUAIZgRU2T83x/tnyH1RlATK2 +lYUWRM0ie+dRMhiDcwmmZrwYl8wzyvuBPEr/p8ZBM2tua8GlQzJUJl44AiAcx3w9 +0EB5MIRL5Qb0yBvXD0yR+bDizqvhd40LvQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/k2 b/Zhosts/k2 new file mode 100644 index 000000000..588f96cc3 --- /dev/null +++ b/Zhosts/k2 @@ -0,0 +1,28 @@ +Subnet = 10.243.97.72 +Subnet = 42:717e:2a17:e7ff:eb6f:b760:5af4:7da9 + + +-----BEGIN RSA PUBLIC KEY----- +MIIECgKCBAEA53djolgdUlLom7SDi+x1jscvLduf+fzPNlVRk0c6UtR54iHpzVrg +7OT+PZEAirhWrHyhQQIRoKRK6vRKMwm0PfrMjQXo+1zhBVD/JiPzVGSBfETqVI8E +jeCS7EaKsZ8gRdWZ4QkDfaQhdWA2RrvVcwpVVxMkjYsHj3EtaHkWGcJs1JAuOsK5 +Zo8ZbxpzgcNz3tiFR4PSp+N3ARE7t2sj8U6z2lk/0TIff3To56u8rDasUGAKf3Rp +okQmG0EGgTN+qJs/dwIdeKtxcZrRCVd68shphiYE9wC4WXELgJJ8jo4tIiZRu7n4 +lXRn9zQYY2lax4OlBZSkRiaPEISwv5Vv48/H+I1vRaEhx02QL/PnODWSlqMNGiic +wMBh+DdvQIXRm1W0xxlsY2YOo7GdCywJyLDue6v7ykmQBFgYqP/gVrsoR1y68IdS +3/dT0lYhrNL+PwKjI0iXPBvA018yw0Dvdgup681C9nzdyvd7y9NorxjeE9Gl9/yd +X6W8ZE2WIAsli2wGsZLuedcn0mZ25flXbFn6OhrPhP++Kub5IBid/iT60KvxY6H1 +l/DEBJJmFJBsBvFPyFXoEkPJSD/Uc/2veMlb/ues4ur0eBMVML1ZaiK0EzdBYfCv +kgnVwQG6c5+0XkMk3x5kQ93E0Mr5whILK2upI2tBygAN/SpTsoNXvOFIHw/Ksmcl +Eqly4P7DtQ9Lu+1DkoLa4ltcejZj0Jjy1j3AI59v0p3Ygx2OWHFv4H5GVjq1T2Pk +1IAU8X2UTNmcQw5UReJxkNdREOw/XI2pNSBKBDOCMKXH4+a7P3GwheadQiVU5z/Z +ie/wbsAtp8MGd67aN/i2nrTQfk7RZzIec/UG1XhlQPmJAVIfS5QnFnw+cTAMtYeU +wHHe4Q3m2+bikBFoqdhJo93Ut5ywGeueKXSyJX6I5AXiiiWnme+IHuNH0G5568yO +bA9OwDLt4C2U6BFEQtHBA0I8Hh2RT9ObrLUVBUK1aAujLvGvfPhq8QYCcWDJsvxm +/uAJGb8UdPScTEjftYTWIc1/jikIpK70qOeKiQfxT91hQEBw5mgMCRnAy4m9OjCI +ntVpHGpylesZWM/na8gZe4lo2dXI7tc2urpqyOThkbpYXNdlNG4F/QcuP90QmiV1 +hyriyHPjbSwIRM3aX7Y/WKwzky0swW+J6mW78yqa5Gt4SzDQxd3KHDAP5lZuFgEM +aHLOkmOoYlOxWi8eOIWByoH77GFyudeH0EMZV8pwCOTw3GUa1ehhOUlDD6i3CH1/ +gJOQjoKC/ndny8Qz/S+tCLjRHIpQAx36yLME3AvXoKXctuZsZy/9CAsLt9tLZJI5 +AqC/vsOcurKsk1i4GtwuCFnu3qr4OvhwywIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/kabinett b/Zhosts/kabinett new file mode 100644 index 000000000..e434d4190 --- /dev/null +++ b/Zhosts/kabinett @@ -0,0 +1,11 @@ +Subnet = 10.243.213.120 +Subnet = 42:e792:1d5c:c89f:f932:e954:6ada:1dbf + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA1sVtqyeCdKB1nabs0FOC62J+J+grP5B/3/s1cuAxcJmER+NaT/Kv +rvQeB13BmrIjfJTBaezdR+wp0RiPB7s/aMPjWwS5rzh3KhSFk2SFpnLjB2WIpKqs +N9TQEf2xB0TBWHqcpSqSthjP3SOGNP7gt5l0D13QIHkRQ2xX1PqYikkYi07cQLO4 +rwXrlEBOY8Dn0GR37NA0k+zt0AIdJ78zXHNjVn5hRj8aLGKB0q/FOtdMNRYEGD40 +An82Y2sW+b7U6Tnrw43TOO+AP/OrclEjmNDTRqYLiVAeFHXKjwbCsSlof0qmoipZ +H+nbsB3qkFpNEy1cA9c/pqHfSpqV3WihRQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/kaepsele b/Zhosts/kaepsele new file mode 100644 index 000000000..fc8bf4587 --- /dev/null +++ b/Zhosts/kaepsele @@ -0,0 +1,11 @@ +Subnet = 10.243.166.2 +Subnet = 42:0b9d:6660:d07c:2bb7:4e91:1a01:2e7d + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAxj7kaye4pGLou7mVRTVgtcWFjuEosJlxVg24gM7nU1EaoRnBD93/ +Y3Je7BSUbz5xMXr5SFTPSkitInL7vU+jDOf2bEpqv+uUJAJIz85494oPS9xocdWo +rQsrQRAtOg4MLD+YIoAxQm2Mc4nt2CSE1+UP4uXGxpuh0c051b+9Kmwv1bTyHB9y +y01VSkDvNyHk5eA+RGDiujBAzhi35hzTlQgCJ3REOBiq4YmE1d3qpk3oNiYUcrcu +yFzQrSRIfhXjuzIR+wxqS95HDUsewSwt9HgkjJzYF5sQZSea0/XsroFqZyTJ8iB5 +FQx2emBqB525cWKOt0f5jgyjklhozhJyiwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/kalle b/Zhosts/kalle new file mode 100644 index 000000000..8238887c8 --- /dev/null +++ b/Zhosts/kalle @@ -0,0 +1,11 @@ +Subnet = 10.243.154.218 +Subnet = 42:05bb:0d2f:4f25:2c6c:1217:6264:dee0 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAtILSBsb+ISWiyUjJHWN5JWNY7Z5hxxxFADQbK/1ZdlCdeIorQI2j +gDHdWgck9NasXXa04I+5jw2eDLjU26+r+T1vP/fdOg5yLOgnknL4jkHFVCb/ScRM +2JZAEXLSAz6g33ks2snQzuyAPTEvZhp49+PN9VmX0JBr/ErKGZzFKVVU+gREVRKa +fOC4+daKrmRzZWg9DFaH5DIrIEiXidixuX/boHprJeULdp81NbnymXxhc929UWbV +5g8BnuTlKqDDM7stJC4dwKizrv6wXuH6GD0OsDiU8JcoxV3jvM16NmgtAe9BKH1q +tg1fIY6f67eIihr3Lnjb3UPw3UqwFXosGQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/karthus b/Zhosts/karthus new file mode 100644 index 000000000..75a8d15d6 --- /dev/null +++ b/Zhosts/karthus @@ -0,0 +1,10 @@ +Subnet = 10.243.42.13 +Subnet = 42:42:42:42:23:23:23:23 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAtGL2Gu8Dw/NsgJNcu4XY9eWUM8prL0JC1UfnACXuOCPns+Bdm/dG +uVTHdejjxv6y4FjWNCoD+45lP31QfBIqIOtUsfz/4ox9bvyTOUWQCe0NtBs2SMyO +O1eWSD4cnNfskYdyOHQbD+KSSiksyzaZdcqqx9FgWo1VT0f+oElnZ4nLBKRNBguN +GwVLjreE0GSxhcV2r6oHsaT+udvQ/PlQgn/zia2tKT+OI54WDJGXsKEvwRRnaRz5 +33Di58g3dffo0i7B3S889sa5B7l1kh229cw24Gc0AOtmm8Vacle6iTw3Eg0uLzxM +nKpOma0+K7CoE4IqSZy350iTgheHwq+y0QIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/khackplug b/Zhosts/khackplug new file mode 100644 index 000000000..c149d93b1 --- /dev/null +++ b/Zhosts/khackplug @@ -0,0 +1,11 @@ +Subnet = 10.243.217.107 +Subnet = 42:ebe3:90b0:539a:6ef0:0910:b724:00b1 + │ +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAvytShP1vgYLDYJhiC26Vc1/cVJOptUnuyTc8Id9vkCkgHZRpKs3T +jO2KRaQMDWMXfXkMfVp84/2Q85hpUzYqXQHaNzitg9nHGR2n+a6zfwNKWAm6n2WK +AMsPf1weamzs6EfCm5WztqenoHKNUxpzXVyLJES/WK6e5ba7FEpszZx+ydoc5GjL +kezqch5p+U/J2JoUx3aIpQuWvc0i/4KYOuGzlWgUYLNyqL1m3gBkahiPuOtzf9Ul +EP8QY/GQa1HTFuhLS0Y5nVjZvWnjVVEloXbq9SD2I2fc4GD4+F8wtFMsJyEF2qxY +XfSLTlpHaJbSBNiopQyWG62RZda/p0yq3QIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/kheurop b/Zhosts/kheurop new file mode 100644 index 000000000..bbe93fe0f --- /dev/null +++ b/Zhosts/kheurop @@ -0,0 +1,12 @@ +Address = 91.250.101.180 +Subnet = 10.243.78.78 +Subnet = 42:bcd9:7340:9628:9604:7068:5061:4976 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAqIFB0Nk2eSg/K/dJGOEegtezhn5P1RUi1ZgxoZoTR6K4T/tSbD2u +gjPU53mhRN622lLayMMXtWVKdhO4IUu3mKfemA/8/fy7Qu9T51UUS+NXu/4g5X3W +Jg2a37TrnQUrsqNud7QQhPTGF8L0+UT2mHlfRYggtAO1J2pSWtsqDiMAOD+89zvg +Gta8aMdaFPhdkfboaHH6mVJBFOkrjQJE4RiUzwZS24PKh6gRJV4cENdcNRYdVwhv +dOM+SWzPZXDTAVyG6HptvSdfDUKi4hJY4yS+TIf9j7yR0YpUie3CsbN4a9jP2KVt +/NhzZ9nNaEv6O8Nk+7Zu8OaxUPgctEFYfQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/kiosk b/Zhosts/kiosk new file mode 100644 index 000000000..8f53a08fe --- /dev/null +++ b/Zhosts/kiosk @@ -0,0 +1,12 @@ +Address = 2003:6a:674e:1001:211:25ff:fe05:a54d/64 +Subnet = 10.243.232.122 +Subnet = 42:1ad1:b481:00f5:aab8:f8cc:51fe:4b87 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAwohazY/T/cp5Na3zLEWhz9Lnz78PladH7CMN+1TLzNXgK96bPvrN +6ktxIFc0s4m/jWW1AZOjxxGZGmwvaGag9XH8NLMmaqtd2NpASI4c801wEVLuNpss +gqPAIhDdDWV0WmiDiHe96qQuBVNGv7jlHTuNghwlmgLF0csRDiZZDHn5Bq7plAJB +0kQSspvq7UpBzVHVlDefIIe15/Yyt9IC21S1o746ZIZ8RYCG63Mnbcs4vfShVxJX +NnD9++HJV39NA9ozR0bDQUw6s0rVHH/n5iWaktJZ23r2TG3O+7ZZj4QHmkng/Xow +pgIjcpIWlaqfG29Gl43SWgsVnphemvyP3QIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/krebsplug b/Zhosts/krebsplug new file mode 100644 index 000000000..ab9c966c1 --- /dev/null +++ b/Zhosts/krebsplug @@ -0,0 +1,10 @@ +Subnet = 10.243.0.182 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAyd4FnOIEcUDQDudDOhU4wwKT+lqV4RJMfg9QgZC2O3xTGvzsFeRG +aSMIDMkPzhJ/ggIWAzC+IM2kBv+YCRhu4zOnzWIo5IaC8Me2TZ1JhZ0nZN1YzEGD +LmBsnngO5L1VnWLYSKRALa5Kv6wQHHz0T6PlsvBQ8SWDG3IKIe/gOFz7eh1Z+ss/ +5XaiYeLMmukEuuilOJZhfDiZPmYOeFI5w7YTM+8Iz/oZRyf8P57pjN21R3feoyTm +WusgHUuRLRqSUHdYu/E36EyZ9Oc0WPk5yLUhstkPaS1Y35xMEhZfQQpIruQxOst1 +fgiOQg/gKmizzgzdCbfAf13dknkWsqoc0wIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/kvasir b/Zhosts/kvasir new file mode 100644 index 000000000..470172528 --- /dev/null +++ b/Zhosts/kvasir @@ -0,0 +1,11 @@ +Subnet = 10.243.103.166 +Subnet = 42:c039:e082:3c01:2577:a367:7097:6824 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA4Jp39vupT7tRf+o6H/ucM01lUwgd0UBCqnapUHZhWKVSAde91lxU +Z49unHxUrfQMzuJkY3MgsS/fyIC9eBHexwRpLnhc56p7d+tmLk1WZ2ysLifNi/k+ +AOvyBcwT3u/59VJGDcAyJwXeoX6CvX9nxUshGqQ2mkVUwbZEt5lLwtiDMnp2K5rg +dqQK6tBrmzup/yzppPPRSPwMfGi9Gv8T5OrWqwr78I7WiVkH9LBpudJqJHPFVreF +TTsN9a/4OWJGZ01M23IGcO6eCnynOIP7gxsmUEwSSxK7MEy2kxBKi/2+OtsCUOpT +QQRFu/MTVEFXl/cl5XyXOMQadMZEB6MjwwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/laqueus b/Zhosts/laqueus new file mode 100644 index 000000000..0bdef307e --- /dev/null +++ b/Zhosts/laqueus @@ -0,0 +1,11 @@ +Subnet = 42:0:0:0:0:0:0:1a1a/128 +Subnet = 10.243.0.12/32 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAy9lnH4qDSYeNbpzpcQyq2LzzxkVy2N1vGgKkVttzx0cgMvyRm3aX +wlacS+3ILBZ3tw+JuCKR9gjRluwKkqoReEINcAam/GbubJ6QBpV54goYm7YGOIuf +GkbWVk7Kts67KWWhZDzEL30GRv94K6e+m8e7rhnqrTgPyPk3oSwHzvPy1oaf6bTI +Y/aDQjohFVvQZxF8joKhAE8JrzjKAn8yXmX8VlGW53XBXAb88Ggkr5raMZ24Rcc4 +pdkOc7sFfVImH/ASwkcPi2xX0adlz937lD7rkn5/Q9B9AwsHb1yQKJgWEeYWOQ8C +F0SzpZiwHz5qB+eg3wMT0ZnvPJKitshyjQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/linuxatom b/Zhosts/linuxatom new file mode 100644 index 000000000..dfd09b514 --- /dev/null +++ b/Zhosts/linuxatom @@ -0,0 +1,11 @@ +Subnet = 10.243.173.58 +Subnet = 42:1c07:1a24:1a26:c799:3b44:a8f5:59ea + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAvGy172meTuwHfGZLVHi04+7jb+GRumqNRowffrmMOxFAq6wiL1E6 +7NfJFSc2/wmLZdTCnAtScVicVFZ8UEK2Uv/WMdevJWP63LxUOXpSFtoxNAlpSk9e +rzwxWj3VxHru7EZA6gu45ff4/seApy/jDy+hceOmOiG5z8VudoRYWe98IoO1ua0E +rtz415WP0xN+Mb4mGU48JSLYZkOHVIvkf+VVF5jXFbbnH+w0kkTuRMMp6Z7ETvdZ +RU9nKJ55sflkPhs1/ttU4cYkci55YPVGl7GCCr6Xw4oerIz/jHnzBGroh/wDpEXm +6RxpsC6DnVQUW3zw0DXuSKoAy0UoQPYqQwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/luminos b/Zhosts/luminos new file mode 100644 index 000000000..fe04b33da --- /dev/null +++ b/Zhosts/luminos @@ -0,0 +1,11 @@ +Subnet = 42:23:42:23:42:23:42:23 +Subnet = 10.243.42.129 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAuxgY9SfSCyCuTw2bPtC/He2/NZDYQOcGd8+5Bo6h1/h2pU+qKPQB +0digU617dG2NVMaT0qmzEz86e2avr0PQsyfhmHO8JNOTqwjyQzKcv3iA+B0jU7Gh +F/PaW+e+0O+a3LO27FCA0uuxEHyWaXqk53a3wKmjo4fuVy1QKOOoiaFaYLaaTgmm +8OJG+AKWR/ArihpopgAHFjiqB89xWVw5CgxHDwfzVcmI9SOAaEuTfL065XM4uoH/ +LnbtoyT8zN+He1AlaEJMUaWdo8SWfjBFyVrT1zRQ+0S47tlTCW8Neb0KKs+m9d0G +rAdv6+iFmQzpv76cgYQw2+AkqkUF8Y8xSwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/machine b/Zhosts/machine new file mode 100644 index 000000000..4927fc847 --- /dev/null +++ b/Zhosts/machine @@ -0,0 +1,11 @@ +Subnet = 10.243.60.31 +Subnet = 42:698d:4e02:4d70:b080:acdd:513d:70aa + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAvkLboZ6wRALd++ntUXfyzCT9G1pWSJNJhrdut8dPfz/+IIbx4thz +tbq5apWQRaHj6IILMiQqpfUkhbfz3WS2YP62f8nAzKLKB0zzRAJ1lQjoZOXQseQJ +Ydyf9dEDhRtnSnOwsmSDEch/2KhgCj+fdMcnbcoAg3PYJGzsz2ykEtoh80Rv1IQa +tW285CP2GooRp1gwy3WKL6at/uW6D4/tTIimHML5JbLKj7mH+3nOyrhRGyZP1b9s +XtdkePuaQKrIjmv4rEIYx2taFmmQp7XpC2m4Vdoy7WdIzR3WTgWo546IOygY1KIW +fDOH+3UoG5oI6y4hNNa7+NH8DpmdtzXYnQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/makalu b/Zhosts/makalu new file mode 100644 index 000000000..3d080ca52 --- /dev/null +++ b/Zhosts/makalu @@ -0,0 +1,11 @@ +Subnet = 10.243.90.132 +Subnet = 42:5ee8:8626:f03e:bdf1:562d:94d1:f395 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEArFuedyPX7kDeH2GwYD3UcRoFjGpTBJXjJzm3LoleyXOeYSdkZZ3d +ljIeEq9alf6UtqEvYH2HfX8m9fEcHxwFMmJ1CPEwkDZI2IgbLOYV0x2MWLShEvtC +vGeNyPt+TdiDqDhN8EyRvhB/KzEXdbCUZ79htf8lRonNLYPSRNh58CTZ18T/+3iF +vy6igdpj4JiLGzdXEggO0KToW5ZVCRjuEaH65BlXdjkCM0dk28FJGh/oakv7hjlZ +M6c3HJY5RAygO4uLWOyB37j38GDAseDYnNwnLt4jCk7gO48SnsS77efEghEMVVXK +qnSKbX0KCSvVOJbrvVyP/16o2521eGl3MQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/mako b/Zhosts/mako new file mode 100644 index 000000000..0488bcaae --- /dev/null +++ b/Zhosts/mako @@ -0,0 +1,11 @@ +Subnet = 10.243.7.19 +Subnet = 42:4522:2222:2222:2222:2222:fefe:fefe + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA0FQq5EDxcRUfquoDottz1urpT72PB7pReCSZ1fLGqK5z8+DLW4m9 +YB36xW4jJ8pct9iD6kKnX1JCNt11h19QZvc8GI/9pELV3nNaliz+PI1SQNhOrwM+ +Lza/lnddpmvQmJvF6TTLtuGqTANEZcJ7MUpLJ5x/XEFwIcZb9L30EDIaQQNeRyIs +xJbuAxHquKrb2Wpanm4hWNYqknV1W7lNbcvmONZ/GupQ411XBhXs4EIAA7fqBEcp +7FAgjgHIxiAT07Z1hBclv6CPDjFT4ieJAq6giCR/gc484x0UNwSpHBkalK558m4e +icDuVgajrCZ0ShIAQXgtrSpSM3Y53GUhnwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/miefda0 b/Zhosts/miefda0 new file mode 100644 index 000000000..acf001249 --- /dev/null +++ b/Zhosts/miefda0 @@ -0,0 +1,10 @@ +Subnet = 10.243.8.1 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAqrYc7LfSPjKpgnbfENU3oeAoFIRnG1CKHi0r4Tvy34anMBRHA4yY +olPC/IWiNoEadnCvlAEGtcFFh/xncNm+rW+BhO1WPLuo0wDe5fxJrkApuuhwP/lk +DMNrKtPOH6PV18yuQTtWgmiLo9gT15rRTDs8SaEf9eyTEV6zWVRDFDiFqwuY77iJ +GihKSlKGDYCUdT8TdaguUQ8akdAUhfXk0F33fAqTYwT25BDAXJdeldTLTb/5EADx +UMhnY0CsWgDYz9fpL5UNUDe3Gu53GghFS5RWvApasbzmlbrCwCF7MFDfc/yJFCrE +lF3Nm+GVqU6Uu6cNJ9VYHCu+uxk4PIU5GQIDAQAB +-----END RSA PUBLIC KEY----- +ECDSAPublicKey = DEwsTd8tdaQLx/o0EgIOl9l+d0MqDRLEVWnBT9imfRyuzXWatwgXotADc723HxhZ4NXlvuOu+er7PdWstif3nS9/qC diff --git a/Zhosts/minikrebs b/Zhosts/minikrebs new file mode 100644 index 000000000..b0d605583 --- /dev/null +++ b/Zhosts/minikrebs @@ -0,0 +1,10 @@ +Subnet = 10.243.1.1/32 +#Subnet = 42:0:0:0:0:0:1:1/128 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA0fu8F+XJ6hHsIj8QtdSZIhE+Ae2sEIY4dHcnHbCOeHJlOQQDJrme +frmG65BX4BMcClUyhvvMwlZIerFwsJoEwa39lB3/Y58OwSS9cNCZTShQPbyVy5wo +oS97tVUyQENMELXgodg7CUNaloVXGOyXgCOkfYOb5CpWi8NXNsSE1CjZc1XZNI2Q +2dFBzp6FtRcKc5x5xWuUMnw1Ll2upW2uHZWfgRtgv+pzxVTiNvDqACu8Klwj0bls +B87DEYeUmiC+CioOtyhiQimUGE8lU1aMaqCyfSsqeBEclSvOCnpaEQu4j6aiY8SE +5Gm+rteYWKfK2LYV2NOg7n9AUR6d0v8P2wIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/mkdir b/Zhosts/mkdir new file mode 100644 index 000000000..2233fd5b5 --- /dev/null +++ b/Zhosts/mkdir @@ -0,0 +1,11 @@ +Subnet = 10.243.113.223 +Subnet = 42:4522:25f8:36bb:8ccb:0150:231a:2af4 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAuyfM+3od75zOYXqnqRMAt+yp/4z/vC3vSWdjUvEmCuM23c5BOBw+ +dKqbWoSPTzOuaQ0szdL7a6YxT+poSUXd/i3pPz59KgCl192rd1pZoJKgvoluITev +voYSP9rFQOUrustfDb9qKW/ZY95cwdCvypo7Vf4ghxwDCnlmyCGz7qXTJMLydNKF +2PH9KiY4suv15sCg/zisu+q0ZYQXUc1TcgpoIYBOftDunOJoNdbti+XjwWdjGmJZ +Bn4GelsrrpwJFvfDmouHUe8GsD7nTgbZFtiJbKfCEiK16N0Q0d0ZFHhAV2nPjsk2 +3JhG4n9vxATBkO82f7RLrcrhkx9cbLfN3wIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/monitor b/Zhosts/monitor new file mode 100644 index 000000000..8584f70b1 --- /dev/null +++ b/Zhosts/monitor @@ -0,0 +1,11 @@ +Subnet = 10.243.227.145 +Subnet = 42:2ae3:6ed3:a317:d0be:022f:6343:1de8 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAlNDrSskoSPInRiO8JW529o178D2kDdHbt3zZklM+jveFZuynDH2/ +WTfxr7wAIUd26jb12/6zLZ/gnEikLd3LpYiTA1J+ZL2c5SvXOoIqTU3Q3dwEecG2 +qwLcZ8UCjjOKiwWmjGHhNgEx/XUF7gpMwXb/m7fqzTGEiQozaCnQ3ZJA4t8GG00Z +PZnDZHj8xYtXK3c3vOUa11xj9/dOwZb9e+VON0bXJxvxh+C7XkLO3NYTayyRX9qL ++OOdRLSkzINzoj94+juPepCEQtRusrIbOkSPwCl2u29rKRNfPBkqbAcN3zP1mfDC +IXNqUobWP8xvSLyBZh5zglcbQbczxMkKiwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/mors b/Zhosts/mors new file mode 100644 index 000000000..be9782b10 --- /dev/null +++ b/Zhosts/mors @@ -0,0 +1,10 @@ +Subnet = 42:0:0:0:0:0:0:dea7/128 +Subnet = 10.243.0.2/32 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAsj1PCibKOfF68gmFQ+wwyfhUWpqKqpznrJX1dZ+daae7l7nBHvsE +H0QwkiMmk3aZy1beq3quM6gX13aT+/wMfWnLyuvT11T5C9JEf/IS91STpM2BRN+R ++P/DhbuDcW4UsdEe6uwQDGEJbXRN5ZA7GI0bmcYcwHJ9SQmW5v7P9Z3oZ+09hMD+ +1cZ3HkPN7weSdMLMPpUpmzCsI92cXGW0xRC4iBEt1ZeBwjkLCRsBFBGcUMuKWwVa +9sovca0q3DUar+kikEKVrVy26rZUlGuBLobMetDGioSawWkRSxVlfZvTHjAK5JzU +O6y6hj0yQ1sp6W2JjU8ntDHf63aM71dB9QIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/motor b/Zhosts/motor new file mode 100644 index 000000000..41ff57438 --- /dev/null +++ b/Zhosts/motor @@ -0,0 +1,12 @@ +Subnet = 10.243.167.69 +Subnet = 42:e31e:c798:6192:c408:8520:df6c:9d76 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA4xYBdiGtzg77lLeIjbpdXDb6hEfAhcdZgEZeKYWqyeMeu0D5tHod +3nSPTZu70XhLGgzM3vG1GSmcmg0BeJPQCZkEcyu10RtLN6gvMVqtU54IT57RpoXi +3MKfMKuHkohzeir0ihlwaN1XF2CbuNiE5q1IaW15lz9IAPE0WuRKcaHs4fc9n6wh +dk/4pQ74M+/gYHdCNWoxqklpY61tk/QBIS0bAs2wKCSER9rahtLAttAC0Dccgxkq +vrs3IkJg5omjgJ9pgCo/VeX4JJuVFlrVa9o1D0OMUDssyymt/RjYyXejxvemyeV0 +jbavVMB9GEDIZxD7w2ef18FsvZZnILPQHwIDAQAB +-----END RSA PUBLIC KEY----- + diff --git a/Zhosts/mu b/Zhosts/mu new file mode 100644 index 000000000..90bca775b --- /dev/null +++ b/Zhosts/mu @@ -0,0 +1,10 @@ +Subnet = 10.243.20.01/32 +Subnet = 42:0:0:0:0:0:0:2001/128 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEApXErmPSn2CO4V25lqxanCGCFgxEAjdzFUiTCCu0IvELEuCc3PqVA +g4ecf8gGwPCbzMW/1txjlgbsQcm87U5enaCwzSv/pa7P9/memV74OhqEVOypFlDE +XeZczqQfNbjoLYl4cKZpTsSZmOgASXaMDrH2N37f50q35C0MQw0HRzaQM5VLrzb4 +o87MClS+yPqpvp34QjW+1lqnOKvMkr6mDrmtcAjCOs9Ma16txyfjGVFi8KmYqIs1 +QEJmyC9Uocz5zuoSLUghgVRn9yl4+MEw6++akFDwKt/eMkcSq0GPB+3Rz/WLDiBs +FK6BsssQWdwiEWpv6xIl1Fi+s7F0riq2cwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/muhbaasu b/Zhosts/muhbaasu new file mode 100644 index 000000000..490fe3fae --- /dev/null +++ b/Zhosts/muhbaasu @@ -0,0 +1,13 @@ +Address = 217.160.206.154 +#Address = muhbaasu.de +Subnet = 10.243.139.184 +Subnet = 42:d568:6106:ba30:753b:0f2a:8225:b1fb + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA0f4C4xKXpnyV1ig03O2Kef8ag+/5WGkW90uxEBb/h5NY9barex+Z +KqVbkPdHhwoCIINuCVcOnJXzeo0FZtSEq3zVhscVm0PVdNfjct8a9KMsK0iUmuul +5WD9Glh5/1wkEmbRfVxDErhssz1b8YmFOAGQn+ujO/Znn3BLv36uKQvpqU2y5bzb ++rVnq3eE1bCSeuj41bgEve8+vxpforjLO6gbE91mwp3Ol6nkkp6CjpG+aFTuLCAj +YR0MIl2gGwskOGSI38QxlLouOlIGwus5f+KfC94ZP0pMwu5pT45UOUkVnlBXuZ9E +igNHG2Vtm76nB3yYHndOvuDTOufatX61dQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/nomic b/Zhosts/nomic new file mode 100644 index 000000000..f418233c1 --- /dev/null +++ b/Zhosts/nomic @@ -0,0 +1,10 @@ +Subnet = 10.243.0.110/32 +Subnet = 42:02d5:733f:d6da:c0f5:2bb7:2b18:09ec/128 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAwb8Yk/YRc17g2J9n960p6j4W/l559OPyuMPdGJ4DmCm3WNQtxoa+ +qTFUiDiI85BcmfqnSeddLG8zTC2XnSlIvCRMJ9oKzppFM4PX4OTAaJZVE5WyCQhw +Kd4tHVdoQgJW5yFepmT9IUmHqkxXJ0R2W93l2eSZNOcnFvFn0ooiAlRi4zAiHClu +5Mz80Sc2rvez+n9wtC2D06aYjP23pHYld2xighHR9SUqX1dFzgSXNSoWWCcgNp2a +OKcM8LzxLV7MTMZFOJCJndZ77e4LsUvxhQFP6nyKZWg30PC0zufZsuN5o2xsWSlA +Wi9sMB1AUR6mZrxgcgTFpUjbjbLQf+36CwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/nomic2 b/Zhosts/nomic2 new file mode 100644 index 000000000..63d83ff54 --- /dev/null +++ b/Zhosts/nomic2 @@ -0,0 +1,10 @@ +Subnet = 10.243.0.111/32 +Subnet = 42:02d5:733f:d6da:c0f5:2bb7:2b18:09ed/128 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA4RATrMG+MJyNq77+qUqoXkBIpUeytIvUNXT5OdvU5v91Xo2eGI23 +NXiFtILDb1nEPB+L4vVWkUKRuPAy+ThgqgTH1vyugT6jRoRhWWmGmSn2GjaF+UxK +edTfGJqO0Iwn0kZsIFxXUibkmG5iRbJBoPXXz33VtNxOv2gZZ6klfv/pYWnrxmLm +RZXkE1H3Y0U2ulQEXvpexzVscfYmlAw7h0Ew4aaY2LK4spLLPjx9RdDgfwZOZdS+ +gi5cmi/qM71/o67/4XippR9+7GQ8YecbeoR4bcZpDNoDy1ri7HPPu/t6CiqsYVyg +jYGBm+IGbwI9hxGel2bXCVBGLE7gpN51TwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/nukular b/Zhosts/nukular new file mode 100644 index 000000000..27bd2bfd3 --- /dev/null +++ b/Zhosts/nukular @@ -0,0 +1,11 @@ +Subnet = 10.243.231.219 +Subnet = 42:f7bf:178d:4b68:1c1b:42e8:6b27:6a72 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAnt/d9Ys9gmQMGEPzPydAs0Etp9aPb5PreogzVilvazFCZ8HiQHl/ +gRGlNBImcPPAPGgLjQ49TZ6V1s0bX0GMlu9gJxqU7Nz/TPbAaDJSmEDPkXnaMC97 +gLoluwJHURKPP6+0VNQuK/IOjjDLzLjRDiVeIg6NR0nFAQPlxUhrCN/PhxqNV5WP +H1nR+a4UDoLcKbtgQP+4Eu09iEm+H6o5eCFTX2Ov9Ok2m948Jm0rAqUbPAISf9m4 +tOOhhUhn0xvQy5iNHI72ndLvogQ968rnFwBpZM7HF1FsiaQfOF9Nhf11rHCJod3P +meq9GsIUyppZmEKecnTtVfG1oUHMbt1GxQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/omo b/Zhosts/omo new file mode 100644 index 000000000..d2788d28c --- /dev/null +++ b/Zhosts/omo @@ -0,0 +1,9 @@ +Subnet = 10.243.0.89/32 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAuHQEeowvxRkoHJUw6cUp431pnoIy4MVv7kTLgWEK46nzgZtld9LM +ZdNMJB9CuOVVMHEaiY6Q5YchUmapGxwEObc0y+8zQxTPw3I4q0GkSJqKLPrsTpkn +sgEkHPfs2GVdtIBXDn9I8i5JsY2+U8QF8fbIQSOO08/Vpa3nknDAMege9yEa3NFm +s/+x+2pS+xV6uzf/H21XNv0oufInXwZH1NCNXAy5I2V6pz7BmAHilVOGCT7g2zn6 +GasmofiYEnro4V5s8gDlQkb7bCZEIA9EgX/HP6fZJQezSUHcDCQFI0vg26xywbr6 +5+9tTn8fN2mWS5+Pdmx3haX1qFcBP5HglwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/pic b/Zhosts/pic new file mode 100644 index 000000000..fb091856d --- /dev/null +++ b/Zhosts/pic @@ -0,0 +1,11 @@ +Subnet = 10.243.64.210 +Subnet = 42:8115:848f:f56d:4025:49bf:9042:d3b8 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA7jWZo6QlyLMW1BK/PxBDgU/qBZajMfSo5nLtp/WUMSMa6cJCjFFO +ppUSfAKBu4uwzjYUmdzQMoxE2AQKT2+gMc7moxz18sVBTbbWlyueBlsTvhpC1b9k +YPs3eAJDV6mQPvKb908iubqhardaZAdODDas1S5W4N7DuZZBKryARYOoO7cN6/wd ++YDTAxf97sV5IuxCDOV1inTuOrNx8XfGU4wVVELqzd9VLCHGuD8kAcz0+emDrI9d +MSo8ryCL9tbF5owtC1A8HFDo3LM4da7411HrPHpVyOVgjXmX6bjlLIQ23XNDQOC9 +IbyhK2tCc5q+pms7gYEWPByxmy/mb6WBBQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/pigstarter b/Zhosts/pigstarter new file mode 100644 index 000000000..dd12a0d8e --- /dev/null +++ b/Zhosts/pigstarter @@ -0,0 +1,13 @@ +Address = 192.40.56.122 +Address = 2604:2880::841f:72c +#Address = pigstarter.de +Subnet = 10.243.0.153 +Subnet = 42:9143:b4c0:f981:6030:7aa2:8bc5:4110/128 +-----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----- diff --git a/Zhosts/pike b/Zhosts/pike new file mode 100644 index 000000000..1d47a6144 --- /dev/null +++ b/Zhosts/pike @@ -0,0 +1,11 @@ +Subnet = 10.243.97.232 +Subnet = 42:4d6d:8699:99c2:0de9:ea78:8d50:f53a + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA0CS28CMhqeUuJxY+JEISeEDzP2I5T5ILFn4/3loEagEtS90QAm/K +rbMDbvJENrNCnaaOcHuOsG3vS8s31ffY9RM89Na2zjcV9l0QBhBkNebUr/Ol0nQp +ONWXEgmXV2mCGfFnC4uOHhELkZhnkwJduWfR5kyGPPApjxlBVIbI8pkAV4GFqjoF +WTTm9qp80G26sD4O2q+Ldv9eIKquPAHN/zMFk0TzhgmAylgQUcc84HdUDZ+g9n1Q +Ap62VwM8lGcnRy+f03cBaPyWQEEdnA3hG2mMfaaAoVYw4eruBbAz8GGUPMT3UH/E +rGGNmyVzzUQOKvnOjB4qvyseSI+/mPzGJQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/pornocauster b/Zhosts/pornocauster new file mode 100644 index 000000000..cc7d89556 --- /dev/null +++ b/Zhosts/pornocauster @@ -0,0 +1,10 @@ +Subnet = 42:0b2c:d90e:e717:03dc:9ac1:7c30:a4db/128 +Subnet = 10.243.0.91/32 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAnztrijsfao+fmNtwAjqwIDKsRaMP3ECsq2T2zqKvxwCyXk69G9bG +RFhWjgaawS9ZhnHSlgWK/vtoR0O9NxpzdU/mvdQijbVGxM02DegjO9qDSIe8EGmA +kscW4nDqYtw4rtjOVPfnNiWXbcWD8eiYR0kcSWmSvfOpVvdhTETqduTx5HRHyEFD +JRQYR/tJSvVWXmM670PENAPNJFJ4VSJR60s5A+bFT7J/uw7HzJXX28LygJz73Dj2 +2a4ev0WcZQngLq072h/91R/TOpg+ogUDVhXkQtKyFj7im0287JTL4bXGofZBhzaf ++h9dFGs1QLoNyhG/cgt9fog7boSXTelAiQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/radiotuxmini b/Zhosts/radiotuxmini new file mode 100644 index 000000000..96c069314 --- /dev/null +++ b/Zhosts/radiotuxmini @@ -0,0 +1,11 @@ +Subnet = 10.243.0.185 +Subnet = 42:5553:9d1f:5e66:ed7f:bbd6:b7fd:51b2/128 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA3A0wJPSrNGpb3g98iv1EDTk7s9dgUKSHf7rmqrN2IlW9g21pkGEY +T3EWz5X8mGEQbDw2im9W8Lm7OSnYuRQjNxacq5WMIN3AGpsiGB6KWEXu73lDWDkE +hL7dxjSWFSQQMUkbjhduxyaibmLLI748w5npYzhAsjICs4MsrBhcL/ER7tCwVyKm +AEKUBbLd21tVLGM5dapJslKamZ5NxeHY6TBdtbd2AQZ+67EINKt/WEx9Ruw/t57P +OAa37NhFrjBbRClQQZVOunbh1Sb0EX3Abj4oZczrtAaBfcDQbA7x2LwbqugZH/EN +i/oa3sCqOLo7ZcYvuvyxaZgWLK3KB2MEQwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/random b/Zhosts/random new file mode 100644 index 000000000..59a354e93 --- /dev/null +++ b/Zhosts/random @@ -0,0 +1,10 @@ +Subnet = 10.243.0.134 +Subnet = 42:725b:abec:0922:09c6:b51e:1a33:b93a/128 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEApgs77ljzQp7I8/9KbqzGjoDdNAA3Bp6dKziIJnHLAIDAHD30yY+o +UHbRPhaCP9s2M4A39wTDjrakngF75M+0covz4WBIiuGdwZywgVnliRk/9dcnqdZm +OeCxeRJ0BY3Iy8oMieFaPJW1XgwKYi2p0eSpBeKasBct2xNQwyvh+r+xHBa6NK0P +vV6rK04OrJu04U/tqklTFMTHGmZfjx1vmuecuPWZlgT39788/5aD9uqg2ldMoenE +eamrPdU2Vh6qlZc8CyHVy5YZDykbXTauUL5OmW2Om4Qc05pinsNnDXfMTkSSmWpN +oj6nieBqbp/ExuZ79LC5XxvQcAMQtk7gUwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/raspafari b/Zhosts/raspafari new file mode 100644 index 000000000..1e1b48503 --- /dev/null +++ b/Zhosts/raspafari @@ -0,0 +1,11 @@ +Subnet = 10.243.0.156 +#Subnet = 42:9571:c499:5adc:f9e1:8982:3cb1:cf91/128 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA14OlKZwL5+ZMwxoMTuTpt+PLr1Mp6pIlfIdYfkkx1od6c3fuvNi6 +CHLpR0fAWDDec/hDwR55VLzonDrPa/nOj6yHCXCTpHhQXJIdZTazxSPAsUuzzKa+ +TZQcCGZWJKG09Rg8gIceTjS99l7BOVtPQXnVQc7Gfxu8csjynHOHWinZy34JU9FA +HdcTzKsxrAr297iQCPEht7XPDCJj2hRy+NS5UOzkTF7UGTKveyRdsqVIWx/rMrll +UlBEwxRpstuhG33bv+tAXKNi2eJn32IvHDhPZtHgrvXE71FT43V6bJLT0+xH2qFc +SGZCCdjv3/3mO/g7Kkth64mpxMw93NGkEQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/reimae b/Zhosts/reimae new file mode 100644 index 000000000..125cde652 --- /dev/null +++ b/Zhosts/reimae @@ -0,0 +1,12 @@ +Address = 193.22.164.39 +Subnet = 10.243.177.212 +Subnet = 42:5965:bb44:aed3:9d3d:29f6:201d:7adf + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA37lXlJpfT4pgxV1XB3VzUiALVjOexrHezJZ3YxgZTVUtTTxOnydl +urN7S4WaRgFkRPlwATGrp+KzJ6fz5/zeryYwbBUY66kcTEfJBP3+zKgWu3NIqOll +SCcnpjlEm46FcstJ5dnnuYqhpnp98z8QkTiXHZKMI4rB+yf5NdKnMetAUsSUe2wI +bXSxJ9lNrSm/IFToaVZ3KPYZwQ0HgzUxSWb5grkCuK5iWtGhqdf0/pqEzMpI1Y1c +QKepcJkRCUcd2InKb9AdpwT/xygNwbPkvjxIAKj7vK/4rr5LApJAOcFL+HJRz4CT +lDrM5LDeGtsIr+mIUbSTR6R0onWCn543LQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/rmdir b/Zhosts/rmdir new file mode 100644 index 000000000..09dec741b --- /dev/null +++ b/Zhosts/rmdir @@ -0,0 +1,11 @@ +Subnet = 10.243.113.224 +Subnet = 42:4522:25f8:36bb:8ccb:0150:231a:2af5 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA+twy4obSbJdmZLfBoe9YYeyoDnXkO/WPa2D6Eh6jXrWk5fbhBjRf +i3EAQfLiXXFJX3E8V8YvJyazXklI19jJtCLDiu/F5kgJJfyAkWHH+a/hcg7qllDM +Xx2CvS/nCbs+p48/VLO6zLC7b1oHu3K/ob5M5bwPK6j9NEDIL5qYiM5PQzV6zryz +hS9E/+l8Z+UUpYcfS3bRovXJAerB4txc/gD3Xmptq1zk53yn1kJFYfVlwyyz+NEF +59JZj2PDrvWoG0kx/QjiNurs6XfdnyHe/gP3rmSTrihKFVuA3cZM62sDR4FcaeWH +SnKSp02pqjBOjC/dOK97nXpKLJgNH046owIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/robchina b/Zhosts/robchina new file mode 100644 index 000000000..ee67405ae --- /dev/null +++ b/Zhosts/robchina @@ -0,0 +1,11 @@ +Subnet = 10.243.131.174 +Subnet = 42:c483:5bdb:f54e:dc72:f682:ddd1:14f8 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAxfCyJD9G9BgUtdZoT/t8rr6TzzcNDyUex46D0arMOliJUWTvkP9I +m7YHzxZNeb4QoWGW3TZwDGq63OuSDLfXcmKbeTAs9hLDFFOcAzuBeACnQzd5SIqW +sxjWOgI1yn/Thk2GVzjs2YXIKSCFwpRRR9r0d+YjuSF87ByBXkhgMmoIxn9tQYjx +RqpAd1ELWRqGgi5W6qbN3m3C3R/3g86SsiOvJ/HbJ+MaRy+b9EC2+XoPRoSAJqWg +XN5MHY01EmDaz2gRB2kAo1j90y6Xi3JdzMn+nl53nOdSGIBWn6dWbm3gd8KBtn5X +KernecPr3o4YT77C481hRc68hpi+1aff8wIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/rockit b/Zhosts/rockit new file mode 100644 index 000000000..e67272c35 --- /dev/null +++ b/Zhosts/rockit @@ -0,0 +1,11 @@ +Subnet = 10.243.199.33 +Subnet = 42:cec2:0a67:0ebb:7d97:8138:ac9a:8a58 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAnUtx3KPzNmS6/LxpYSolmhmF+Xqsum2po3lvmZszu2aIKdcAeIfb +B6bwz08zC9UNQjnO+27px5LMTTH9zhzRxo5xP/mcco2mVQFl5V+/73qBW5NnUV+4 +nPvUDi0+IhuVixHc+KlkxiHhgIDLdCN2WvVTkUCgxT2xVlPoESXq1dhdE3/5vvJt +0tphFUnP0sLCVzV25IYCocul+ELj8PAc/9mP4twifM4V0uwhh+J3AHR0+14QM61r +9qRhEnNEEkGeToYQPsoromiKPWczerUPBpaQHOpjnjg08Coz4OyrrM7+DXyspPfT +/862pAygKmeJMuzT2b52JbRlk3NMCxw5wQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/rtjure_debian_oder_so b/Zhosts/rtjure_debian_oder_so new file mode 100644 index 000000000..3000705b4 --- /dev/null +++ b/Zhosts/rtjure_debian_oder_so @@ -0,0 +1,11 @@ +Subnet = 10.243.124.21 +Subnet = 42:9d30:3845:c822:988b:96c5:39ab:90b7 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA6J+B/2Wpr9MKu5fuWg9LSoabBKmWmXEWfN7Bs5KMyux9obSBaM8y +dUEx0ayGwUOvDxizuhma9YCbys4P9SDGmocxrhFz2yQeyinEj03EB9ZZiPNQSqbI +Jia39Q/fkxeCescUjr63wR0OY++a+NdefVG5OaSRhNwAmjENZzAxTE/1y5lR7mf4 +U0Pyik/BIARZIc7rnwoYn2TlGgUlu3HX7BxCXIndOFeIjtRzoSG6d+XKhcTXOvvH +WnBNl2D5i48l+V/mDDbLYcXS0al3lgFAOgqXxVXr9WufCBGtNdxlgWlM4zSTUQZw +UopJToHcnucM3ofb/NrDs3ygHdQPSRkhhQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/rtjure_ras b/Zhosts/rtjure_ras new file mode 100644 index 000000000..ba44cb020 --- /dev/null +++ b/Zhosts/rtjure_ras @@ -0,0 +1,11 @@ +Subnet = 10.243.212.68 +Subnet = 42:627f:6f2a:b631:26f7:8d69:4c3a:23b0 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAvu1ZjElrPpJ/ery0BAYxWPtb/ZLio+PuhrsOy9BBq6b7/FHw/1yf +GOCDa2fkdE1/pVLhI62KL+j/nDCgpHtVxzupVYKSyKOuZXnNGAS7vAHNM27jaYHp +3DTI0Npu13v2r5rgraPOm6eGrd/D0u2gr3T9Zq8PRtg5JrXBWMU4Ugt+Kfv0V+xL +v0lX21xZrUjvhtd0/vTcNkYLWZK5ftfU18/i3D6CimlG+AsKyeAnYe9Nkcmet84s +65SbgQ6SBr2YyN5c7wC9j1/Ney3k+aTbxsvHqDyQ8bq8WnsDQR2B8JPZGPLd7VHD +hdPGzus2PmJa84oB7smuUdt/5oAjzgghkQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/rtjure_rdrlab_linkstation b/Zhosts/rtjure_rdrlab_linkstation new file mode 100644 index 000000000..dfc8c0311 --- /dev/null +++ b/Zhosts/rtjure_rdrlab_linkstation @@ -0,0 +1,11 @@ +Subnet = 10.243.188.107 +Subnet = 42:b859:6e9e:21ee:6884:171e:ebd3:3316 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA3nKxW4euCO/XN/0C2H4pvTMRLJAXCbMlsGVR80U9JXFYz85x5yDY +6UDLJfhROCMPg8JJa1WwG9+jF9uUD315hF/wMmMReqKAX0ct50Uhr5iv5QA0ER/3 +q4eg1dh920K+qZ2LAweCDt2pnJYZYw3pSX2jfiFEu1/DfwZIVUkymEKC27ObC+Zw +KMderOYU4UPkTmrg4WkAUiHH09PToMVQukL4PLslhNMvFqhdLdGMyY2hqEltK+QP +6cKFDUCAoZRc/L5JhNtklr7RLqYhwkQ7kgPWqbW50tdi9B8YDJfBbfAT7+QS70gj +THyNfEm3R4Xc8FrbKw3ju1PO4LDb9KOhUQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/rubus b/Zhosts/rubus new file mode 100644 index 000000000..aef8d4b39 --- /dev/null +++ b/Zhosts/rubus @@ -0,0 +1,9 @@ +Subnet = 42:537a:0c95:6315:6598:e109:74b2:0887/128 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAqudpo1cC1ETPA3d16cNTAwwud195Yetdx32ty5/VkY2KgLnnl672 +XTPZBVhFppG+NU6QIYq2c0+BdUV+42XNnSeTKy79xr49eSMDaAXuWiX4eY8dh4v9 +n7elTWikzTaElS5SI3wcJPz8SdajWclnRkqXbyMY7Pw7uJMgT3svC/chN8tgp1LT +2s1DdvxaHhnFPef2NQvIWgfgytReLB8dQnSYoAiwIGvNXQT4OXgshJkTAwmok/Sq +io8K1FeJyOranBM/ZyYbQWMEXuknoJ9PXKPbrGjD+ftS18Gs75ODWqh/Bpj75rpT +q6HLJv6H6YpToxueTL1iYM00MNW4g/oPZQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/senderechner b/Zhosts/senderechner new file mode 100644 index 000000000..4cce73cab --- /dev/null +++ b/Zhosts/senderechner @@ -0,0 +1,10 @@ +Subnet = 10.243.0.163 +Subnet = 42:b67b:5752:a730:5f28:d80d:6b37:5bda/128 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA0zCc5aLVRO6NuxUoR6BVzq2PQ/U5AEjYTdGkQufRot42N29MhxY7 +lJBfPfkw/yg2FOzmAzTi62QyrLWSaF1x54rKu+JeNSsOAX+BorGhM67N45DGvJ0X +rakIL0BrVoV7Kxssq3DscGVbjbNS5B5c+IvTp97me/MpuDrfYqUyZk5mS9nB0oDL +inao/A5AtOO4sdqN5BNE9/KisN/9dD359Gz2ZGGq6Ki7o4HBdBj5vi0f4fTofZxT +BJH4BxbWaHwXMC0HYGlhQS0Y7tKYT6h3ChxoLDuW2Ox2IF5AQ/O4t4PIBDp1XaAO +OK8SsmsiD6ZZm6q/nLWBkYH08geYfq0BhQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/serenity b/Zhosts/serenity new file mode 100644 index 000000000..09c519a00 --- /dev/null +++ b/Zhosts/serenity @@ -0,0 +1,11 @@ +Subnet = 10.243.137.182 +Subnet = 42:7538:6f17:220f:bcc0:2d2d:d6f6:911f + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAvVxASw+8nrkQisvliqjYXASQ8O0v4KGlQDHQWx4eBKOfPyQbgJpU +LOF1nikZTz56SyJAwZY1r7JXpvzycWKXkLK/deqJrHkm83lRbwbzKrExzW8hNaVD +nO+P4X19uG/gcfxc9+CdPbHxtUPCNQKUhtYfnXrzTu9jiz7WibkJRYMvY1bd4SK1 +rkKGwIfQiWGvA2cLyWZH2XnFptl0YVHulGnIIVp/bvTuPDsba4mTWeuJhi+16ZzP +PwsR5taxB+dxygESp+kwu00Xmwv5MnmL6QWDlTHYZX19FXkeAV+sHxEO0K4YLFQn +pucTzUBNiZX68HF3R5SdH7wsg9jsvE8c3wIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/seruundroid b/Zhosts/seruundroid new file mode 100644 index 000000000..b4f0848e7 --- /dev/null +++ b/Zhosts/seruundroid @@ -0,0 +1,12 @@ +Subnet = 10.243.127.2 +Subnet = 42:81de:f850:152b:0988:1942:265d:dacb + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAvNtSbaaacF05L2mAxxA5SYc6DuoZEAkXlhcvLTlpu9f/0vZwUWh7 +175pLn6VqUijVoFb9vyoOwkrs9Uk3aX8mYws+5yJLwXhIje+U3uiVTphowKva+m9 +BzV6waZ5dLbh+3CGimx1TBkFTly3NkdZs886QWSO4aXLdU6lt3jRYsuay0Eop/j0 +eQ0BWg9o0QEcfDRQ7RirXrD0B7TSo6qZC0b4NSAMHTE+dvOMo7c+Z7cIPNLS0B+T +Am7ju3gF7UU68kKPyczrNSPPPZayEvZYUZE4PHt8dyIsppojoRq0SJqsMr/mOC15 +dg/KnoKezn9nqUWzisRWrrqWStAKITJkjQIDAQAB +-----END RSA PUBLIC KEY----- + diff --git a/Zhosts/sir_krebs_a_lot b/Zhosts/sir_krebs_a_lot new file mode 100644 index 000000000..f4fffd9d5 --- /dev/null +++ b/Zhosts/sir_krebs_a_lot @@ -0,0 +1,11 @@ +Address = 84.23.79.81 +Subnet = 42:48bd:f4cd:b2f1:ff6b:865c:d041:def6/128 +Subnet = 42.130.57.249/32 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAzkVF0BSWUEqzdUidLTa6qL4wlNSb8gaxyZperzoAj65d5l25SCqc +jjqvREcE6p+jM4t1STXoohnNvexubNXW3PVo5Zpew+BsaGjVvow0LkqCJ9k96Rrk +JzU5lAVH6om3/QYws/Ot0zq1Z/+Xw/0+9JpVKhEipMWLpLgjAvWdvzSW6aBIHVN1 +3E85fkTE5f0azct+XNSNzUebdyIy8wu/EexGmFI9bN+ewIvqjZJdvxP+Ank55MsE +8P7K9TKwVXw440MGqqoQaOhdaT75TL+2nsAfWYcrNnE3YehMOmCMp9oY+RAvsIkK +iAYyF5l7ZTi/7KGHNsG7rr0cbytiz2nS6wIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/skirfir b/Zhosts/skirfir new file mode 100644 index 000000000..0214e7a1c --- /dev/null +++ b/Zhosts/skirfir @@ -0,0 +1,11 @@ +Subnet = 10.243.0.18/32 +Subnet = 42:423b:0f94:6b03:7c3c:593e:67e8:c857/128 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAvQ2yhEbW2a7rOlJGb7pV8OhDMQC00jNffM9LML+sn/BAbIX6jzzi +XgD9o5qwyW/ktpEViUbYepIB/wBbHdMgHRWux5nPS/WygxnVKcf4mPr846udJ2kx +/38l40DjHTzMWTV6G+TFm4+Wg7++B/NUonMJczRNjX4zDVwmObZpS+XSjl8bT1DP +vvNHeUOr06a/IPyOF7b6B/dlr+0pr4YLFw587M1KA+eee8gvJx7YvCdwUMMJP++K +KX30apeJQ+jpf9CsVvpxGefysMTv0uUB7Rmya3b5jjddnW0ge6lTMwT87TzIF5jz +e3hIt+dvvq7cHI7nnyyRtKcvcm1hH+ZIaQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/sleipnir b/Zhosts/sleipnir new file mode 100644 index 000000000..1c82461de --- /dev/null +++ b/Zhosts/sleipnir @@ -0,0 +1,12 @@ +Subnet = 10.243.62.238 +Subnet = 42:d442:7668:e533:cd65:0e50:4714:ad05 +Address = 91.203.214.50 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA155UrbREv8ktrafcK+BMLSnDnTwPdvs70i5fLGJGefiyNc0ZzZVw +M2+R3TGGYPqtid087zYfl6M1JLEZeDtRIcda3N5S5bxXQe6Dz70DxpVNlE1a59zy +7xoD4D3hTJbOYzz9DIBj+9Q91+4JGIi+ZLjuulNNbj/AGGbvtzgLOKRPK5f+Gyfl +beI8xtgD1fLUNbeYGzqz7KDFFTUz+oImWvhkf9fTlsS8riGiA6RketxCaeQGqZ4v +s8z7S70MFjpiR8He9UyUoFWKODYY7eA+BV1EkQTuSiji1oa/GY8RexjMb83S5cBn +hnSoQb3Q35hd1oM06Wz9LKcOiL2pczEx+QIDAQAB +-----END RSA PUBLIC KEY----- + diff --git a/Zhosts/smove b/Zhosts/smove new file mode 100644 index 000000000..fc7e194fa --- /dev/null +++ b/Zhosts/smove @@ -0,0 +1,9 @@ +Subnet = 10.243.42.42 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAzFFj6yAy2qC4gVrUV5vN6PztulRggkyXIMr2oPmPLuB85uxJE9nI +9uvsQdbgcmmEM++moPM/ASCEXuu1ikUK1Gl+8C3rv2IxF/zhcrWEJV4e4EvHrBWP +Xt4hSPyFG3LYpaX1OAWL2zmCvGVDmflWp+YkbBRrkMMEyXg0gZMNx+E7yJiNVYFo +DZ7p4VSncWsAqk0I1varQpkl7BR6p7QcJlMO403Rh2oQT1bPXskkZsfAyXN8wJTP +ATiTm5vijXiRUao+h9L60oxQTcvi9hcbhg+FpB3HYx2Rq6lWR0SqDO2OiBTTJnFM +6qvN7Wfdmxim0mLAwaqccRLCWA06iN8b7wIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/sokrates b/Zhosts/sokrates new file mode 100644 index 000000000..97cf1b478 --- /dev/null +++ b/Zhosts/sokrates @@ -0,0 +1,11 @@ +Subnet = 10.243.97.126 +Subnet = 42:28be:6907:ab4b:5c79:99f5:a4a1:2a25 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA0emA0JAong4wHSAEUrLrkh21n8I/+pLtpS4uGTcMHn9ZrS8Tg101 +S2poRE0jZUZu868mDeOwwxZRLmCE+bL0q1OrAUDY7+ricQSAz3CNQAAQB0Sjp7ju +YXKqLZQEYyOV3M8IJOALS72q4g1VTv5jQrLhGzMsv9vzuRSZV0pEV8tZwb187wLi +n27rwB6SPZv7uhC3R060x8Ze/pLmfmVfrxb9DwZS3d8X1PwygTrTjSAUTeMaDa69 +NSOzvKLx25fhZ0Gm3BA3pUQDEOiGOze3oT/0l3QJMvZ48TbG1KlSBOVwtL3+f5yM +gJZLF/JoTsYL0aZM+zHL6NAUmciy9dNXEQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/sokrateslaptop b/Zhosts/sokrateslaptop new file mode 100644 index 000000000..e05f24153 --- /dev/null +++ b/Zhosts/sokrateslaptop @@ -0,0 +1,11 @@ +Subnet = 10.243.142.104 +Subnet = 42:f8a1:044d:0f75:9d73:56d8:f432:c6cc + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA0EMbBv5NCSns4V/VR/NJHhwe2qNLUYjWWtCDY4zDuoiJdm3JNZJ2 +t0iKNxFwd6Mmg3ahAlndsH4FOjOBGBQCgBG25VRnQgli1sypI/gYTsSgIWHVIRoZ +rgrng0K3oyJ6FuTP+nH1rd7UAYkrOQolXQBY+LqAbxOVjiJl+DpbAXIxCIs5TBeW +egtBiXZ1S53Lv5EGFXug716XlgZLHjw7PzRLJXSlvUAIRZj0Sjq4UD9VrhazM9s5 +aDuxJIdknccEEXm6NK7a51hU/o8L+T0IUpZxhaXOdi6fvO/y3TbffKb1yRTbN0/V +VBjBh18Le7h0SmAEED5tz7NOCrAjMZQtJQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/soundflower b/Zhosts/soundflower new file mode 100644 index 000000000..4085fd11f --- /dev/null +++ b/Zhosts/soundflower @@ -0,0 +1,10 @@ +Subnet = 10.243.69.184 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA0a0oenAy9MDa2M6NoLtB8elduGgc3oLtUwsm3iUu6w8L+Je5TndN +H8dPn3sByUk1Jkd8tGGRk/vSFj/mtUn7xXKCnFXfKDqVowu/0KS3Q+6o4mcoATeb +Ax7e6Cz1YH5+qhQjR7apuase9X9Dzp56//5VW2gaScvWevvzrij2x7eNvJRF+W/l +FDXc8zBPkFW5TLFHOizRoLl4mK1hz2NrUiqcq5Ghs2yPsFxl/o5+e2MOwtdI49T6 +lMkeshAeNOSMKYfP9nmHZoKI/MIpGak0EF3ZQtLvyv+tM2Q0nuwH3RvxlK/Xf6U+ +8SoQu4yRIeK+pMiLEHhFPzBpk+sblUlG7QIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/steve b/Zhosts/steve new file mode 100644 index 000000000..f86eaa50d --- /dev/null +++ b/Zhosts/steve @@ -0,0 +1,10 @@ +Subnet = 42:58a0:e7b1:506e:b09e:1b68:5149:c6e8/128 +Subnet = 42.145.33.57/32 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA2mt6xByDU2eVsQhjG33vT18Byfxqq4TPOvbV8RAyx0RWeolXGWnx +p+wKHVITCyL5JCYs7fUYQoDC900bQa/waWgcN8dHfiUmUPtiUjcc35UWaNTLkVGs +XEe47JMpnnB3D8ynXXKHsG8JXFjpxQpan/fnSuUG7nsB6anxjNHstkmsGGp60P1V +6Xt5GcN+Mw1peH5LhIOcXaMNEHj/DlIjQSubCf3yelcxoSgnZibP5GfiI6JwKXDu +A3Sv+wfAGTYdTOE6RBsvBI0lTNUSw02WxaMG4Hfe6+19XEnC1bSwg8+7VsqFmeWi +uoaQeerhP1QD3GIX81Xe8ENvvFGzCdfARwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/tahoe b/Zhosts/tahoe new file mode 100644 index 000000000..3e78595d3 --- /dev/null +++ b/Zhosts/tahoe @@ -0,0 +1,12 @@ +Address = 148.251.47.69 +Subnet = 10.243.57.85 +Subnet = 42:2f06:b899:a3b5:1dcf:51a4:a02b:8731 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAx6R+CuJu4Bql+DgGPpE7wI+iasRY6ltxW0/L04uW9XiOKiEjx66y +QMMaW18bcb0SOfTE8qYo8pOsZ5E9FFPY6cKH4DGi8g1FpaODle9V8RrVg3F7RuZ8 +dXDXeZxvYvJ2LwPBvlr1aisqJqgxAwF2ipPPX97rAYbp46a/vkgU5bPF1OFlTDaH +9jjThuidiEwY4EMtJGKisnTGx8yS5iQibDMqzrcRpCxCLcl68FgFNKCTtSIj1mo6 +hgO1ZKmHw73ysmrL2tImmalHYcqDJnq/KInG2ZkCZI/2ZqfJyrRSTk86t5ubfD6p +egC5N0Y5dQHJd66AytNwXxymiAcWuYth9QIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/taschenkrebs b/Zhosts/taschenkrebs new file mode 100644 index 000000000..94c37eadd --- /dev/null +++ b/Zhosts/taschenkrebs @@ -0,0 +1,11 @@ +Subnet = 10.243.0.66/32 +Subnet = 42:55bf:5f2b:73f4:f989:910e:ee73:2831/128 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA0YAfK9s29WDjJmiri3Oj0hEyjKui9ylA3mlmWSiTLnk1O2REOwgD +5DPsdYPbu+bTkW7GdzcxX/mNvHogWgC+2+F70dles1lDiSDUhSQOEHFMlz+rBbvz +FGY3Xmm3m3qdRYOcpHUXL/ZXN6kBvsl2b5rfEkejRb+Z1OOLjssISEzNe2vPEnp4 +OmY8ZQA5UAjnxsX+GKsH2OBqD+6Xm+/l/XLHDApHfby+X3upXaJRBjUAp8DiOm0T +hVHfYXEE3iuC8JaCzWSFtG+4qLXf9MJ5xRfwUkuyPqiiTIpeM8GxHQJ+l+QKycNd +Dk+9AwsQ/WsoXMHqIWHyNmuqhr82wEQo4QIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/terrapi b/Zhosts/terrapi new file mode 100644 index 000000000..cf1748eb8 --- /dev/null +++ b/Zhosts/terrapi @@ -0,0 +1,11 @@ +Subnet = 10.243.30.159 +Subnet = 42:b0bd:090e:2a37:2cb4:3314:58e7:20d1 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAtVhVDRBzq0L6JtdVUVEakBzhMP2RjOj7cHZnEUsXzl1TXxuOBhL1 +XOXd3LUuU0jNMMvzxO2VU7K/wM6lX30B6ryqDSfsXKEBM60BiGVzb4Kd+7No76RN +0NsoLygtvtOm1SmvvT1UCsjomoIE4eGdBDsfQzNKt2PUoh/0rTZBHd6qGJuCZQSX +F4IRby4jzYvjOsaSi7GVadvhoyETVxbUAi9VquxOltytA+Ud4CXPb/JW25uVmQQK +RXhoWahWJGJ2WJLGnT1RkTvFQk0zM3XJfPBVItnKCYHuE5HMU/5nnnPvKWiICdsA +1NNU8+kXtK3IJEHwfpRWe/isMj8rROU37wIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/thomasDOTde b/Zhosts/thomasDOTde new file mode 100644 index 000000000..ce47b39e8 --- /dev/null +++ b/Zhosts/thomasDOTde @@ -0,0 +1,9 @@ +Subnet = 10.243.42.23/32 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA3btaQpK89aRDJ66cW8H9RlDIzr4k4WIGiqNCsIAE5MhSGCtjboWO +elgRWlYP59l54yRzn5FpvABAWeRupbX/AMhG8IiBgU6438+F2kVlZdJM4DP51F7c +N2Ek2WKSoIJuiv7Aqb1WlHIWlN3ehg/BXcFPLSav+iChWXAD+MkKmMwL8lGEzsus +MdbpRLxB0g90FUmpwr2f8euanOXYhU6sjnxH+0JY+j9AwWQLfAqtQ1eGO5MK75Dw +htPM3Pj90bkfnYNjNXvnyjsQScDjYG/cv/zDwqRQWNcsmT3EqsBnmM5q0EL+Djo1 +lsPTacJdRtHsnQne9daNadnHywQPX+t/QwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/tincdroid b/Zhosts/tincdroid new file mode 100644 index 000000000..c240f3d6b --- /dev/null +++ b/Zhosts/tincdroid @@ -0,0 +1,9 @@ +Subnet = 10.243.0.11/32 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAwZSgdnymspnwy8NOJ1UKVIbUXxaDUCLWGGtSpYvRt4wrzkIMpeyc ++Bi2c/85Guy6B5H7X+3hMY7YFzM8AiixVr/FCAlKFwseZOc8ld07PuUPVtqdRN9N +Dy4dqATaaWvjGL9320AJmccbYvoV0MZGTmWk86ZaA06tgDb0ZihEfYEFhw+5fakE +7mxpdYmVdzaqScRyKWCF7ogn91/fQ01om/hsl+wzTI/ykqPTUumdNcijBMIK8EtZ +qJbgOt9NSKulhDBFJ02vJmt3o6hmJSONjKcN7dify/ZotQffGCRMgdaWx0YTQJxY +VJ1rPLlbZaPWRydsbMm3BTZAdMRXUq3uDwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/tpsw b/Zhosts/tpsw new file mode 100644 index 000000000..4e7b2a890 --- /dev/null +++ b/Zhosts/tpsw @@ -0,0 +1,11 @@ +Subnet = 10.243.183.236 +Subnet = 42:8ca8:d2e4:adf6:5c0f:38cb:e9ef:eb3c + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAvwYPFAINwV0EH0myFpNzRjVbqXdAmJP616C5JvODklhZWJxFxlKJ +Poczl57j2Z+4bonkTrJmsNtSaQLPKYH4H1qfo/lwz7nqEpPi3Xp4Fgts23w36eML +WBvbw0fQO9R8zZJIIdRkJ2qqlhZiTlor1Gtlm8Z1RmpKkhL9O6Yzj94VhGLhABVl +OsaF2M3PgXJMiLry67jzbAs3+mVaT3iBTzWOaOyREjKQEUg9B9IDxrmZMSWqdXZM +0wfzaCjS40jD73m7tqi7W3tXzAUP4mEeUqkC+NC2Zgm/lJ5B1KPx7AyNqtRLsBLd +pIdJs6ng63WV1fyHYUWMYqZk9zB/tQ0b0wIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/ufo b/Zhosts/ufo new file mode 100644 index 000000000..7103515b4 --- /dev/null +++ b/Zhosts/ufo @@ -0,0 +1,11 @@ +Subnet = 10.243.223.142 +Subnet = 42:d9d0:64b5:4dc5:21cc:6a57:cbc9:fac6 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAuOly18THum73KzUbky8Vwmjz33sLl67bvm338Nacq8nuV1/8RkHz +O1VWSnPiyUEpwf69jE5VP8GE/v+7gvJJ5WW/7A7K7A1Ox3vRjwDnO8PllCrzfei3 +jKffWRP9PcxwaWOjE7LKK16Y7t6ZM9k2zMyxAJtM+MmSnBvLoyd+14bIltXz+ZEU +bpFk1g75CXMrqj29SDGfuFPWxbDfjr2bfNuYr3fCLIOKXyfBmHRaLiuPynezbZxQ +HlLVMtCCZoKCctmlOlHON/JaL0ZHM1ZA1l6n4EaaPAL2nakMTU513LqQiCqTMej5 +r+wxsrjhHxVmWYhtPrJGOPlkQyJx9LiWjwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/uriel b/Zhosts/uriel new file mode 100644 index 000000000..f5f6de5f8 --- /dev/null +++ b/Zhosts/uriel @@ -0,0 +1,11 @@ +Subnet = 10.243.81.176 +Subnet = 42:dc25:60cf:94ef:759b:d2b6:98a9:2e56 + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAzw0pvoEmqeqiZrzSOPH0IT99gr1rrvMZbvabXoU4MAiVgGoGrkmR +duJkk8Fj12ftMc+Of1gnwDkFhRcfAKOeH1RSc4CTircWVq99WyecTwEZoaR/goQb +MND022kIBoG6NQNxv1Y5I1B/h7hfloMFEPym9oFtOAXoGhBY2vVl4g64NNz+RLME +m1RipLXKANAh6LRNPGPQCUYX4TVY2ZJVxM3CM1XdomUAdOYXJmWFyUg9NcIKaacx +uRrmuy7J9yFBcihZX5Y7NV361kINrpRmZYxJRf9cr0hb5EkJJ7bMIKQMEFQ5RnYo +u7MPGKD7aNHa6hLLCeIfJ5u0igVmSLh3pwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/vault b/Zhosts/vault new file mode 100644 index 000000000..7ed3866c6 --- /dev/null +++ b/Zhosts/vault @@ -0,0 +1,10 @@ +Subnet = 10.243.229.17 +Subnet = 42:17ed:1eff:5aab:a541:57a2:7ca2:5c38 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAzra4v9cIU8mUeC8Vr1YUTWxir/IexD4FlGc087+i7hu6LLpt7Xi8 +XdwiGMTmQLegohtaVN3yShX1a5YywAboxaZFS1aLFBptmV9VIMtsTJRIgm2dBwMy +5tFRfu3ElV408JBr8OGwYC967p/SY5hxvSAQRc2cmSeY5duWGxybpzfdKmnjnmLr +pGfmavBaLAi2DP+KejCFjAu4oWayVlM2BIXtbtxxn90JvZ8HI4gdfHLBbwfxiEHb +qODqiWbu7wznQ3g4N5SUW2rq8WUqubufcx30Z+096doc0i+Zdxb5JBU79CGTNcbZ +X6Spc/CtkrLNbsTCjVmXgNvYo6WZeg4+rwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/voyager b/Zhosts/voyager new file mode 100644 index 000000000..216d8dff4 --- /dev/null +++ b/Zhosts/voyager @@ -0,0 +1,17 @@ +Subnet = 10.243.24.5 +Subnet = 42:b434:5bee:21ed:2e99:a4d4:35b1:34cf + + +-----BEGIN RSA PUBLIC KEY----- +MIICCgKCAgEAvaSESJ+KK+DAVOdj8S7AmBb9Cqepi8VwjrnT+WTUFqbDQJ7Dwwfi +vbqRZituKbD67xljtYbhv0MOdAXRKYgxhCuO6SO7GRlSL00Lb+lYT5KLR1LeMyMe +Y0r1FOTSHZIYV5NfrmznMnV7FxsM3IkSiPHBZUAVxDyoJAYyb8L+loTvJyaD6lno +i8PUNVsyRISE+UXxoIEMnGVtkOQVIhnrdO9k02pRBe/dNNKOKH2tUyPxtyP4TujX +/A/OEqniwf1RBtGddhmKJOew2SPvNbiqJMBU+PNAs0ACTBn5GdyWg6/i6gvUpPZi +SX4xlDNt7fmfJr32elD0Mv08r3+/dmeP1+LFGSEMkZM9R70iHTRZyqJf1TKwE8LI +KRSflzV8EhcOa2znS5gM7YZW60OHdjSgQ8J3Czfp7ig923zxj3JA0sctCuuHtbXp +BUfi98tb2eMT0E58dtge6TwTn/dAcYYTRN2H+fgVOUCc2NKIwN3Vt03Y+HT7Duaj +B3klQW5setLz/SZf9Bw2W+mpnIeHjzS5M2EZ+O9gosH+bVAMMs7w2wLhuSaPnJY7 +24kF7hGMI5zHqWpNjLdB7AN+vkqHbzBnfkVLSLyHyrJCBebQCg3in/uW650Zo/D/ +Ad1k/5+a2R9xKHqONF2FUyZb26FkzROnBW1M47K1e4x/r/5N0Vq5mkcCAwEAAQ== +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/wooktop b/Zhosts/wooktop new file mode 100644 index 000000000..bd0cb9454 --- /dev/null +++ b/Zhosts/wooktop @@ -0,0 +1,11 @@ +Subnet = 10.243.63.202 +Subnet = 42:9f67:f701:81af:b8ba:6183:4f3b:c60e + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAuP6ZaGowomnda2aisQjQ/li58I9C26y6x2W8++CnkrVx+2siSpsg +M3nNOLc4n2k7hgjFIkeODqiSX4VKb94A0eHJwk6il507ILHrsgwJmheIKMWQJEx0 +44h6o1r6fbpZdsf2dREK6qjIp+wEv1sYZ74sv3fP4V3QbjPVH3WVJ/gW+CDOT5zc +Ff6+JZNdLWwdRvHq1snQGdnUfAk3jLWpv8FZo2g0xAo1kIGfh9KCuxDgr1sonl0Y +GcCKI+8tsJhzDT4uo6xJrZH6Hx3pqb9hqTTlAYMGRoJUMTlQAFi/efo5bxNx85Mh +xz313oHXDnK6eVr0vqq62UcatcxIRwBpVQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/wu b/Zhosts/wu new file mode 100644 index 000000000..a63adc7cc --- /dev/null +++ b/Zhosts/wu @@ -0,0 +1,10 @@ +Subnet = 10.243.13.37/32 +Subnet = 42:0:0:0:0:0:0:1337/128 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEArDvU0cuBsVqTjCX2TlWL4XHSy4qSjUhjrDvUPZSKTVN7x6OENCUn +M27g9H7j4/Jw/8IHoJLiKnXHavOoc9UJM+P9Fla/4TTVADr69UDSnLgH+wGiHcEg +GxPkb2jt0Z8zcpD6Fusj1ATs3sssaLHTHvg1D0LylEWA3cI4WPP13v23PkyUENQT +KpSWfR+obqDl38Q7LuFi6dH9ruyvqK+4syddrBwjPXrcNxcGL9QbDn7+foRNiWw4 +4CE5z25oGG2iWMShI7fe3ji/fMUAl7DSOOrHVVG9eMtpzy+uI8veOHrdTax4oKik +AFGCrMIov3F0GIeu3nDlrTIZPZDTodbFKQIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/ytart b/Zhosts/ytart new file mode 100644 index 000000000..09a55f65e --- /dev/null +++ b/Zhosts/ytart @@ -0,0 +1,9 @@ +Subnet = 10.243.65.226/32 +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA2yCCN8nAPmZNL75Jr+FtfP5jmyuqg7IpgfW03L3s8Gg7NB1eTQAg +UFPh13cj4lZleZOl3Yus7yx4HxMO8tYCptqnRPyP+UXrxvL+kECS4J3rLzjH/eOM +0oAxuEe+DOa5R9Vj2bRtTouePlEvXDpgZZcDnedutRUYFGLNvkoWxu0RGqfQaJmd +7KtOk1NJn9efNqwpl6ejPj5A+ivh2T1vAMWherM60JTjjhNGiSP4so0WG8PlBPYc +GKnmMSQl0u5n10uTvLoVvnSfLj/QvL3d8abTrFV2lRqaCTJy+lxgkS1A5AnsTP1G +OBbm/Gk9hRuYy2iP6FQ65q64/JfoeoqpPwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zhosts/zombiecancer b/Zhosts/zombiecancer new file mode 100644 index 000000000..c073123f5 --- /dev/null +++ b/Zhosts/zombiecancer @@ -0,0 +1,11 @@ +Subnet = 10.243.226.40 +Subnet = 42:2cb2:77f2:86c1:ffcc:f9ff:fdcb:726f + +-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEAwmIAhFzsJb6Pjy8TjAWMECwh8TRYIFaL0sAzGMtoibyAUnIpX6UU +kYLYUjsd6Wo8HZUn38awjoa0tD1SE43UueyD45OAEk3zYY9/ku0BVBOgGYZahcWO +cKMkO1BtIle7lI4/+gxyfoSrj+2/0pf56odFIZTIV+kyKtFg+97Mn/eb6o7b46oR +edhU+Nz02YGLuSs4Pv663GAuIyCUj0OTxhX3F3lYWYyP6Hbj4FW5W8YJrlfw12x3 +f5OUceLLBz2JTk2thBSgd/bXW4hAOFgpuHTu8FWZ4sh7vKFiRmPyTTN0uE7NaVdX +vSw7x+V9kSeonkW7uPp6A3ngl1ki2xc8AwIDAQAB +-----END RSA PUBLIC KEY----- diff --git a/Zpubkeys/deploy_wu.ssh.pub b/Zpubkeys/deploy_wu.ssh.pub new file mode 100644 index 000000000..a54a1ca37 --- /dev/null +++ b/Zpubkeys/deploy_wu.ssh.pub @@ -0,0 +1 @@ +ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEieAihh+o208aeCA14fAtjzyZN/nrpOJt2vZ5VYZp69 deploy@wu diff --git a/Zpubkeys/lass.ssh.pub b/Zpubkeys/lass.ssh.pub new file mode 100644 index 000000000..172fd2dda --- /dev/null +++ b/Zpubkeys/lass.ssh.pub @@ -0,0 +1 @@ +ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAp83zynhIueJJsWlSEykVSBrrgBFKq38+vT8bRfa+csqyjZBl2SQFuCPo+Qbh49mwchpZRshBa9jQEIGqmXxv/PYdfBFQuOFgyUq9ZcTZUXqeynicg/SyOYFW86iiqYralIAkuGPfQ4howLPVyjTZtWeEeeEttom6p6LMY5Aumjz2em0FG0n9rRFY2fBzrdYAgk9C0N6ojCs/Gzknk9SGntA96MDqHJ1HXWFMfmwOLCnxtE5TY30MqSmkrJb7Fsejwjoqoe9Y/mCaR0LpG2cStC1+37GbHJNH0caCMaQCX8qdfgMVbWTVeFWtV6aWOaRgwLrPDYn4cHWQJqTfhtPrNQ== lass@mors diff --git a/Zpubkeys/makefu.ssh.pub b/Zpubkeys/makefu.ssh.pub new file mode 100644 index 000000000..6092ec469 --- /dev/null +++ b/Zpubkeys/makefu.ssh.pub @@ -0,0 +1 @@ +ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCl3RTOHd5DLiVeUbUr/GSiKoRWknXQnbkIf+uNiFO+XxiqZVojPlumQUVhasY8UzDzj9tSDruUKXpjut50FhIO5UFAgsBeMJyoZbgY/+R+QKU00Q19+IiUtxeFol/9dCO+F4o937MC0OpAC10LbOXN/9SYIXueYk3pJxIycXwUqhYmyEqtDdVh9Rx32LBVqlBoXRHpNGPLiswV2qNe0b5p919IGcslzf1XoUzfE3a3yjk/XbWh/59xnl4V7Oe7+iQheFxOT6rFA30WYwEygs5As//ZYtxvnn0gA02gOnXJsNjOW9irlxOUeP7IOU6Ye3WRKFRR0+7PS+w8IJLag2xb makefu@pornocauster diff --git a/Zpubkeys/mv_vod.ssh.pub b/Zpubkeys/mv_vod.ssh.pub new file mode 100644 index 000000000..7b7d2e260 --- /dev/null +++ b/Zpubkeys/mv_vod.ssh.pub @@ -0,0 +1 @@ +ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGer9e2+Lew7vnisgBbsFNECEIkpNJgEaqQqgb9inWkQ mv@vod diff --git a/Zpubkeys/tv_wu.ssh.pub b/Zpubkeys/tv_wu.ssh.pub new file mode 100644 index 000000000..b6e2634e8 --- /dev/null +++ b/Zpubkeys/tv_wu.ssh.pub @@ -0,0 +1 @@ +ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAEAQDFR//RnCvEZAt0F6ExDsatKZ/DDdifanuSL360mqOhaFieKI34RoOwfQT9T+Ga52Vh5V2La6esvlph686EdgzeKLvDoxEwFM9ZYFBcMrNzu4bMTlgE7YUYw5JiORyXNfznBGnme6qpuvx9ibYhUyiZo99kM8ys5YrUHrP2JXQJMezDFZHxT4GFMOuSdh/1daGoKKD6hYL/jEHX8CI4E3BSmKK6ygYr1fVX0K0Tv77lIi5mLXucjR7CytWYWYnhM6DC3Hxpv2zRkPgf3k0x/Y1hrw3V/r0Me5h90pd2C8pFaWA2ZoUT/fmyVqvx1tZPYToU/O2dMItY0zgx2kR0yD+6g7Aahz3R+KlXkV8k5c8bbTbfGnZWDR1ZlbLRM9Yt5vosfwapUD90MmVkpmR3wUkO2sUKi80QfC7b4KvSDXQ+MImbGxMaU5Bnsq1PqLN95q+uat3nlAVBAELkcx51FlE9CaIS65y4J7FEDg8BE5JeuCNshh62VSYRXVSFt8bk3f/TFGgzC8OIo14BhVmiRQQ503Z1sROyf5xLX2a/EJavMm1i2Bs2TH6ROKY9z5Pz8hT5US0r381V8oG7TZyLF9HTtoy3wCYsgWA5EmLanjAsVU2YEeAA0rxzdtYP8Y2okFiJ6u+M4HQZ3Wg3peSodyp3vxdYce2vk4EKeqEFuuS82850DYb7Et7fmp+wQQUT8Q/bMO0DreWjHoMM5lE4LJ4ME6AxksmMiFtfo/4Fe2q9D+LAqZ+ANOcv9M+8Rn6ngiYmuRNd0l/a02q1PEvO6vTfXgcl4f7Z1IULHPEaDNZHCJS1K5RXYFqYQ6OHsTmOm7hnwaRAS97+VFMo1i5uvTx9nYaAcY7yzq3Ckfb67dMBKApGOpJpkvPgfrP7bgBO5rOZXM1opXqVPb09nljAhhAhyCTh1e/8+mJrBo0cLQ/LupQzVxGDgm3awSMPxsZAN45PSWz76zzxdDa1MMo51do+VJHfs7Wl0NcXAQrniOBYL9Wqt0qNkn1gY5smkkISGeQ/vxNap4MmzeZE7b5fpOy+2fpcRVQLpc4nooQzJvSVTFz+25lgZ6iHf45K87gQFMIAri1Pf/EDDpL87az+bRWvWi+BA2kMe1kf+Ay1LyMz8r+g51H0ma0bNFh6+fbWMfUiD9JCepIObclnUJ4NlWfcgHxTf17d/4tl6z4DTcLpCCk8Da77JouSHgvtcRbRlFV1OfhWZLXUsrlfpaQTiItv6TGIr3k7+7b66o3Qw/GQVs5GmYifaIZIz8n8my4XjkaMBd0SZfBzzvFjHMq6YUP9+SbjvReqofuoO+5tW1wTYZXitFFBfwuHlXm6w77K5QDBW6olT7pat41/F5eGxLcz tv@wu diff --git a/Zpubkeys/uriel.ssh.pub b/Zpubkeys/uriel.ssh.pub new file mode 100644 index 000000000..015b57837 --- /dev/null +++ b/Zpubkeys/uriel.ssh.pub @@ -0,0 +1 @@ +ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDExWuRcltGM2FqXO695nm6/QY3wU3r1bDTyCpMrLfUSym7TxcXDSmZSWcueexPXV6GENuUfjJPZswOdWqIo5u2AXw9t0aGvwEDmI6uJ7K5nzQOsXIneGMdYuoOaAzWI8pxZ4N+lIP1HsOYttIPDp8RwU6kyG+Ud8mnVHWSTO13C7xC9vePnDP6b+44nHS691Zj3X/Cq35Ls0ISC3EM17jreucdP62L3TKk2R4NCm3Sjqj+OYEv0LAqIpgqSw5FypTYQgNByxRcIcNDlri63Q1yVftUP1338UiUfxtraUu6cqa2CdsHQmtX5mTNWEluVWO3uUKTz9zla3rShC+d3qvr lass@uriel