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 #!/bin/bash
   2 
   3 # SMF method script for OpenSSH server
   4 # Copyright 2013 OmniTI Computer Consulting, Inc.  All rights reserved.
   5 # Use is subject to license terms.
   6 #
   7 
   8 . /lib/svc/share/smf_include.sh
   9 
  10 CONFDIR=/etc/ssh
  11 PIDFILE=/var/run/sshd.pid
  12 
  13 create_host_key() {
  14     TYPE=$1
  15     FILE=$2
  16     /usr/bin/ssh-keygen -t $TYPE -N '' -f $FILE || \
  17         exit $SMF_EXIT_ERR_CONFIG
  18 }
  19 
  20 [[ -x /usr/sbin/sshd ]] || exit $SMF_EXIT_ERR_FATAL
  21 
  22 case $1 in
  23     "start")
  24         [[ -f $CONFDIR/ssh_host_dsa_key ]] || create_host_key dsa $CONFDIR/ssh_host_dsa_key
  25         [[ -f $CONFDIR/ssh_host_rsa_key ]] || create_host_key rsa $CONFDIR/ssh_host_rsa_key
  26         [[ -f $CONFDIR/ssh_host_ecdsa_key ]] || create_host_key ecdsa $CONFDIR/ssh_host_ecdsa_key
  27         /usr/sbin/sshd
  28         ;;
  29     "restart")
  30         if [[ -f $PIDFILE ]]; then
  31             /usr/bin/kill -HUP `/usr/bin/cat $PIDFILE`
  32         fi
  33         ;;
  34 esac        
  35 
  36 exit $SMF_EXIT_OK
   1 #!/bin/sh
   2 
   3 # SMF method script for OpenSSH server
   4 # Copyright 2013 OmniTI Computer Consulting, Inc.  All rights reserved.
   5 # Use is subject to license terms.
   6 #
   7 
   8 . /lib/svc/share/smf_include.sh
   9 
  10 CONFDIR=/etc/ssh

  11 
  12 [ -x /usr/sbin/sshd ] || exit $SMF_EXIT_ERR_FATAL





  13 


  14 case $1 in
  15     "start")
  16         /usr/bin/ssh-keygen -A || exit $SMF_EXIT_ERR_FATAL


  17         /usr/sbin/sshd
  18         ;;





  19 esac        
  20 
  21 exit $SMF_EXIT_OK