summaryrefslogtreecommitdiff
path: root/contrib/redhat/sshd.init
diff options
context:
space:
mode:
authorDamien Miller <djm@mindrot.org>2000-08-08 16:53:28 +1000
committerDamien Miller <djm@mindrot.org>2000-08-08 16:53:28 +1000
commitab8d1921f4598baa9b8596d7f8b6bbded9acfb33 (patch)
treee3301ff26a8093a6e9faa5894c2ac3e05269e2aa /contrib/redhat/sshd.init
parent52652f5cef3d2a4441117cde95855d039a866bbe (diff)
- (djm) Cleanup Redhat RPMs. Generate keys at runtime rather than install
time, spec file cleanup.
Diffstat (limited to 'contrib/redhat/sshd.init')
-rwxr-xr-xcontrib/redhat/sshd.init101
1 files changed, 65 insertions, 36 deletions
diff --git a/contrib/redhat/sshd.init b/contrib/redhat/sshd.init
index cac91bb51..487d12897 100755
--- a/contrib/redhat/sshd.init
+++ b/contrib/redhat/sshd.init
@@ -17,44 +17,73 @@
17 17
18RETVAL=0 18RETVAL=0
19 19
20case "$1" in 20# Some functions to make the below more readable
21 start) 21KEYGEN=/usr/bin/ssh-keygen
22 echo -n "Starting sshd: " 22RSA_KEY=/etc/ssh/ssh_host_key
23 if [ ! -f /var/run/sshd.pid ] ; then 23DSA_KEY=/etc/ssh/ssh_host_dsa_key
24 case "`type -type success`" in 24PID_FILE=/var/run/sshd.pid
25 function) 25do_rsa_keygen() {
26 /usr/sbin/sshd && success "sshd startup" || failure "sshd startup" 26 if $KEYGEN -R && ! test -f $RSA_KEY ; then
27 RETVAL=$? 27 echo -n "Generating SSH RSA host key: "
28 ;; 28 if $KEYGEN -q -b 1024 -f $RSA_KEY -C '' -N '' >&/dev/null; then
29 *) 29 success "RSA key generation"
30 /usr/sbin/sshd && echo -n "sshd " 30 echo
31 RETVAL=$? 31 else
32 ;; 32 failure "RSA key generation"
33 esac 33 echo
34 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/sshd 34 exit 1
35 fi
35 fi 36 fi
36 echo 37}
37 ;; 38do_dsa_keygen() {
38 stop) 39 if ! test -f $DSA_KEY ; then
39 echo -n "Shutting down sshd: " 40 echo -n "Generating SSH DSA host key: "
40 if [ -f /var/run/sshd.pid ] ; then 41 if $KEYGEN -q -d -b 1024 -f $DSA_KEY -C '' -N '' >&/dev/null; then
41 killproc sshd 42 success "DSA key generation"
43 echo
44 else
45 failure "DSA key generation"
46 echo
47 exit 1
48 fi
42 fi 49 fi
43 echo 50}
44 [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/sshd 51
45 ;; 52case "$1" in
46 restart) 53 start)
47 $0 stop 54 # Create keys if necessary
48 $0 start 55 do_rsa_keygen;
49 RETVAL=$? 56 do_dsa_keygen;
50 ;; 57
51 status) 58 echo -n "Starting sshd: "
52 status sshd 59 if [ ! -f $PID_FILE ] ; then
53 RETVAL=$? 60 daemon sshd
54 ;; 61 RETVAL=$?
55 *) 62 touch /var/lock/subsys/sshd
56 echo "Usage: sshd {start|stop|restart|status}" 63 fi
57 exit 1 64 echo
65 ;;
66 stop)
67 echo -n "Shutting down sshd: "
68 if [ -f $PID_FILE ] ; then
69 killproc sshd
70 [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/sshd
71 fi
72 echo
73 ;;
74 restart)
75 $0 stop
76 $0 start
77 RETVAL=$?
78 ;;
79 status)
80 status sshd
81 RETVAL=$?
82 ;;
83 *)
84 echo "Usage: sshd {start|stop|restart|status}"
85 exit 1
86 ;;
58esac 87esac
59 88
60exit $RETVAL 89exit $RETVAL