sshd: Use RSA and ED25519 host keys

Closes #7939.

Changed files
+18 -10
nixos
doc
manual
release-notes
modules
services
networking
ssh
+13
nixos/doc/manual/release-notes/rl-unstable.xml
···
<itemizedlist>
+
<listitem><para><command>sshd</command> no longer supports DSA and ECDSA
+
host keys by default. If you have existing systems with such host keys
+
and want to continue to use them, please set
+
+
<programlisting>
+
system.stateVersion = "14.12";
+
</programlisting>
+
+
(The new option <option>system.stateVersion</option> ensures that
+
certain configuration changes that could break existing systems (such
+
as the <command>sshd</command> host key setting) will maintain
+
compatibility with the specified NixOS release.)</para></listitem>
+
<listitem><para><command>cron</command> is no longer enabled by
default, unless you have a non-empty
<option>services.cron.systemCronJobs</option>. To force
+5 -10
nixos/modules/services/networking/ssh/sshd.nix
···
hostKeys = mkOption {
type = types.listOf types.attrs;
default =
-
[ { path = "/etc/ssh/ssh_host_dsa_key";
-
type = "dsa";
-
}
-
{ path = "/etc/ssh/ssh_host_ecdsa_key";
-
type = "ecdsa";
-
bits = 521;
-
}
-
{ path = "/etc/ssh/ssh_host_ed25519_key";
-
type = "ed25519";
-
}
+
[ { type = "rsa"; bits = 4096; path = "/etc/ssh/ssh_host_rsa_key"; }
+
{ type = "ed25519"; path = "/etc/ssh/ssh_host_ed25519_key"; }
+
] ++ optionals (!versionAtLeast config.system.stateVersion "15.07")
+
[ { type = "dsa"; path = "/etc/ssh/ssh_host_dsa_key"; }
+
{ type = "ecdsa"; bits = 521; path = "/etc/ssh/ssh_host_ecdsa_key"; }
];
description = ''
NixOS can automatically generate SSH host keys. This option