diff --git a/net/openssh/files/sshd.init b/net/openssh/files/sshd.init index 0b859e146e03e4..af2e959c0911cd 100644 --- a/net/openssh/files/sshd.init +++ b/net/openssh/files/sshd.init @@ -12,6 +12,13 @@ start_service() { do # check for keys key=/etc/ssh/ssh_host_${type}_key + [ -f $key ] && { + [ -x /usr/bin/ssh-keygen ] && { + if ! /usr/bin/ssh-keygen -l -f $key > /dev/null 2>&1; then + rm -rf $key + fi + } + } [ ! -f $key ] && { # generate missing keys [ -x /usr/bin/ssh-keygen ] && {