39 lines
1,000 B
Nix
39 lines
1,000 B
Nix
{ pkgs, lib, nodes, ... }: {
|
|
imports = [
|
|
# applications for this particular server
|
|
../applications/firewall.nix
|
|
];
|
|
|
|
deployment = {
|
|
targetHost = "test01.home.brendan.ie";
|
|
targetPort = 22;
|
|
targetUser = "root";
|
|
};
|
|
|
|
# this server is teh firewall
|
|
skynet_firewall = {
|
|
# always good to know oneself
|
|
own_ip = "192.168.1.157";
|
|
|
|
# 443 is an ssh port now (heh)
|
|
own_ports = [
|
|
22
|
|
443
|
|
];
|
|
|
|
enable = true;
|
|
|
|
# gonna have to get all the
|
|
forward = builtins.concatLists (
|
|
# using this function "(key: value: value.config.skynet_firewall.forward)" turn the values ointo a list
|
|
lib.attrsets.mapAttrsToList (key: value:
|
|
# make sure that anything running this firewall dosent count (recursion otherewise)
|
|
# firewall may want to open ports in itself but can deal with that later
|
|
if value.config.skynet_firewall.enable
|
|
then []
|
|
else value.config.skynet_firewall.forward
|
|
) nodes
|
|
);
|
|
};
|
|
|
|
}
|