armbian-firstrun: Optionally skip OpenSSH host key regeneration

This commit is contained in:
David Andreoletti
2024-09-12 14:53:11 +08:00
committed by Igor
parent baf99a7c83
commit f145fc2af2
5 changed files with 28 additions and 7 deletions

View File

@@ -0,0 +1,6 @@
# configuration values for the armbian-firstrun service
# Delete + regenerate OpenSSH host keys
# true = delete + generate host keys
# false = no deletion / no generation for host keys
OPENSSHD_REGENERATE_HOST_KEYS=true

View File

@@ -10,6 +10,7 @@ After=ssh.service
[Service]
Type=simple
RemainAfterExit=yes
EnvironmentFile=/etc/default/armbian-firstrun
ExecStart=/usr/lib/armbian/armbian-firstrun start
TimeoutStartSec=2min

View File

@@ -46,12 +46,16 @@ case "$1" in
[[ -f /etc/systemd/system/armbian-live-patch.service ]] && systemctl --no-reload enable armbian-live-patch.service
# SSH Keys creation
rm -f /etc/ssh/ssh_host*
read entropy_before </proc/sys/kernel/random/entropy_avail
dpkg-reconfigure openssh-server >/dev/null 2>&1
service ssh restart
read entropy_after </proc/sys/kernel/random/entropy_avail
echo -e "\n### [firstrun] Recreated SSH keys (entropy: ${entropy_before} ${entropy_after})" >>${Log}
if [[ "${OPENSSHD_REGENERATE_HOST_KEYS}" = true ]]; then
rm -f /etc/ssh/ssh_host*
read entropy_before </proc/sys/kernel/random/entropy_avail
dpkg-reconfigure openssh-server >/dev/null 2>&1
service ssh restart
read entropy_after </proc/sys/kernel/random/entropy_avail
echo -e "\n### [firstrun] Recreated SSH keys (entropy: ${entropy_before} ${entropy_after})" >>${Log}
else
echo -e "\n### [firstrun] SSH host keys unchanged" >>${Log}
fi
# get rid of purple background color in newt apps whiptail, partimage, debconf ... Reverting to Debian look.
[[ -f /etc/newt/palette ]] && sed -e 's/magenta/blue/g' -i /etc/newt/palette