3 # sshd sshd (secure shell daemon)
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.
12 # Source function library
13 . /etc/rc.d/init.d/functions
16 . /etc/sysconfig/network
18 SERVICE_LIMITS="-u unlimited -Sc 0"
21 [ -f /etc/sysconfig/sshd ] && . /etc/sysconfig/sshd
23 # Check that networking is up.
24 if is_yes "${NETWORKING}"; then
25 if [ ! -f /var/lock/subsys/network -a "$1" != stop -a "$1" != status -a "$1" != init ]; then
26 msg_network_down OpenSSH
34 # See how we were called.
37 # generate new keys with empty passwords if they do not exist
38 if [ ! -f /etc/ssh/ssh_host_key -o ! -s /etc/ssh/ssh_host_key ]; then
39 /usr/bin/ssh-keygen -t rsa1 -f /etc/ssh/ssh_host_key -N '' 1>&2
40 chmod 600 /etc/ssh/ssh_host_key
42 if [ ! -f /etc/ssh/ssh_host_rsa_key -o ! -s /etc/ssh/ssh_host_rsa_key ]; then
43 /usr/bin/ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N '' 1>&2
44 chmod 600 /etc/ssh/ssh_host_rsa_key
46 if [ ! -f /etc/ssh/ssh_host_dsa_key -o ! -s /etc/ssh/ssh_host_dsa_key ]; then
47 /usr/bin/ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key -N '' 1>&2
48 chmod 600 /etc/ssh/ssh_host_dsa_key
51 if [ ! -f /etc/ssh/ssh_host_key ]; then
52 msg_not_running OpenSSH
53 nls "No SSH host key found! You must run \"%s init\" first." "$0"
57 # Check if the service is already running?
58 if [ ! -f /var/lock/subsys/sshd ]; then
62 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/sshd
64 msg_already_running OpenSSH
68 if [ -f /var/lock/subsys/sshd ]; then
71 rm -f /var/run/sshd.pid /var/lock/subsys/sshd >/dev/null 2>&1
73 msg_not_running OpenSSH
86 nls "Now the SSH host key will be generated. Please note, that if you"
87 nls "will use password for the key, you will need to type it on each"
89 /usr/bin/ssh-keygen -t rsa1 -f /etc/ssh/ssh_host_key
90 chmod 600 /etc/ssh/ssh_host_key
91 /usr/bin/ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
92 chmod 600 /etc/ssh/ssh_host_rsa_key
93 /usr/bin/ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
94 chmod 600 /etc/ssh/ssh_host_dsa_key
98 if [ -f /var/lock/subsys/sshd ]; then
103 msg_not_running OpenSSH >&2
108 msg_usage "$0 {start|stop|init|restart|reload|force-reload|status}"