From e9a7006cde1ba891e7892d1ff12b25b2cadb8d29 Mon Sep 17 00:00:00 2001 From: Marco Bonetti Date: Mon, 12 Apr 2010 19:34:18 -0400 Subject: network/openvas-manager: Added (OpenVAS scan manager) --- network/openvas-manager/LDFLAG.diff | 24 ++++++ network/openvas-manager/README | 24 ++++++ network/openvas-manager/doinst.sh | 22 ++++++ network/openvas-manager/openvas-manager.SlackBuild | 90 ++++++++++++++++++++++ network/openvas-manager/openvas-manager.info | 10 +++ network/openvas-manager/rc.openvasmd | 53 +++++++++++++ network/openvas-manager/slack-desc | 19 +++++ 7 files changed, 242 insertions(+) create mode 100644 network/openvas-manager/LDFLAG.diff create mode 100644 network/openvas-manager/README create mode 100644 network/openvas-manager/doinst.sh create mode 100644 network/openvas-manager/openvas-manager.SlackBuild create mode 100644 network/openvas-manager/openvas-manager.info create mode 100644 network/openvas-manager/rc.openvasmd create mode 100644 network/openvas-manager/slack-desc (limited to 'network') diff --git a/network/openvas-manager/LDFLAG.diff b/network/openvas-manager/LDFLAG.diff new file mode 100644 index 0000000000..a65c13bffe --- /dev/null +++ b/network/openvas-manager/LDFLAG.diff @@ -0,0 +1,24 @@ +diff -Naur openvas-manager-1.0.0-beta5.orig/src/CMakeLists.txt openvas-manager-1.0.0-beta5/src/CMakeLists.txt +--- openvas-manager-1.0.0-beta5.orig/src/CMakeLists.txt 2010-03-04 15:00:41.000000000 +0100 ++++ openvas-manager-1.0.0-beta5/src/CMakeLists.txt 2010-03-09 14:27:37.161580945 +0100 +@@ -128,7 +128,7 @@ + endif (OPENVAS_DATA_DIR) + + set_target_properties (openvasmd PROPERTIES LINK_FLAGS +- "${LIB_TEMP} -lsqlite3 -lgnutls -luuid ${GLIB_LDFLAGS} ${OPENVAS_LDFLAGS}") ++ "${LIB_TEMP} -lsqlite3 -ldl -lgnutls -luuid ${GLIB_LDFLAGS} ${OPENVAS_LDFLAGS}") + + set_target_properties (openvasmd PROPERTIES COMPILE_FLAGS + "${HEADER_TEMP} ${OPENVAS_CFLAGS} ${GLIB_CFLAGS}") +diff -Naur openvas-manager-1.0.0-beta5.orig/src/tests/CMakeLists.txt openvas-manager-1.0.0-beta5/src/tests/CMakeLists.txt +--- openvas-manager-1.0.0-beta5.orig/src/tests/CMakeLists.txt 2010-03-04 15:00:41.000000000 +0100 ++++ openvas-manager-1.0.0-beta5/src/tests/CMakeLists.txt 2010-03-09 14:28:06.409890850 +0100 +@@ -45,7 +45,7 @@ + set (LIB_TEMP "") + endif (OPENVAS_LIB_INSTALL_DIR) + +-set (OVAS_LDFLAG "${LIB_TEMP} -lsqlite3 -lgnutls ${OPENVAS_LDFLAGS}") ++set (OVAS_LDFLAG "${LIB_TEMP} -lsqlite3 -ldl -lgnutls ${OPENVAS_LDFLAGS}") + + MARK_AS_ADVANCED (LIB_TEMP) + diff --git a/network/openvas-manager/README b/network/openvas-manager/README new file mode 100644 index 0000000000..811cae719e --- /dev/null +++ b/network/openvas-manager/README @@ -0,0 +1,24 @@ +OpenVAS stands for Open Vulnerability Assessment System and is a network +security scanner with associated tools like a graphical user front-end. The +core component is a server with a set of network vulnerability tests (NVTs) +to detect security problems in remote systems and applications. + +OpenVAS products are Free Software under GNU GPL and a fork of Nessus. + +To build a complete OpenVAS scanner installation, however, you have to compile +and install the packages in the following sequence: + 1. openvas-libraries + 2. openvas-scanner + 3. openvas-client + +The openvas-client GUI is needed to interact with the OpenVAS scanner, however +there are some new optional modules: + 1. openvas-manager for storing and organizing scans on a central server in a + SQL database + 2. openvas-administrator for User-, Feed- and Settings-Management + 3. greenbone-security-assistant for a web-based Vulnerability Management + +This package provides the OpenVAS manager, it will also install an rc script +to start the manager at system startup, however read carefully the README +provided in the package doc folder as it outlines some important configuration +prerequisites. diff --git a/network/openvas-manager/doinst.sh b/network/openvas-manager/doinst.sh new file mode 100644 index 0000000000..c905f12f06 --- /dev/null +++ b/network/openvas-manager/doinst.sh @@ -0,0 +1,22 @@ +config() { + NEW="$1" + OLD="`dirname $NEW`/`basename $NEW .new`" + # If there's no config file by that name, mv it over: + if [ ! -r $OLD ]; then + mv $NEW $OLD + elif [ "`cat $OLD | md5sum`" = "`cat $NEW | md5sum`" ]; then # toss the redundant copy + rm $NEW + fi + # Otherwise, we leave the .new copy for the admin to consider... +} + +# Keep same perms on rc.openvasmd.new: +if [ -e etc/rc.d/rc.openvasmd ]; then + cp -a etc/rc.d/rc.openvasmd etc/rc.d/rc.openvasmd.new.incoming + cat etc/rc.d/rc.openvasmd.new > etc/rc.d/rc.openvasmd.new.incoming + mv etc/rc.d/rc.openvasmd.new.incoming etc/rc.d/rc.openvasmd.new +fi + +config etc/rc.d/rc.openvasmd.new +config etc/openvas/openvasmd_log.conf.new + diff --git a/network/openvas-manager/openvas-manager.SlackBuild b/network/openvas-manager/openvas-manager.SlackBuild new file mode 100644 index 0000000000..4c3b588428 --- /dev/null +++ b/network/openvas-manager/openvas-manager.SlackBuild @@ -0,0 +1,90 @@ +#!/bin/sh + +# Slackware build script for OpenVAS manager. +# +# Copyright 2010-2011 Marco Bonetti +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +PRGNAM=openvas-manager +VERSION=${VERSION:-1.0.0_beta5} +SRCVER=$(echo $VERSION | tr _ -) +ARCH=${ARCH:-i486} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +DOCS="COPYING README" + +set -e + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM-$SRCVER +tar xvf $CWD/$PRGNAM-$SRCVER.tar.gz +cd $PRGNAM-$SRCVER + +# Fix LDFLAG +cat $CWD/LDFLAG.diff | patch -p1 --verbose + +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +cmake \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DLIBDIR=/usr/lib \ + -DSYSCONFDIR=/etc \ + -DLOCALSTATEDIR=/var \ + -DMANDIR=/usr/man \ + -DDOCDIR=/usr/doc/openvas-manager-$VERSION +make +make install DESTDIR=$PKG + +( cd $PKG + find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null || true + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null || true +) + +# config file +mv $PKG/etc/openvas/openvasmd_log.conf $PKG/etc/openvas/openvasmd_log.conf.new + +# install rc script +install -D -m0755 -oroot -groot $CWD/rc.openvasmd $PKG/etc/rc.d/rc.openvasmd.new + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a $DOCS $PKG/usr/doc/$PRGNAM-$VERSION +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc +cat $CWD/doinst.sh > $PKG/install/doinst.sh + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} diff --git a/network/openvas-manager/openvas-manager.info b/network/openvas-manager/openvas-manager.info new file mode 100644 index 0000000000..4ed18af346 --- /dev/null +++ b/network/openvas-manager/openvas-manager.info @@ -0,0 +1,10 @@ +PRGNAM="openvas-manager" +VERSION="1.0.0_beta5" +HOMEPAGE="http://www.openvas.org/" +DOWNLOAD="http://wald.intevation.org/frs/download.php/718/openvas-manager-1.0.0-beta5.tar.gz" +DOWNLOAD_x86_64="" +MD5SUM="32b0f30913538f3c991478e5b0cc9e94" +MD5SUM_x86_64="" +MAINTAINER="Marco Bonetti" +EMAIL="sid77@slackware.it" +APPROVED="dsomero" diff --git a/network/openvas-manager/rc.openvasmd b/network/openvas-manager/rc.openvasmd new file mode 100644 index 0000000000..0a89f4e1b7 --- /dev/null +++ b/network/openvas-manager/rc.openvasmd @@ -0,0 +1,53 @@ +#!/bin/sh + +# Get OpenVAS options +. /etc/rc.d/rc.openvas.conf + +PIDFILE="/var/run/openvasmd.pid" + +start() { + echo "Starting OpenVAS manager..." + openvasmd --port=${MAN_PORT} --sport=${SCA_PORT} ${MAN_OPTIONS} +} + +stop() { + echo "Stopping OpenVAS manager..." + kill `cat $PIDFILE` +} + +update() { + openvasmd --sport=${SCA_PORT} --update +} + +rebuild() { + openvasmd --sport=${SCA_PORT} --rebuild +} + +migrate() { + openvasmd --sport=${SCA_PORT} --migrate +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart) + stop + sleep 1 + start + ;; + update) + update + ;; + rebuild) + rebuild + ;; + migrate) + migrate + ;; + *) + echo "Usage: $0 (start|stop|restart|update|rebuild|migrate)" +esac diff --git a/network/openvas-manager/slack-desc b/network/openvas-manager/slack-desc new file mode 100644 index 0000000000..7aedea5842 --- /dev/null +++ b/network/openvas-manager/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +openvas-manager: OpenVAS manager (OpenVAS manager) +openvas-manager: +openvas-manager: OpenVAS stands for Open Vulnerability Assessment System and is a +openvas-manager: network security manager with associated tools like a graphical user +openvas-manager: front-end. The core component is a server with a set of network +openvas-manager: vulnerability tests (NVTs) to detect security problems in remote +openvas-manager: systems and applications. +openvas-manager: +openvas-manager: OpenVAS products are Free Software under GNU GPL and a fork of Nessus. +openvas-manager: +openvas-manager: This package provides the OpenVAS manager. -- cgit v1.2.3