#!/bin/sh # # PROVIDE: ssh # REQUIRE: NETWORK . /etc/rc.subr name="sshd" command="/usr/sbin/sshd" required_files="/etc/sshd.conf" extra_commands="keygen" sshd_keygen() { if [ -f /etc/ssh_host_key ] then echo "You already have an RSA host key in /etc/ssh_host_key" echo "Skipping RSA Key Generation" else umask 022 /usr/bin/ssh-keygen -b 1024 -f /etc/ssh_host_key -N '' fi if [ -f /etc/ssh_host_dsa_key ] then echo "You already have a DSA host key in /etc/ssh_host_dsa_key" echo "Skipping DSA Key Generation" else umask 022 /usr/bin/ssh-keygen -d -f /etc/ssh_host_dsa_key -N '' fi } start_precmd() { if [ ! -f /etc/ssh_host_key -o ! -f /etc/ssh_host_dsa_key ] then /etc/rc.d/sshd keygen fi } keygen_cmd=sshd_keygen start_precmd=start_precmd load_rc_config $name run_rc_command "$1"