#!/bin/bash # # Startscript for SSH 2.x # (c) RainMaker Multimedia OHG # Autor: Harald Küller # (c) Rainmaker MultiMedia OHG # # $Author$ # $Date$ # $Revision$ # # $Log$ # Revision 1.6 2003/04/19 08:07:15 kueller # Restart Option hinzugefügt # # Revision 1.5 2002/08/07 20:49:00 hkueller # Anpassungen an neue Version - ssh-keygen braucht unbedingt Angabe # des Schlüsseltypes - vorher war default rsa1 # # Revision 1.4 2002/01/23 00:55:59 kueller # ssh wird nun nach abgesruerztem System korrekt gestartet # # Revision 1.3 2002/01/11 16:02:57 kueller # Generierung der Keys an aktuelle Version angepasst # # Revision 1.2 2002/01/11 15:50:14 kueller # Berechtigungen der Keys werden nach Erzeugung sicher gesetzt (0600) # # Revision 1.1.1.1 2001/09/23 00:31:42 kueller # Neustart wg. Datenverlust # # Revision 1.3 2001/08/31 22:26:27 kueller # # Script erzeugt beim shutdown des Systems fehler. Start und Stop Prozess neu # geschrieben. PID von sshd wird nun in /var/run/ssh.pid gespeichtert. # Gleichzeitig dient diese Datei zur Überprüfung, ob das Programm bereits # läuft. # # Revision 1.2 2001/08/24 15:17:16 kueller # # ssh_host_key Tabels werden nun automatisch generiert, # wenn noch nicht vorhanden. # # Revision 1.1.1.1 2001/08/24 14:58:35 kueller # openssh addons # # source /etc/init.d/functions case "$1" in start) if [ ! -f /etc/sysconfig/ssh/ssh_host_key ]; then ssh-keygen -N "" -t rsa1 -f /etc/sysconfig/ssh/ssh_host_key ssh-keygen -N "" -t rsa -f /etc/sysconfig/ssh/ssh_host_rsa_key ssh-keygen -N "" -t dsa -f /etc/sysconfig/ssh/ssh_host_dsa_key chmod 0600 /etc/sysconfig/ssh/*key* fi if [ -f /var/run/ssh.pid ]; then if pgrep -f /usr/sbin/sshd >/dev/null; then echo -n "ssh seems to run already - dont start it. Check /var/run/ssh.pid!" print_status failure else rm /var/run/ssh.pid echo -n "ssh cleaned up - starting now ssh" /usr/sbin/sshd evaluate_retval pidof sshd >/var/run/ssh.pid fi else echo -n "Starting Secure Shell" /usr/sbin/sshd evaluate_retval pidof sshd >/var/run/ssh.pid fi ;; stop) if [ -f /var/run/ssh.pid ]; then echo -n "Stopping Secure Shell" kill -9 `cat /var/run/ssh.pid` evaluate_retval rm /var/run/ssh.pid else echo -n "ssh seems not to run - dont stop it" print_status failure fi ;; restart) $0 stop sleep 1 $0 start ;; *) echo "USAGE: $0 {start|stop|restart}" esac