37 lines
1.1 KiB
Plaintext
37 lines
1.1 KiB
Plaintext
|
#!/bin/sh
|
||
|
### BEGIN INIT INFO
|
||
|
# Provides: regenerate_ssh_host_keys
|
||
|
# Required-Start:
|
||
|
# Required-Stop:
|
||
|
# Default-Start: 2
|
||
|
# Default-Stop:
|
||
|
# Short-Description: Regenerate ssh host keys
|
||
|
# Description:
|
||
|
### END INIT INFO
|
||
|
|
||
|
. /lib/lsb/init-functions
|
||
|
|
||
|
set -e
|
||
|
|
||
|
case "$1" in
|
||
|
start)
|
||
|
log_daemon_msg "Regenerating ssh host keys (in background)"
|
||
|
nohup sh -c "if [ -e /dev/hwrng ]; then
|
||
|
dd if=/dev/hwrng of=/dev/urandom count=1 bs=4096
|
||
|
fi; \
|
||
|
yes | ssh-keygen -q -N '' -t dsa -f /etc/ssh/ssh_host_dsa_key && \
|
||
|
yes | ssh-keygen -q -N '' -t rsa -f /etc/ssh/ssh_host_rsa_key && \
|
||
|
yes | ssh-keygen -q -N '' -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key && \
|
||
|
yes | ssh-keygen -q -N '' -t ed25519 -f /etc/ssh/ssh_host_ed25519_key && \
|
||
|
systemctl enable ssh && sync && \
|
||
|
rm /etc/init.d/regenerate_ssh_host_keys && \
|
||
|
update-rc.d regenerate_ssh_host_keys remove && \
|
||
|
printf '\nfinished\n' && systemctl start ssh" > /var/log/regen_ssh_keys.log 2>&1 &
|
||
|
log_end_msg $?
|
||
|
;;
|
||
|
*)
|
||
|
echo "Usage: $0 start" >&2
|
||
|
exit 3
|
||
|
;;
|
||
|
esac
|