Print this page
use ssh-keygen -A for openssh host key generation
openssh smf method script should use /bin/sh
It's probably not a good idea to source smf_include from a different
shell than what it was written for.
don't depend on pidfiles in openssh refresh
generate ed25519 host keys for openssh
*** 1,36 ****
! #!/bin/bash
# SMF method script for OpenSSH server
# Copyright 2013 OmniTI Computer Consulting, Inc. All rights reserved.
# Use is subject to license terms.
#
. /lib/svc/share/smf_include.sh
CONFDIR=/etc/ssh
- PIDFILE=/var/run/sshd.pid
! create_host_key() {
! TYPE=$1
! FILE=$2
! /usr/bin/ssh-keygen -t $TYPE -N '' -f $FILE || \
! exit $SMF_EXIT_ERR_CONFIG
! }
- [[ -x /usr/sbin/sshd ]] || exit $SMF_EXIT_ERR_FATAL
-
case $1 in
"start")
! [[ -f $CONFDIR/ssh_host_dsa_key ]] || create_host_key dsa $CONFDIR/ssh_host_dsa_key
! [[ -f $CONFDIR/ssh_host_rsa_key ]] || create_host_key rsa $CONFDIR/ssh_host_rsa_key
! [[ -f $CONFDIR/ssh_host_ecdsa_key ]] || create_host_key ecdsa $CONFDIR/ssh_host_ecdsa_key
/usr/sbin/sshd
;;
- "restart")
- if [[ -f $PIDFILE ]]; then
- /usr/bin/kill -HUP `/usr/bin/cat $PIDFILE`
- fi
- ;;
esac
exit $SMF_EXIT_OK
--- 1,21 ----
! #!/bin/sh
# SMF method script for OpenSSH server
# Copyright 2013 OmniTI Computer Consulting, Inc. All rights reserved.
# Use is subject to license terms.
#
. /lib/svc/share/smf_include.sh
CONFDIR=/etc/ssh
! [ -x /usr/sbin/sshd ] || exit $SMF_EXIT_ERR_FATAL
case $1 in
"start")
! /usr/bin/ssh-keygen -A || exit $SMF_EXIT_ERR_FATAL
/usr/sbin/sshd
;;
esac
exit $SMF_EXIT_OK