|
|
@@ -38,14 +38,19 @@ Release: 20031003
|
|
|
# list of sources
|
|
|
Source0: ftp://ftp.nessus.org/pub/nessus/nessus-%{version}/src/nessus-core-%{version}.tar.gz
|
|
|
Source1: ftp://ftp.nessus.org/pub/nessus/nessus-%{version}/src/nessus-plugins-%{version}.tar.gz
|
|
|
+Source2: nessusd.conf
|
|
|
+Source3: nessusd.rules
|
|
|
+Source4: nessusd.users
|
|
|
+Source5: rc.nessus
|
|
|
+Patch0: nessus-tool.patch
|
|
|
|
|
|
# build information
|
|
|
Prefix: %{l_prefix}
|
|
|
BuildRoot: %{l_buildroot}
|
|
|
BuildPreReq: OpenPKG, openpkg >= 20030103, X11, gcc, make
|
|
|
PreReq: OpenPKG, openpkg >= 20030103, X11
|
|
|
-BuildPreReq: nessus-libs, glib, gtk
|
|
|
-PreReq: nessus-libs, glib, gtk
|
|
|
+BuildPreReq: nessus-libs, glib, gtk, openssl
|
|
|
+PreReq: nessus-libs, glib, gtk, openssl
|
|
|
AutoReq: no
|
|
|
AutoReqProv: no
|
|
|
|
|
|
@@ -57,74 +62,113 @@ AutoReqProv: no
|
|
|
%prep
|
|
|
%setup0 -q -c
|
|
|
%setup1 -q -T -D -a 1
|
|
|
+ cd nessus-core
|
|
|
+ %patch0 -p0
|
|
|
|
|
|
%build
|
|
|
# build nessus-core part
|
|
|
- pushd nessus-core
|
|
|
- CC="%{l_cc}" \
|
|
|
- CFLAGS="%{l_cflags -O}" \
|
|
|
- CPPFLAGS="%{l_cppflags}" \
|
|
|
- LDFLAGS="%{l_ldflags}" \
|
|
|
- ./configure \
|
|
|
- --prefix=%{l_prefix} \
|
|
|
- --enable-unix-socket=%{l_prefix}/var/nessus-tool/nessus.socket \
|
|
|
- --disable-syslog \
|
|
|
- --with-x \
|
|
|
- --x-includes=`%{l_prefix}/etc/rc --query x11_incdir` \
|
|
|
- --x-libraries=`%{l_prefix}/etc/rc --query x11_libdir` \
|
|
|
- --enable-gtk
|
|
|
- %{l_make} %{l_mflags -O}
|
|
|
- popd
|
|
|
+ ( cd nessus-core
|
|
|
+ CC="%{l_cc}" \
|
|
|
+ CFLAGS="%{l_cflags -O}" \
|
|
|
+ CPPFLAGS="%{l_cppflags}" \
|
|
|
+ LDFLAGS="%{l_ldflags}" \
|
|
|
+ ./configure \
|
|
|
+ --prefix=%{l_prefix} \
|
|
|
+ --localstatedir=%{l_prefix}/var/nessus \
|
|
|
+ --sharedstatedir=%{l_prefix}/var/nessus \
|
|
|
+ --enable-unix-socket=%{l_prefix}/var/nessus/nessusd.socket \
|
|
|
+ --disable-syslog \
|
|
|
+ --with-x \
|
|
|
+ --x-includes=`%{l_prefix}/etc/rc --query x11_incdir` \
|
|
|
+ --x-libraries=`%{l_prefix}/etc/rc --query x11_libdir` \
|
|
|
+ --enable-save-sessions \
|
|
|
+ --enable-save-kb \
|
|
|
+ --enable-release
|
|
|
+ %{l_make} %{l_mflags -O}
|
|
|
+ ) || exit $?
|
|
|
|
|
|
# temporarily install nessus-core for nessus-plugins building
|
|
|
- pushd nessus-core
|
|
|
- nessus_core=`pwd`
|
|
|
- %{l_make} %{l_mflags -O} \
|
|
|
- install DESTDIR=${nessus_core}/tmp
|
|
|
- popd
|
|
|
+ nessus_core=`pwd`/nessus-core
|
|
|
+ ( cd nessus-core
|
|
|
+ %{l_make} %{l_mflags -O} \
|
|
|
+ install DESTDIR=${nessus_core}/tmp
|
|
|
+ ) || exit $?
|
|
|
|
|
|
# build nessus-plugins part
|
|
|
- pushd nessus-plugins
|
|
|
- CC="%{l_cc}" \
|
|
|
- CFLAGS="-I${nessus_core}/tmp%{l_prefix}/include/nessus %{l_cflags -O}" \
|
|
|
- CPPFLAGS="-I${nessus_core}/tmp%{l_prefix}/include/nessus %{l_cppflags}" \
|
|
|
- LDFLAGS="%{l_ldflags}" \
|
|
|
- ./configure \
|
|
|
- --prefix=%{l_prefix} \
|
|
|
- --enable-install="`%{l_shtool} echo -e %u`" \
|
|
|
- --enable-shared
|
|
|
- %{l_shtool} subst \
|
|
|
- -e 's;getinterfaces;local_getinterfaces;g' \
|
|
|
- -e 's;routethrough;local_routethrough;g' \
|
|
|
- -e 's;ipaddr2devname;local_ipaddr2devname;g' \
|
|
|
- -e 's;islocalhost;local_islocalhost;g' \
|
|
|
- -e 's;get_random_bytes;local_get_random_bytes;g' \
|
|
|
- -e 's;getsourceip;local_getsourceip;g' \
|
|
|
- plugins/nmap_osfingerprint/*.[ch]
|
|
|
- %{l_make} %{l_mflags -O}
|
|
|
- popd
|
|
|
+ ( cd nessus-plugins
|
|
|
+ CC="%{l_cc}" \
|
|
|
+ CFLAGS="-I${nessus_core}/tmp%{l_prefix}/include/nessus %{l_cflags -O}" \
|
|
|
+ CPPFLAGS="-I${nessus_core}/tmp%{l_prefix}/include/nessus %{l_cppflags}" \
|
|
|
+ LDFLAGS="%{l_ldflags}" \
|
|
|
+ ./configure \
|
|
|
+ --prefix=%{l_prefix} \
|
|
|
+ --enable-install="`%{l_shtool} echo -e %u`" \
|
|
|
+ --enable-shared
|
|
|
+ %{l_shtool} subst \
|
|
|
+ -e 's;getinterfaces;local_getinterfaces;g' \
|
|
|
+ -e 's;routethrough;local_routethrough;g' \
|
|
|
+ -e 's;ipaddr2devname;local_ipaddr2devname;g' \
|
|
|
+ -e 's;islocalhost;local_islocalhost;g' \
|
|
|
+ -e 's;get_random_bytes;local_get_random_bytes;g' \
|
|
|
+ -e 's;getsourceip;local_getsourceip;g' \
|
|
|
+ plugins/nmap_osfingerprint/*.[ch]
|
|
|
+ %{l_make} %{l_mflags -O}
|
|
|
+ ) || exit $?
|
|
|
|
|
|
%install
|
|
|
rm -rf $RPM_BUILD_ROOT
|
|
|
|
|
|
# install nessus-core part
|
|
|
- pushd nessus-core
|
|
|
- %{l_make} %{l_mflags} install DESTDIR=$RPM_BUILD_ROOT
|
|
|
- popd
|
|
|
+ ( cd nessus-core
|
|
|
+ %{l_make} %{l_mflags} install DESTDIR=$RPM_BUILD_ROOT
|
|
|
+ ) || exit $?
|
|
|
|
|
|
# install nessus-plugins part
|
|
|
- pushd nessus-plugins
|
|
|
- %{l_make} %{l_mflags} install DESTDIR=$RPM_BUILD_ROOT
|
|
|
- popd
|
|
|
+ ( cd nessus-plugins
|
|
|
+ %{l_make} %{l_mflags} install DESTDIR=$RPM_BUILD_ROOT
|
|
|
+ ) || exit $?
|
|
|
|
|
|
# strip down installation
|
|
|
strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true
|
|
|
|
|
|
+ # install default configuration
|
|
|
+ %{l_shtool} install -c -m 644 \
|
|
|
+ %{SOURCE nessusd.conf} \
|
|
|
+ %{SOURCE nessusd.rules} \
|
|
|
+ %{SOURCE nessusd.users} \
|
|
|
+ $RPM_BUILD_ROOT%{l_prefix}/etc/nessus/
|
|
|
+
|
|
|
+ # install run-command script
|
|
|
+ %{l_shtool} mkdir -f -p -m 755 \
|
|
|
+ $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d
|
|
|
+ %{l_shtool} install -c -m 755 %{l_value -s -a} \
|
|
|
+ %{SOURCE rc.nessus} $RPM_BUILD_ROOT%{l_prefix}/etc/rc.d/
|
|
|
+
|
|
|
# determine installation files
|
|
|
- %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}
|
|
|
+ %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT \
|
|
|
+ %{l_files_std} \
|
|
|
+ '%config %{l_prefix}/etc/nessus/*'
|
|
|
|
|
|
%files -f files
|
|
|
|
|
|
%clean
|
|
|
rm -rf $RPM_BUILD_ROOT
|
|
|
|
|
|
+%post
|
|
|
+ if [ $1 -le 2 ]; then
|
|
|
+ if [ ! -f $RPM_INSTALL_PREFIX/var/nessus/CA/servercert.pem ]; then
|
|
|
+ ( echo "For the SSL/TLS based remote client/server connections"
|
|
|
+ echo "between the Nessus server and the Nessus clients, an"
|
|
|
+ echo "X.509 server certificate/key pair is needed. Run the"
|
|
|
+ echo "following command to create it once:"
|
|
|
+ echo " \$ $RPM_INSTALL_PREFIX/sbin/nessus-mkcert"
|
|
|
+ ) | %{l_rpmtool} msg -b -t info
|
|
|
+ fi
|
|
|
+ fi
|
|
|
+ if [ $1 -eq 1 ]; then
|
|
|
+ ( echo "Each Nessus user has to be created on the Nessus server"
|
|
|
+ echo "Run the following command to create an individual user:"
|
|
|
+ echo " \$ $RPM_INSTALL_PREFIX/sbin/nessus-adduser"
|
|
|
+ ) | %{l_rpmtool} msg -b -t info
|
|
|
+ fi
|
|
|
+
|