diff options
author | WilliButz <wbutz@cyberfnord.de> | 2019-11-25 10:47:31 +0100 |
---|---|---|
committer | WilliButz <wbutz@cyberfnord.de> | 2019-11-25 10:47:31 +0100 |
commit | ec16f4fd5b78edcd11f68cb96b41b9a810af315e (patch) | |
tree | b327fd1d3d6774481950cb0117a22f1e948f3765 /nixos/tests/systemd-networkd-wireguard.nix | |
parent | fc91467b0d22603de22c698f80d6217b215e688b (diff) | |
download | nixpkgs-ec16f4fd5b78edcd11f68cb96b41b9a810af315e.tar nixpkgs-ec16f4fd5b78edcd11f68cb96b41b9a810af315e.tar.gz nixpkgs-ec16f4fd5b78edcd11f68cb96b41b9a810af315e.tar.bz2 nixpkgs-ec16f4fd5b78edcd11f68cb96b41b9a810af315e.tar.lz nixpkgs-ec16f4fd5b78edcd11f68cb96b41b9a810af315e.tar.xz nixpkgs-ec16f4fd5b78edcd11f68cb96b41b9a810af315e.tar.zst nixpkgs-ec16f4fd5b78edcd11f68cb96b41b9a810af315e.zip |
tests/systemd-networkd: add regression test for service group
Previously systemd-networkd.service ran as systemd-network:nogroup. The wireguard private key file is now owned by root:systemd-network with mode 0640. It is therefore required that the systemd-network user is in the group with the same name, so that it is able to read the key file.
Diffstat (limited to 'nixos/tests/systemd-networkd-wireguard.nix')
-rw-r--r-- | nixos/tests/systemd-networkd-wireguard.nix | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/nixos/tests/systemd-networkd-wireguard.nix b/nixos/tests/systemd-networkd-wireguard.nix index b83e9c7ce19..be5c0da981d 100644 --- a/nixos/tests/systemd-networkd-wireguard.nix +++ b/nixos/tests/systemd-networkd-wireguard.nix @@ -1,4 +1,4 @@ -let generateNodeConf = { lib, pkgs, config, privkpath, pubk, peerId, nodeId, ...}: { +let generateNodeConf = { lib, pkgs, config, privk, pubk, peerId, nodeId, ...}: { imports = [ common/user-account.nix ]; systemd.services.systemd-networkd.environment.SYSTEMD_LOG_LEVEL = "debug"; networking.useNetworkd = true; @@ -7,13 +7,16 @@ let generateNodeConf = { lib, pkgs, config, privkpath, pubk, peerId, nodeId, ... virtualisation.vlans = [ 1 ]; environment.systemPackages = with pkgs; [ wireguard-tools ]; boot.extraModulePackages = [ config.boot.kernelPackages.wireguard ]; + systemd.tmpfiles.rules = [ + "f /run/wg_priv 0640 root systemd-network - ${privk}" + ]; systemd.network = { enable = true; netdevs = { "90-wg0" = { netdevConfig = { Kind = "wireguard"; Name = "wg0"; }; wireguardConfig = { - PrivateKeyFile = privkpath ; + PrivateKeyFile = "/run/wg_priv"; ListenPort = 51820; FwMark = 42; }; @@ -53,7 +56,7 @@ in import ./make-test-python.nix ({pkgs, ... }: { nodes = { node1 = { pkgs, ... }@attrs: let localConf = { - privkpath = pkgs.writeText "priv.key" "GDiXWlMQKb379XthwX0haAbK6hTdjblllpjGX0heP00="; + privk = "GDiXWlMQKb379XthwX0haAbK6hTdjblllpjGX0heP00="; pubk = "iRxpqj42nnY0Qz8MAQbSm7bXxXP5hkPqWYIULmvW+EE="; nodeId = "1"; peerId = "2"; @@ -62,7 +65,7 @@ in import ./make-test-python.nix ({pkgs, ... }: { node2 = { pkgs, ... }@attrs: let localConf = { - privkpath = pkgs.writeText "priv.key" "eHxSI2jwX/P4AOI0r8YppPw0+4NZnjOxfbS5mt06K2k="; + privk = "eHxSI2jwX/P4AOI0r8YppPw0+4NZnjOxfbS5mt06K2k="; pubk = "27s0OvaBBdHoJYkH9osZpjpgSOVNw+RaKfboT/Sfq0g="; nodeId = "2"; peerId = "1"; |