@@ -342,6 +342,8 @@ See <https://github.com/NixOS/nixpkgs/issues/481673>.
-`services.openssh` now supports generating host SSH keys by setting `services.openssh.generateHostKeys = true` while leaving `services.openssh.enable` disabled. This is particularly useful for systems that have no need of an SSH daemon but want SSH host keys for other purposes such as using agenix or sops-nix.
-`services.openssh.enableRecommendedAlgorithms` has been added to allow users to opt out of NixOS's curated set of recommended algorithms. This set to true by default, and thus is not a breaking change. Users may want to set this to false if they prefer upstream's default algorithms. See <https://github.com/NixOS/nixpkgs/pull/471330>.
- IPVLAN interfaces can now be configured through the `networking.ipvlans` option in the networking module.
-`services.caddy` now supports setting `httpPort` and `httpsPort` and opening them in the firewall via `openFirewall`.
# IP addresses are allocated according to the alphabetical order of the machine name, and since tests rely on the IP address of this machine, let's name it so it's order (and thus address) is predictable.
aaa-server-lazy-socket={
virtualisation.vlans=[
1
# Allocate another VLAN so we can exercise listening on a non-standard address.
2
];
services.openssh={
@@ -191,12 +193,32 @@ in
path="/etc/ssh/ssh_host_ed25519_key";
}
];
# The NixOS-curated algorithms require OpenSSL, and so since this test is against an OpenSSH-without-OpenSSL, we have to use the default algorithms, which adapt to not having OpenSSL.
enableRecommendedAlgorithms=false;
};
users.users.root.openssh.authorizedKeys.keys=[
snakeOilEd25519PublicKey
];
};
server-default-algorithms=
{...}:
{
services.openssh={
enable=true;
enableRecommendedAlgorithms=false;
};
users.users.root.openssh.authorizedKeys.keys=[
snakeOilEd25519PublicKey
];
};
server-null-algorithms=
{...}:
{
services.openssh={
enable=true;
settings={
# Since this test is against an OpenSSH-without-OpenSSL,
# we have to override NixOS's defaults ciphers (which require OpenSSL)
# and instead set these to null, which will mean OpenSSH uses its defaults.
# Expectedly, OpenSSH's defaults don't require OpenSSL when it's compiled