aboutsummaryrefslogtreecommitdiff
path: root/support/init.d.examples/sshd.in
blob: d89224d3d1b43f4c8511fcc0dcf46ffa6d1684e3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#!@SBINDIR@/openrc-run
# Copyright (c) 2007-2015 The OpenRC Authors.
# See the Authors file at the top-level directory of this distribution and
# https://github.com/OpenRC/openrc/blob/master/AUTHORS
#
# This file is part of OpenRC. It is subject to the license terms in
# the LICENSE file found in the top-level directory of this
# distribution and at https://github.com/OpenRC/openrc/blob/master/LICENSE
# This file may not be copied, modified, propagated, or distributed
# except according to the terms contained in the LICENSE file.

command=/usr/sbin/sshd
command_args=$sshd_args
pidfile=@VARBASE@/run/sshd.pid
required_files=/etc/ssh/sshd_config

depend()
{
	use logger dns
	need net
}

start_pre()
{
	if [ ! -e /etc/ssh/ssh_host_key ]; then
		ebegin "Generating Hostkey"
		ssh-keygen -t rsa1 -b 1024 -f /etc/ssh/ssh_host_key -N ''
		eend $? || return 1
	fi
	if [ ! -e /etc/ssh/ssh_host_dsa_key ]; then
		ebegin "Generating DSA Hostkey"
		ssh-keygen -d -f /etc/ssh/ssh_host_dsa_key -N ''
		eend $? || return 1
	fi
	if [ ! -e /etc/ssh/ssh_host_rsa_key ]; then
		ebegin "Generating RSA Hostkey"
		ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N ''
		eend $? || return 1
	fi

	$command -t
}