aboutsummaryrefslogtreecommitdiff
path: root/support/init.d.examples/sshd.in
diff options
context:
space:
mode:
Diffstat (limited to 'support/init.d.examples/sshd.in')
-rw-r--r--support/init.d.examples/sshd.in42
1 files changed, 42 insertions, 0 deletions
diff --git a/support/init.d.examples/sshd.in b/support/init.d.examples/sshd.in
new file mode 100644
index 00000000..d89224d3
--- /dev/null
+++ b/support/init.d.examples/sshd.in
@@ -0,0 +1,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
+}