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
19 [ -f /etc/sysconfig/sshd ] && . /etc/sysconfig/sshd
21 # Check that networking is up.
22 if is_no "${NETWORKING}"; then
23 msg_network_down OpenSSH
28 # See how we were called.
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
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
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
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."
51 # Check if the service is already running?
52 if [ ! -f /var/lock/subsys/sshd ]; then
57 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/sshd
59 msg_already_running OpenSSH
63 if [ -f /var/lock/subsys/sshd ]; then
66 rm -f /var/run/sshd.pid /var/lock/subsys/sshd >/dev/null 2>&1
68 msg_not_running OpenSSH
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"
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
97 msg_usage "$0 {start|stop|init|status|restart|reload}"