Install Greenbone Vulnerability Manager 10 on Ubuntu 18.04 from source...
Jun 11, 2019Edits:
- 2019-06-19 » Fixed a typo when compiling openvas scanner. Thanks for alvarowird for the find!
A try at GVM 10 on Ubuntu 18.04LTS from source. Instead of the beta 10 ones.
Like the last guides –
This installation is not made for public facing servers, there is no build in security in my setup.
Everything is run as root in this example below, including daemons and web servers…
I take no responsibility if this guide bork you server, burn your house down to ashes or just messes up your life.. It’s under the “it worked for me[tm]” clause
This is work in progress.
Prepare for download
cd /usr/local/src
sudo mkdir gvm10
sudo chown $USER:$USER gvm10
cd gvm10
More info about the tarballs https://community.greenbone.net/t/gvm-10-release/1960
Download the magic.
wget -O gvm-libs-10.0.0.tar.gz https://github.com/greenbone/gvm-libs/archive/v10.0.0.tar.gz ;\
wget -O openvas-scanner-6.0.0.tar.gz https://github.com/greenbone/openvas-scanner/archive/v6.0.0.tar.gz;\
wget -O gvmd-8.0.0.tar.gz https://github.com/greenbone/gvmd/archive/v8.0.0.tar.gz ;\
wget -O gsa-8.0.0.tar.gz https://github.com/greenbone/gsa/archive/v8.0.0.tar.gz ;\
wget -O openvas-smb-1.0.5.tar.gz https://github.com/greenbone/openvas-smb/archive/v1.0.5.tar.gz ;\
wget -O ospd-1.3.2.tar.gz https://github.com/greenbone/ospd/archive/v1.3.2.tar.gz
unpack
find . -name \*.gz -exec tar zxvfp {} \;
Become almighty root
sudo su
install requirements
apt install software-properties-common ;\
add-apt-repository universe ;\
apt install -y cmake pkg-config libglib2.0-dev libgpgme11-dev uuid-dev libssh-gcrypt-dev libhiredis-dev \
gcc libgnutls28-dev libpcap-dev libgpgme-dev bison libksba-dev libsnmp-dev libgcrypt20-dev redis-server \
libsqlite3-dev libical-dev gnutls-bin doxygen nmap libmicrohttpd-dev libxml2-dev apt-transport-https curl \
xmltoman xsltproc gcc-mingw-w64 perl-base heimdal-dev libpopt-dev graphviz nodejs rpm nsis wget sshpass \
socat snmp gettext python-polib git
install gvm-libs
cd gvm-libs-10.0.0 ;\
mkdir build ;\
cd build ;\
cmake .. ;\
make ;\
make doc-full ;\
make install ;\
cd /usr/local/src/gvm10
config and build openvas-smb
cd openvas-smb-1.0.5 ;\
mkdir build ;\
cd build/ ;\
cmake .. ;\
make ;\
make install ;\
cd /usr/local/src/gvm10
config and build scanner
cd openvas-6.0.0 ;\
mkdir build ;\
cd build/ ;\
cmake .. ;\
make ;\
make doc-full ;\
make install ;\
cd /usr/local/src/gvm10
Fix redis for default openvas install
cp /etc/redis/redis.conf /etc/redis/redis.orig ;\
cp /usr/local/src/gvm10/openvas-scanner-6.0.0/build/doc/redis_config_examples/redis_4_0.conf /etc/redis/redis.conf ;\
sed -i 's|/usr/local/var/run/openvas-redis.pid|/var/run/redis/redis-server.pid|g' /etc/redis/redis.conf ;\
sed -i 's|/tmp/redis.sock|/var/run/redis/redis-server.sock|g' /etc/redis/redis.conf ;\
sed -i 's|dir ./|dir /var/lib/redis|g' /etc/redis/redis.conf
sysctl -w net.core.somaxconn=1024
sysctl vm.overcommit_memory=1
echo "net.core.somaxconn=1024" >> /etc/sysctl.conf
echo "vm.overcommit_memory=1" >> /etc/sysctl.conf
cat << EOF > /etc/systemd/system/disable-thp.service
[Unit]
Description=Disable Transparent Huge Pages (THP)
[Service]
Type=simple
ExecStart=/bin/sh -c "echo 'never' > /sys/kernel/mm/transparent_hugepage/enabled && echo 'never' > /sys/kernel/mm/transparent_hugepage/defrag"
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload ;\
systemctl start disable-thp ;\
systemctl enable disable-thp ;\
systemctl restart redis-server
cat << EOF > /usr/local/etc/openvas/openvassd.conf
db_address = /var/run/redis/redis-server.sock
EOF
update nvt’s
greenbone-nvt-sync
reload modules
ldconfig
start openvassd
openvassd
check out so that openvassd is running
root@hostilehamster:/usr/local/src/gse10b2# watch "ps -ef | grep openvassd"
root 32078 1 27 16:09 ? 00:00:36 openvassd: Reloaded 6550 of 34309 NVTs (19% / ETA: 09:10)1
root 32079 32078 0 16:09 ? 00:00:00 openvassd (Loading Handler)
Wait until “openvassd: Reloaded is done”.. and switches to “Waiting for ingcoming…”
config and build manager
cd gvmd-8.0.0 ;\
mkdir build ;\
cd build/ ;\
cmake .. ;\
make ;\
make doc-full ;\
make install ;\
cd /usr/local/src/gvm10
configure and install gsa
curl --silent --show-error https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - ;\
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list ;\
sudo apt-get update ;\
sudo apt-get install yarn
cd gsa-8.0.0 ;\
sed -i 's/#ifdef GIT_REV_AVAILABLE/#ifdef GIT_REVISION/g' ./gsad/src/gsad.c ;\
sed -i 's/return root.get_result.commands_response.get_results_response.result/return root.get_result.get_results_response.result/g' ./gsa/src/gmp/commands/results.js ;\
mkdir build ;\
cd build/ ;\
cmake .. ;\
make ;\
make doc-full ;\
make install ;\
cd /usr/local/src/gvm10
fix certs
gvm-manage-certs -a
create admin user
gvmd --create-user=admin
start evrytnhg to test is out..
gvmd ;\
openvassd ;\
gsad
And point your browser to GSA with a new layout https://ipnumberofyourserver and login :)
Coffe..
To be continued…