mirror of
https://github.com/vincentmli/bpfire.git
synced 2026-04-10 11:05:54 +02:00
This reverts commit 1566fb6b55.
xen kernel was dropped and in the code are missing brackets.
77 lines
1.6 KiB
Bash
77 lines
1.6 KiB
Bash
#!/bin/sh
|
|
# Begin $rc_base/init.d/sshd
|
|
|
|
# Based on sysklogd script from LFS-3.1 and earlier.
|
|
# Rewritten by Gerard Beekmans - gerard@linuxfromscratch.org
|
|
|
|
#$LastChangedBy: bdubbs $
|
|
#$Date: 2006-04-15 17:34:16 -0500 (Sat, 15 Apr 2006) $
|
|
|
|
. /etc/sysconfig/rc
|
|
. $rc_functions
|
|
|
|
case "$1" in
|
|
start)
|
|
if [ ! -e "/etc/ssh/ssh_host_key" ]; then
|
|
boot_mesg "Generating SSH host key..."
|
|
ssh-keygen -qf /etc/ssh/ssh_host_key -N '' -t rsa1
|
|
evaluate_retval
|
|
fi
|
|
|
|
for algo in rsa dsa ecdsa ed25519; do
|
|
keyfile="/etc/ssh/ssh_host_${algo}_key"
|
|
|
|
# If the key already exists, there is nothing to do.
|
|
[ -e "${keyfile}" ] && continue
|
|
|
|
case "${algo}" in
|
|
rsa)
|
|
algo="rsa1"
|
|
;;
|
|
esac
|
|
|
|
boot_mesg "Generating SSH key (${algo})..."
|
|
ssh-keygen -qf "${keyfile}" -N '' -t ${algo}
|
|
evaluate_retval
|
|
done
|
|
|
|
[ -e "/var/ipfire/remote/enablessh" ] || exit 0 # SSH is not enabled
|
|
boot_mesg "Starting SSH Server..."
|
|
loadproc /usr/sbin/sshd
|
|
|
|
# Also prevent ssh from being killed by out of memory conditions
|
|
(
|
|
sleep 3
|
|
pid=$(cat /var/run/sshd.pid 2>/dev/null)
|
|
[ -n "${pid}" ] && echo "-16" > "/proc/${pid}/oom_score_adj"
|
|
) &
|
|
;;
|
|
|
|
stop)
|
|
boot_mesg "Stopping SSH Server..."
|
|
killproc /usr/sbin/sshd
|
|
;;
|
|
|
|
reload)
|
|
boot_mesg "Reloading SSH Server..."
|
|
reloadproc /usr/sbin/sshd
|
|
;;
|
|
|
|
restart)
|
|
$0 stop
|
|
sleep 1
|
|
$0 start
|
|
;;
|
|
|
|
status)
|
|
statusproc /usr/sbin/sshd
|
|
;;
|
|
|
|
*)
|
|
echo "Usage: $0 {start|stop|reload|restart|status}"
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
# End $rc_base/init.d/sshd
|