diff options
author | tv <tv@krebsco.de> | 2023-06-21 14:30:17 +0200 |
---|---|---|
committer | tv <tv@krebsco.de> | 2023-06-21 14:38:42 +0200 |
commit | d59586939d9530ee55a4c5a3310ae13042127e09 (patch) | |
tree | 9c200eab2c61960b16423ad0f689c4c0261e1e8e /tv/2configs | |
parent | 98584f2db914208bf6db482627cdb7de151d2d89 (diff) |
tv sshd: admit missing nets
Diffstat (limited to 'tv/2configs')
-rw-r--r-- | tv/2configs/sshd.nix | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/tv/2configs/sshd.nix b/tv/2configs/sshd.nix index 0610e3c98..59c95ccba 100644 --- a/tv/2configs/sshd.nix +++ b/tv/2configs/sshd.nix @@ -1,6 +1,9 @@ with import ./lib; { config, ... }: let cfg.host = config.krebs.build.host; + nets = + optional (cfg.host.nets?retiolum) cfg.host.nets.retiolum ++ + optional (cfg.host.nets?wiregrill) cfg.host.nets.wiregrill; in { services.openssh = { enable = true; @@ -12,15 +15,11 @@ in { tv.iptables.extra4.nat.PREROUTING = map (net: "-d ${net.ip4.addr} -p tcp --dport 22 -j ACCEPT") - (filter (net: net.ip4 != null) - [ - cfg.host.nets.retiolum - cfg.host.nets.wiregrill - ]); - tv.iptables.extra6.nat.PREROUTING = [ - "-d ${cfg.host.nets.retiolum.ip6.addr} -p tcp --dport 22 -j ACCEPT" - "-d ${cfg.host.nets.wiregrill.ip6.addr} -p tcp --dport 22 -j ACCEPT" - ]; + (filter (net: net.ip4 != null) nets); + tv.iptables.extra6.nat.PREROUTING = + map + (net: "-d ${net.ip6.addr} -p tcp --dport 22 -j ACCEPT") + (filter (net: net.ip6 != null) nets); tv.iptables.extra.nat.PREROUTING = [ "-p tcp --dport 22 -j REDIRECT --to-ports 0" "-p tcp --dport 11423 -j REDIRECT --to-ports 22" |