#!/bin/bash # This is an implementation of a start-script for OpenVAS Manager. # Make RedHat happy: # # chkconfig: - 92 9 # Description: OpenVAS Manager Daemon # ### BEGIN INIT INFO # Provides: openvas-manager # Required-Start: $local_fs $network $syslog # Required-Stop: $local_fs $network $syslog # Default-Start: # Default-Stop: 0 1 2 3 4 5 6 # Short-Description: start|stop|status|restart|condrestart OpenVAS Manager # Description: control OpenVAS Manager ### END INIT INFO # Source function library. . /etc/rc.d/init.d/functions exec="/usr/sbin/openvasmd" prog="openvasmd" progname="openvas-manager" config=/etc/openvas/openvasmd_log.conf lockfile=/var/lock/subsys/openvas-manager [ -e /etc/sysconfig/$progname ] && . /etc/sysconfig/$progname rh_status() { # run checks to determine if the service is running or use generic status status -p /var/run/$prog.pid $progname } rh_status_q() { rh_status >/dev/null 2>&1 } start() { # Build parameters [ -n "$MANAGER_LISTEN" ] && PARAMS="$PARAMS --listen=$MANAGER_LISTEN" [ -n "$MANAGER_PORT" ] && PARAMS="$PARAMS --port=$MANAGER_PORT" [ -n "$SCANNER_LISTEN" ] && PARAMS="$PARAMS --slisten=$SCANNER_LISTEN" [ -n "$SCANNER_PORT" ] && PARAMS="$PARAMS --sport=$SCANNER_PORT" case "$MANAGER_OTP" in yes|YES|true|TRUE) PARAMS="$PARAMS --otp" ;; esac if [ ! -f /etc/pki/openvas/private/CA/serverkey.pem ]; then echo "Missing client certificate to connect openvas-administrator to openvas-manager." echo "Try running: openvas-mkcert-client -n om -i" exit 6 fi if [ ! -f /var/lib/openvas/mgr/tasks.db ]; then echo "Missing local NVT cache database." echo "Try running: openvasmd --rebuild" exit 6 fi echo "Starting $progname:" daemon --pidfile=/var/run/$prog.pid $prog $PARAMS RETVAL=$? echo [ $RETVAL -eq 0 ] && touch $lockfile return $RETVAL } stop() { echo -n "Stopping $progname: " killproc $prog RETVAL=$? echo [ $RETVAL -eq 0 ] && rm -f $lockfile return $RETVAL } restart() { stop start } case "$1" in start) rh_status_q && exit 0 $1 ;; stop) rh_status_q || exit 0 $1 ;; restart) $1 ;; condrestart|try-restart) rh_status_q || exit 0 $1 ;; reload) ;; status) status -p /var/run/$prog.pid $progname ;; *) echo "Usage: $0 {start|stop|status|restart|condrestart|reload}" exit 1 esac exit 0