]> git.pld-linux.org Git - packages/openssh.git/blob - opensshd.init
c71085b33cd9f656c1a8a032c15d6204c16ea3d0
[packages/openssh.git] / opensshd.init
1 #!/bin/sh
2 #
3 # sshd          sshd (secure shell daemon)
4 #
5 # chkconfig:    345 55 45
6 #
7 # description:  sshd (secure shell daemon) is a server part of the ssh suite.
8 #               Ssh can be used for remote login, remote file copying, TCP port
9 #               forwarding etc. Ssh offers strong encryption and authentication.
10
11
12 # Source function library
13 . /etc/rc.d/init.d/functions
14
15 # Get network config
16 . /etc/sysconfig/network
17
18 # Get service config
19 [ -f /etc/sysconfig/sshd ] && . /etc/sysconfig/sshd
20
21 # Check that networking is up.
22 if is_no "${NETWORKING}"; then
23         msg_network_down OpenSSH
24         exit 1
25 fi
26                         
27
28 # See how we were called.
29 case "$1" in
30   start)
31         # generate new keys with empty passwords if they do not exist
32         if [ ! -f /etc/ssh/ssh_host_key -o ! -s /etc/ssh/ssh_host_key ]; then
33             /usr/bin/ssh-keygen -t rsa1 -f /etc/ssh/ssh_host_key -N '' 1>&2
34             chmod 600 /etc/ssh/ssh_host_key
35         fi
36         if [ ! -f /etc/ssh/ssh_host_rsa_key -o ! -s /etc/ssh/ssh_host_rsa_key ]; then
37             /usr/bin/ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N '' 1>&2
38             chmod 600 /etc/ssh/ssh_host_rsa_key
39         fi
40         if [ ! -f /etc/ssh/ssh_host_dsa_key -o ! -s /etc/ssh/ssh_host_dsa_key ]; then
41             /usr/bin/ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key -N '' 1>&2
42             chmod 600 /etc/ssh/ssh_host_dsa_key
43         fi
44
45         if [ ! -f /etc/ssh/ssh_host_key ]; then
46                 msg_not_running OpenSSH
47                 nls "No SSH host key found! You must run \"$0 init\" first."
48                 exit 1
49         fi
50
51         # Check if the service is already running?
52         if [ ! -f /var/lock/subsys/sshd ]; then
53                 msg_starting OpenSSH
54                 ULIMIT_C="-S -c 0"
55                 daemon /usr/sbin/sshd 
56                 RETVAL=$?
57                 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/sshd                
58         else
59                 msg_already_running OpenSSH
60         fi
61         ;;
62   stop)
63         if [ -f /var/lock/subsys/sshd ]; then
64                 msg_stopping OpenSSH
65                 killproc sshd
66                 rm -f /var/run/sshd.pid /var/lock/subsys/sshd >/dev/null 2>&1
67         else
68                 msg_not_running OpenSSH
69                 exit 1
70         fi      
71         ;;
72   restart)
73         $0 stop
74         $0 start
75         ;;
76   status)
77         status sshd
78         exit $?
79         ;;
80   init)
81         echo "Now the SSH host key will be generated. Please note, that if you"
82         echo "will use password for the key, you will need to type it on each"
83         echo "reboot."
84         /usr/bin/ssh-keygen -t rsa1 -f /etc/ssh/ssh_host_key
85         chmod 600 /etc/ssh/ssh_host_key
86         /usr/bin/ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
87         chmod 600 /etc/ssh/ssh_host_rsa_key
88         /usr/bin/ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
89         chmod 600 /etc/ssh/ssh_host_dsa_key
90         exit $?
91         ;;
92   reload)
93         msg_reloading OpenSSH
94         killproc sshd -HUP
95         ;;
96   *)
97         msg_usage "$0 {start|stop|init|status|restart|reload}"
98         exit 1
99 esac
100
101 exit $RETVAL
This page took 0.028788 seconds and 2 git commands to generate.