#!/bin/sh # # $NetBSD: sshd,v 1.19 2004/02/18 17:36:34 jonb Exp $ # # PROVIDE: sshd # REQUIRE: LOGIN . /etc/rc.subr name="sshd" rcvar=$name command="/usr/sbin/${name}" pidfile="/var/run/${name}.pid" required_files="/etc/ssh/sshd_config" extra_commands="keygen reload" sshd_keygen() { ( umask 022 if [ -f /etc/ssh/ssh_host_key ]; then echo "You already have an RSA host key" \ "in /etc/ssh/ssh_host_key" echo "Skipping protocol version 1 RSA Key Generation" else /usr/bin/ssh-keygen -t rsa1 ${ssh_keygen_flags} \ -f /etc/ssh/ssh_host_key -N '' fi if [ -f /etc/ssh/ssh_host_dsa_key ]; then echo "You already have a DSA host key" \ "in /etc/ssh/ssh_host_dsa_key" echo "Skipping protocol version 2 DSA Key Generation" else /usr/bin/ssh-keygen -t dsa ${ssh_keygen_flags} \ -f /etc/ssh/ssh_host_dsa_key -N '' fi if [ -f /etc/ssh/ssh_host_rsa_key ]; then echo "You already have a RSA host key" \ "in /etc/ssh/ssh_host_rsa_key" echo "Skipping protocol version 2 RSA Key Generation" else /usr/bin/ssh-keygen -t rsa ${ssh_keygen_flags} \ -f /etc/ssh/ssh_host_rsa_key -N '' fi ) } sshd_precmd() { if [ ! -f /etc/ssh/ssh_host_key -o \ ! -f /etc/ssh/ssh_host_dsa_key -o \ ! -f /etc/ssh/ssh_host_rsa_key ]; then run_rc_command keygen fi } keygen_cmd=sshd_keygen start_precmd=sshd_precmd load_rc_config $name run_rc_command "$1"