sshd: Don't remove symlinks to host key files
If a host key file is a symlink pointing to an as of yet non-existent file, we don't want to remove it, but instead follow the symlink and create the file at that location. See https://github.com/nix-community/impermanence/issues/101 for more information on the issue the original behavior creates.
This commit is contained in:
@@ -442,7 +442,9 @@ in
|
||||
|
||||
${flip concatMapStrings cfg.hostKeys (k: ''
|
||||
if ! [ -s "${k.path}" ]; then
|
||||
rm -f "${k.path}"
|
||||
if ! [ -h "${k.path}" ]; then
|
||||
rm -f "${k.path}"
|
||||
fi
|
||||
ssh-keygen \
|
||||
-t "${k.type}" \
|
||||
${if k ? bits then "-b ${toString k.bits}" else ""} \
|
||||
|
||||
Reference in New Issue
Block a user