summaryrefslogtreecommitdiffstats
path: root/makefu/1systems
diff options
context:
space:
mode:
authortv <tv@krebsco.de>2017-08-24 17:39:53 +0200
committertv <tv@krebsco.de>2017-08-24 17:39:53 +0200
commitfd69096a27575b9d4d87a10af1492b273dad167c (patch)
treeaa3e7dc121d3188a16a37a6751ec774abcc0df81 /makefu/1systems
parentb9a4e834c06bc32fa38389e13c0ec42467c0fc46 (diff)
parentfd6b42355907de5313ea3576e5d1bfa549433099 (diff)
Merge remote-tracking branch 'prism/master'
Diffstat (limited to 'makefu/1systems')
-rw-r--r--makefu/1systems/darth/config.nix93
-rw-r--r--makefu/1systems/gum/config.nix24
-rw-r--r--makefu/1systems/x/config.nix9
3 files changed, 77 insertions, 49 deletions
diff --git a/makefu/1systems/darth/config.nix b/makefu/1systems/darth/config.nix
index 9dbe67429..7accb13d3 100644
--- a/makefu/1systems/darth/config.nix
+++ b/makefu/1systems/darth/config.nix
@@ -3,44 +3,62 @@
with import <stockholm/lib>;
let
byid = dev: "/dev/disk/by-id/" + dev;
- rootDisk = byid "ata-ADATA_SSD_S599_64GB_10460000000000000039";
- auxDisk = byid "ata-HGST_HTS721010A9E630_JR10006PH3A02F";
- dataPartition = auxDisk + "-part1";
+ rootDisk = byid "ata-INTEL_SSDSC2BW480H6_CVTR53120385480EGN";
+ bootPart = rootDisk + "-part1";
+ rootPart = rootDisk + "-part2";
allDisks = [ rootDisk ]; # auxDisk
in {
imports = [
<stockholm/makefu>
- <stockholm/makefu/2configs/fs/single-partition-ext4.nix>
+ <stockholm/makefu/2configs/fs/sda-crypto-root.nix>
+ <stockholm/makefu/2configs/sshd-totp.nix>
<stockholm/makefu/2configs/zsh-user.nix>
<stockholm/makefu/2configs/smart-monitor.nix>
<stockholm/makefu/2configs/exim-retiolum.nix>
- <stockholm/makefu/2configs/virtualisation/libvirt.nix>
+ # <stockholm/makefu/2configs/virtualisation/libvirt.nix>
<stockholm/makefu/2configs/tinc/retiolum.nix>
- <stockholm/makefu/2configs/share/temp-share-samba.nix>
+ <stockholm/makefu/2configs/tools/core.nix>
+ <stockholm/makefu/2configs/stats/client.nix>
+ <stockholm/makefu/2configs/nsupdate-data.nix>
+
+ # SIEM
+ #<stockholm/makefu/2configs/tinc/siem.nix>
+ # {services.tinc.networks.siem = {
+ # name = "sdarth";
+ # extraConfig = "ConnectTo = sjump";
+ # };
+ # }
+
+ # {
+ # makefu.forward-journal = {
+ # enable = true;
+ # src = "10.8.10.2";
+ # dst = "10.8.10.6";
+ # };
+ # }
+
+ ## Sharing
+ # <stockholm/makefu/2configs/share/temp-share-samba.nix>
+ #{
+ # services.samba.shares = {
+ # isos = {
+ # path = "/data/isos/";
+ # "read only" = "yes";
+ # browseable = "yes";
+ # "guest ok" = "yes";
+ # };
+ # };
+ #}
+ <stockholm/makefu/2configs/share/anon-ftp.nix>
];
- services.samba.shares = {
- isos = {
- path = "/data/isos/";
- "read only" = "yes";
- browseable = "yes";
- "guest ok" = "yes";
- };
- };
- services.tinc.networks.siem = {
- name = "sdarth";
- extraConfig = "ConnectTo = sjump";
- };
- makefu.forward-journal = {
- enable = true;
- src = "10.8.10.2";
- dst = "10.8.10.6";
- };
- #networking.firewall.enable = false;
+ #networking.firewall.enable = false;
+ makefu.server.primary-itf = "enp0s25";
+ krebs.hidden-ssh.enable = true;
boot.kernelModules = [ "coretemp" "f71882fg" ];
hardware.enableAllFirmware = true;
nixpkgs.config.allowUnfree = true;
@@ -49,31 +67,28 @@ in {
firewall = {
allowPing = true;
logRefusedConnections = false;
- trustedInterfaces = [ "eno1" ];
+ # trustedInterfaces = [ "eno1" ];
allowedUDPPorts = [ 80 655 1655 67 ];
allowedTCPPorts = [ 80 655 1655 ];
};
# fallback connection to the internal virtual network
- interfaces.virbr3.ip4 = [{
- address = "10.8.8.2";
- prefixLength = 24;
- }];
+ # interfaces.virbr3.ip4 = [{
+ # address = "10.8.8.2";
+ # prefixLength = 24;
+ # }];
};
# TODO smartd omo darth gum all-in-one
services.smartd.devices = builtins.map (x: { device = x; }) allDisks;
- zramSwap.enable = true;
-
- #fileSystems."/data" = {
- # device = dataPartition;
- # fsType = "ext4";
- #};
boot.loader.grub.device = rootDisk;
-
- users.users.root.openssh.authorizedKeys.keys = [
- config.krebs.users.makefu-omo.pubkey
- config.krebs.users.makefu-vbob.pubkey
+ boot.initrd.luks.devices = [
+ { name = "luksroot";
+ device = rootPart;
+ allowDiscards = true;
+ keyFileSize = 4096;
+ keyFile = "/dev/sdb";
+ }
];
krebs.build.host = config.krebs.hosts.darth;
diff --git a/makefu/1systems/gum/config.nix b/makefu/1systems/gum/config.nix
index bbb8cfe11..110edc130 100644
--- a/makefu/1systems/gum/config.nix
+++ b/makefu/1systems/gum/config.nix
@@ -9,6 +9,7 @@ let
external-gw6 = "fe80::1";
external-netmask = 22;
external-netmask6 = 64;
+ ext-if = "et0"; # gets renamed on the fly
internal-ip = config.krebs.build.host.nets.retiolum.ip4.addr;
main-disk = "/dev/disk/by-id/scsi-0QEMU_QEMU_HARDDISK_drive-scsi0-0-0-0";
in {
@@ -41,6 +42,7 @@ in {
<stockholm/makefu/2configs/sabnzbd.nix>
<stockholm/makefu/2configs/torrent.nix>
<stockholm/makefu/2configs/iodined.nix>
+ <stockholm/makefu/2configs/vpn/openvpn-server.nix>
## Web
<stockholm/makefu/2configs/nginx/share-download.nix>
@@ -94,7 +96,7 @@ in {
];
};
-
+ makefu.server.primary-itf = ext-if;
# access
users.users = {
@@ -120,7 +122,7 @@ in {
# Network
services.udev.extraRules = ''
- SUBSYSTEM=="net", ATTR{address}=="${external-mac}", NAME="et0"
+ SUBSYSTEM=="net", ATTR{address}=="${external-mac}", NAME="${ext-if}"
'';
boot.kernelParams = [ ];
networking = {
@@ -152,14 +154,16 @@ in {
21032
];
};
- interfaces.et0.ip4 = [{
- address = external-ip;
- prefixLength = external-netmask;
- }];
- interfaces.et0.ip6 = [{
- address = external-ip6;
- prefixLength = external-netmask6;
- }];
+ interfaces."${ext-if}" = {
+ ip4 = [{
+ address = external-ip;
+ prefixLength = external-netmask;
+ }];
+ ip6 = [{
+ address = external-ip6;
+ prefixLength = external-netmask6;
+ }];
+ };
defaultGateway6 = external-gw6;
defaultGateway = external-gw;
nameservers = [ "8.8.8.8" ];
diff --git a/makefu/1systems/x/config.nix b/makefu/1systems/x/config.nix
index 368655575..8e8c8a736 100644
--- a/makefu/1systems/x/config.nix
+++ b/makefu/1systems/x/config.nix
@@ -42,6 +42,14 @@ with import <stockholm/lib>;
<stockholm/makefu/2configs/virtualisation/libvirt.nix>
<stockholm/makefu/2configs/virtualisation/docker.nix>
<stockholm/makefu/2configs/virtualisation/virtualbox.nix>
+ {
+ networking.firewall.allowedTCPPorts = [ 8080 ];
+ networking.nat = {
+ enable = true;
+ externalInterface = "wlp3s0";
+ internalInterfaces = [ "vboxnet0" ];
+ };
+ }
# Services
<stockholm/makefu/2configs/git/brain-retiolum.nix>
@@ -81,6 +89,7 @@ with import <stockholm/lib>;
networking.firewall.enable = true;
networking.firewall.allowedTCPPorts = [ 80 24800 26061 8000 3000 ];
networking.firewall.allowedUDPPorts = [ 665 26061 ];
+ networking.firewall.trustedInterfaces = [ "vboxnet0" ];
krebs.build.host = config.krebs.hosts.x;