2025-10-24 18:20:56 -05:00
|
|
|
{
|
|
|
|
|
lib,
|
|
|
|
|
flake,
|
|
|
|
|
...
|
|
|
|
|
}:
|
|
|
|
|
let
|
|
|
|
|
inherit (flake.config.machines.devices) eris;
|
|
|
|
|
in
|
|
|
|
|
{
|
2025-12-04 21:45:24 -06:00
|
|
|
|
|
|
|
|
microvm.host.enable = true;
|
|
|
|
|
|
|
|
|
|
systemd.network = {
|
|
|
|
|
enable = true;
|
|
|
|
|
netdevs."10-br-vms" = {
|
|
|
|
|
netdevConfig = {
|
|
|
|
|
Name = "br-vms";
|
|
|
|
|
Kind = "bridge";
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
networks = {
|
|
|
|
|
"20-lan" = {
|
|
|
|
|
matchConfig.Name = [
|
|
|
|
|
"enp10s0"
|
|
|
|
|
"vm-*"
|
|
|
|
|
];
|
|
|
|
|
networkConfig = {
|
|
|
|
|
Bridge = "br-vms";
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
"30-br-vms" = {
|
|
|
|
|
matchConfig.Name = "br-vms";
|
|
|
|
|
networkConfig = {
|
|
|
|
|
Address = "192.168.50.245/24";
|
|
|
|
|
Gateway = "192.168.50.1";
|
|
|
|
|
DNS = [ "192.168.50.1" ];
|
|
|
|
|
};
|
|
|
|
|
linkConfig.RequiredForOnline = "routable";
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
|
2025-10-24 18:20:56 -05:00
|
|
|
networking = {
|
|
|
|
|
hostName = eris.name;
|
|
|
|
|
networkmanager.enable = true;
|
|
|
|
|
nftables.enable = true;
|
|
|
|
|
useDHCP = lib.mkDefault true;
|
|
|
|
|
firewall = {
|
|
|
|
|
enable = true;
|
|
|
|
|
allowedTCPPorts = [
|
|
|
|
|
22 # SSH
|
|
|
|
|
25 # SMTP
|
|
|
|
|
139 # SMTP
|
|
|
|
|
587 # SMTP
|
|
|
|
|
2525 # SMTP
|
2025-11-03 02:39:58 -06:00
|
|
|
9999 # NC
|
2025-10-24 18:20:56 -05:00
|
|
|
];
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
services = {
|
|
|
|
|
avahi = {
|
|
|
|
|
enable = true;
|
|
|
|
|
openFirewall = true;
|
|
|
|
|
nssmdns4 = true;
|
|
|
|
|
publish = {
|
|
|
|
|
enable = true;
|
|
|
|
|
userServices = true;
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
sshd.enable = true;
|
|
|
|
|
openssh = {
|
|
|
|
|
enable = true;
|
|
|
|
|
settings.PasswordAuthentication = false;
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
}
|