"Fossies" - the Fresh Open Source Software Archive

Member "sshdfilter-1.5.7/etc/init.d/sshd.rhFC30.orig" (3 Jun 2006, 2885 Bytes) of package /linux/privat/old/sshdfilter-1.5.7.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) Bash source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file.

    1 #!/bin/bash
    2 #
    3 # Init file for OpenSSH server daemon
    4 #
    5 # chkconfig: 2345 55 25
    6 # description: OpenSSH server daemon
    7 #
    8 # processname: sshd
    9 # config: /etc/ssh/ssh_host_key
   10 # config: /etc/ssh/ssh_host_key.pub
   11 # config: /etc/ssh/ssh_random_seed
   12 # config: /etc/ssh/sshd_config
   13 # pidfile: /var/run/sshd.pid
   14 
   15 # source function library
   16 . /etc/rc.d/init.d/functions
   17 
   18 # pull in sysconfig settings
   19 [ -f /etc/sysconfig/sshd ] && . /etc/sysconfig/sshd
   20 
   21 RETVAL=0
   22 prog="sshd"
   23 
   24 # Some functions to make the below more readable
   25 KEYGEN=/usr/bin/ssh-keygen
   26 SSHD=/usr/sbin/sshd
   27 RSA1_KEY=/etc/ssh/ssh_host_key
   28 RSA_KEY=/etc/ssh/ssh_host_rsa_key
   29 DSA_KEY=/etc/ssh/ssh_host_dsa_key
   30 PID_FILE=/var/run/sshd.pid
   31 
   32 do_rsa1_keygen() {
   33     if [ ! -s $RSA1_KEY ]; then
   34         echo -n $"Generating SSH1 RSA host key: "
   35         if $KEYGEN -q -t rsa1 -f $RSA1_KEY -C '' -N '' >&/dev/null; then
   36             chmod 600 $RSA1_KEY
   37             chmod 644 $RSA1_KEY.pub
   38             if [ -x /sbin/restorecon ]; then
   39                 /sbin/restorecon $RSA1_KEY.pub
   40             fi
   41             success $"RSA1 key generation"
   42             echo
   43         else
   44             failure $"RSA1 key generation"
   45             echo
   46             exit 1
   47         fi
   48     fi
   49 }
   50 
   51 do_rsa_keygen() {
   52     if [ ! -s $RSA_KEY ]; then
   53         echo -n $"Generating SSH2 RSA host key: "
   54         if $KEYGEN -q -t rsa -f $RSA_KEY -C '' -N '' >&/dev/null; then
   55             chmod 600 $RSA_KEY
   56             chmod 644 $RSA_KEY.pub
   57             if [ -x /sbin/restorecon ]; then
   58                 /sbin/restorecon $RSA_KEY.pub
   59             fi
   60             success $"RSA key generation"
   61             echo
   62         else
   63             failure $"RSA key generation"
   64             echo
   65             exit 1
   66         fi
   67     fi
   68 }
   69 
   70 do_dsa_keygen() {
   71     if [ ! -s $DSA_KEY ]; then
   72         echo -n $"Generating SSH2 DSA host key: "
   73         if $KEYGEN -q -t dsa -f $DSA_KEY -C '' -N '' >&/dev/null; then
   74             chmod 600 $DSA_KEY
   75             chmod 644 $DSA_KEY.pub
   76             if [ -x /sbin/restorecon ]; then
   77                 /sbin/restorecon $DSA_KEY.pub
   78             fi
   79             success $"DSA key generation"
   80             echo
   81         else
   82             failure $"DSA key generation"
   83             echo
   84             exit 1
   85         fi
   86     fi
   87 }
   88 
   89 do_restart_sanity_check()
   90 {
   91     $SSHD -t
   92     RETVAL=$?
   93     if [ ! "$RETVAL" = 0 ]; then
   94         failure $"Configuration file or keys are invalid"
   95         echo
   96     fi
   97 }
   98 
   99 start()
  100 {
  101     # Create keys if necessary
  102     do_rsa1_keygen
  103     do_rsa_keygen
  104     do_dsa_keygen
  105 
  106     echo -n $"Starting $prog:"
  107     initlog -c "$SSHD $OPTIONS" && success || failure
  108     RETVAL=$?
  109     [ "$RETVAL" = 0 ] && touch /var/lock/subsys/sshd
  110     echo
  111 }
  112 
  113 stop()
  114 {
  115     echo -n $"Stopping $prog:"
  116     killproc $SSHD -TERM
  117     RETVAL=$?
  118     [ "$RETVAL" = 0 ] && rm -f /var/lock/subsys/sshd
  119     echo
  120 }
  121 
  122 reload()
  123 {
  124     echo -n $"Reloading $prog:"
  125     killproc $SSHD -HUP
  126     RETVAL=$?
  127     echo
  128 }
  129 
  130 case "$1" in
  131     start)
  132         start
  133         ;;
  134     stop)
  135         stop
  136         ;;
  137     restart)
  138         stop
  139         start
  140         ;;
  141     reload)
  142         reload
  143         ;;
  144     condrestart)
  145         if [ -f /var/lock/subsys/sshd ] ; then
  146             do_restart_sanity_check
  147             if [ "$RETVAL" = 0 ] ; then
  148                 stop
  149                 # avoid race
  150                 sleep 3
  151                 start
  152             fi
  153         fi
  154         ;;
  155     status)
  156         status $SSHD
  157         RETVAL=$?
  158         ;;
  159     *)
  160         echo $"Usage: $0 {start|stop|restart|reload|condrestart|status}"
  161         RETVAL=1
  162 esac
  163 exit $RETVAL