Compare commits

...

3 commits

Author SHA1 Message Date
Jermeiah S
55220177d2
fix import comment error on arma
All checks were successful
/ check (push) Successful in 2m58s
/ deploy (push) Has been skipped
2025-07-01 17:39:10 -04:00
Jermeiah S
9e3f2a5982
incus now behind enable flag 2025-07-01 17:33:31 -04:00
Jermeiah S
9fc3927c86
firewall improved to use module tables feature 2025-07-01 17:32:55 -04:00
3 changed files with 53 additions and 52 deletions

View file

@ -14,7 +14,7 @@ in
{
imports = [
self.nixosModules.default
# "${modulesPath}/virtualisation/lxc-container.nix"
"${modulesPath}/virtualisation/lxc-container.nix"
];
services.arma.enable = true;

View file

@ -1,33 +1,37 @@
{
lib,
pkgs,
config,
# lib,
# pkgs,
# config,
...
}:
{
networking.nftables = {
enable = true;
ruleset = ''
table inet filter {
chain input {
type filter hook input priority filter; policy accept;
ct state related,established accept
tables = {
yggSsh = {
name = "yggSsh";
family = "inet";
content = ''
chain input {
type filter hook input priority filter; policy accept;
ct state related,established accept
# Restrict ygg0: only allow SSH in
iifname "ygg0" tcp dport 22 accept
iifname "ygg0" drop
}
# Restrict ygg0: only allow SSH in
iifname "ygg0" tcp dport 22 accept
iifname "ygg0" drop
}
chain forward {
type filter hook forward priority filter; policy accept;
# Optional: drop forwarding via ygg0
iifname "ygg0" drop
}
chain forward {
type filter hook forward priority filter; policy accept;
# Optional: drop forwarding via ygg0
iifname "ygg0" drop
}
chain output {
type filter hook output priority filter; policy accept;
}
}
'';
chain output {
type filter hook output priority filter; policy accept;
}
'';
};
};
};
}

View file

@ -1,34 +1,31 @@
{
systemd.network = {
enable = true;
networks."50-eth0" = {
matchConfig.Name = "eth0";
networkConfig = {
DHCP = "ipv4";
IPv6AcceptRA = true;
lib,
config,
pkgs,
...
}:
{
options.iscontainer.enable = lib.mkEnableOption "iscontainer" // {
default = true;
};
config = lib.mkIf config.iscontainer.enable {
systemd.network = {
enable = true;
networks."50-eth0" = {
matchConfig.Name = "eth0";
networkConfig = {
DHCP = "ipv4";
IPv6AcceptRA = true;
};
linkConfig.RequiredForOnline = "routable";
};
linkConfig.RequiredForOnline = "routable";
};
networking = {
firewall.enable = false;
dhcpcd.enable = false;
useDHCP = false;
useHostResolvConf = false;
};
};
networking = {
# firewall = {
firewall.enable = false;
# interfaces = {
# ygg0 = {
# allowedTCPPorts = [ 22 ];
# allowedUDPPorts = [ ];
# };
# };
# # Default deny policy for all interfaces (including ygg0)
# allowedTCPPorts = [ ];
# allowedUDPPorts = [ ];
# };
dhcpcd.enable = false;
useDHCP = false;
useHostResolvConf = false;
};
}