summaryrefslogtreecommitdiffstats
path: root/krebs/3modules/iptables.nix
diff options
context:
space:
mode:
authorlassulus <lass@aidsballs.de>2016-11-28 13:06:00 +0100
committerlassulus <lass@aidsballs.de>2016-11-28 13:06:00 +0100
commitca1d6b3588395f3e940fcaefc0914777db33ca38 (patch)
tree52cd95da2d3b0cf193e772e43d6918a261c9a1f7 /krebs/3modules/iptables.nix
parent0ae17234e37042af1548b2effe1486c64f404993 (diff)
l 3 iptables: set defaults correctly
Diffstat (limited to 'krebs/3modules/iptables.nix')
-rw-r--r--krebs/3modules/iptables.nix30
1 files changed, 5 insertions, 25 deletions
diff --git a/krebs/3modules/iptables.nix b/krebs/3modules/iptables.nix
index a4a4de6f..09b493c2 100644
--- a/krebs/3modules/iptables.nix
+++ b/krebs/3modules/iptables.nix
@@ -29,9 +29,10 @@ let
tables = mkOption {
type = with types; attrsOf (attrsOf (submodule ({
options = {
+ #TODO: find out good defaults.
policy = mkOption {
type = str;
- default = "-";
+ default = "ACCEPT";
};
rules = mkOption {
type = nullOr (listOf (submodule ({
@@ -133,30 +134,9 @@ let
#=====
rules = iptables-version:
- let
- #TODO: find out good defaults.
- tables-defaults = {
- nat.PREROUTING.policy = "ACCEPT";
- nat.INPUT.policy = "ACCEPT";
- nat.OUTPUT.policy = "ACCEPT";
- nat.POSTROUTING.policy = "ACCEPT";
- filter.INPUT.policy = "ACCEPT";
- filter.FORWARD.policy = "ACCEPT";
- filter.OUTPUT.policy = "ACCEPT";
-
- #if someone specifies any other rules on this chain, the default rules get lost.
- #is this wanted beahiviour or a bug?
- #TODO: implement abstraction of rules
- filter.INPUT.rules = [
- { predicate = "-m conntrack --ctstate RELATED,ESTABLISHED"; target = "ACCEPT"; }
- ];
- };
- tables = tables-defaults // cfg.tables;
-
- in
- pkgs.writeText "krebs-iptables-rules${iptables-version}" ''
- ${buildTables iptables-version tables}
- '';
+ pkgs.writeText "krebs-iptables-rules${iptables-version}" ''
+ ${buildTables iptables-version cfg.tables}
+ '';
startScript = pkgs.writeDash "krebs-iptables_start" ''
set -euf