sshd revision 1.4
1#!/bin/sh
2#
3
4# PROVIDE: ssh
5# REQUIRE: NETWORK
6
7. /etc/rc.subr
8
9name="sshd"
10command="/usr/sbin/sshd"
11required_files="/etc/sshd.conf"
12
13extra_commands="keygen"
14
15sshd_keygen() {
16	if [ -f /etc/ssh_host_key ]
17	then
18		echo "You already have an RSA host key in /etc/ssh_host_key"
19		echo "Skipping RSA Key Generation"
20	else
21		umask 022
22		/usr/bin/ssh-keygen -b 1024 -f /etc/ssh_host_key -N ''
23	fi
24
25	if [ -f /etc/ssh_host_dsa_key ]
26	then
27		echo "You already have a DSA host key in /etc/ssh_host_dsa_key"
28		echo "Skipping DSA Key Generation"
29	else
30		umask 022
31		/usr/bin/ssh-keygen -d -f /etc/ssh_host_dsa_key -N ''
32	fi
33}
34
35start_precmd() {
36	if [ ! -f /etc/ssh_host_key -o ! -f /etc/ssh_host_dsa_key ]
37	then
38		/etc/rc.d/sshd keygen
39	fi
40}
41
42keygen_cmd=sshd_keygen
43start_precmd=start_precmd
44
45load_rc_config $name
46run_rc_command "$1"
47