Greenbone upgrade in Kali Linux 2020.2

Hi,
Please help me. I am new for this. I updated my Kali to 2020.2 and OpenVas also upgraded to 7.0 to 9.0. But Greenbone is still 7.0.3. How can I upgrade this to 9.0 . What is the difference here between greenbone and Openvas? I am not able to upgrade Greenbone?

regards,
Kumar

This is clearly not a question which belongs into the “Feed Services (GCF & GSF)” category, moving into a better fitting one.

Thanks you!!

My greenbone is saying Greenbone-Security-Assistant is already the newest version (7.0.3+dfsg.1-1)

The version information is a bit confusing. The OpenVAS suite got renamed to GVM with version 9. The components of the suite may have different version numbers. See About the Greenbone Source Edition (GSE) category for more details about our releases.

1 Like

Thank you for reply… Please have a look
My Kali version…
kumar@MyKali:~# cat /etc/os-release
PRETTY_NAME=“Kali GNU/Linux Rolling”
NAME=“Kali GNU/Linux”
ID=kali
VERSION=“2020.2”
VERSION_ID=“2020.2”
VERSION_CODENAME=“kali-rolling”

Openvas is saying below on my Kali…

kumar@MyKali:~# openvas-check-setup --v9
openvas-check-setup 2.3.7
Test completeness and readiness of OpenVAS-9
Step 4: Checking Greenbone Security Assistant (GSA) …
OK: Greenbone Security Assistant is present in version 7.0.3.
OK: Your OpenVAS certificate infrastructure passed validation.
It seems like your OpenVAS-9 installation is OK.

openvas is already the newest version (9.0.3kali1).
openvas-cli is already the newest version (1.4.5-2).
openvas-cli set to manually installed.
openvas-manager is already the newest version (7.0.3-1).

When I try to install Greenbone…

kumar@MyKali:~# apt-get install greenbone*
Reading package lists… Done
Building dependency tree
Reading state information… Done
Note, selecting ‘greenbone-security-assistant’ for glob ‘greenbone*’
Note, selecting ‘greenbone-security-assistant-common’ for glob ‘greenbone*’
greenbone-security-assistant is already the newest version (7.0.3+dfsg.1-1).
greenbone-security-assistant-common is already the newest version (7.0.3+dfsg.1-1).
0 upgraded, 0 newly installed, 0 to remove and 410 not upgraded.

Please now help me…

Kali Linux is only shipping the end-of-life and unsupported OpenVAS/GVM-9 so you can’t use apt-get install to install GVM-11 (the latest and current recommended stable version of GVM).

If you want to use a more recent version and supported version of GVM on Kali Linux you need to uninstall all Kali packages and build GVM-11 from source.

More info about the current stable GVM-11 and where to get it is available at:

https://community.greenbone.net/t/gvm-11-stable-initial-release-2019-10-14

There are also some 3rdparty installation guides like e.g.

https://sadsloth.net/post/install-gvm11-src_part1/
https://sadsloth.net/post/install-gvm11-src-on-debian/

which might be applicable on Kali Linux as well.

1 Like

I couldn’t figure out how to post so I,just decided to submit a reply. I have been following directions for installing gvm11 from source for Debian on my Kali system. Most everything has been manageable until now. I have already compiled using cmake and ran make and make install on the install gvm-libs, config and build openvas-smb, config and build scanner, install redis-server, config and build manager, configure PostgresSQL, update IANA Service names. when I get to “install and configure gsa” which is my next step and not my last. It compiles but when I do a make I get the following errors there are examples out there of similar examples which I am looking at but nothing which addresses these errors on gvm11:

root@kali-linux:/opt/gvm/src/gsa# make
make[1]: Entering directory ‘/opt/gvm/src/gsa’
make[2]: Entering directory ‘/opt/gvm/src/gsa’
make[2]: Leaving directory ‘/opt/gvm/src/gsa’
[ 11%] Built target gsa-ng
make[2]: Entering directory ‘/opt/gvm/src/gsa’
make[2]: Leaving directory ‘/opt/gvm/src/gsa’
make[2]: Entering directory ‘/opt/gvm/src/gsa’
– Found Git: /usr/bin/git (found version “2.28.0”)
make[2]: Leaving directory ‘/opt/gvm/src/gsa’
[ 11%] Built target revisiontag
make[2]: Entering directory ‘/opt/gvm/src/gsa’
make[2]: Leaving directory ‘/opt/gvm/src/gsa’
make[2]: Entering directory ‘/opt/gvm/src/gsa’
[ 16%] Building C object gsad/src/CMakeFiles/gsad.dir/gsad.c.o
/opt/gvm/src/gsa/gsad/src/gsad.c: In function ‘start_unix_http_daemon’:
/opt/gvm/src/gsa/gsad/src/gsad.c:2602:20: error: passing argument 5 of ‘MHD_start_daemon’ from incompatible pointer type [-Werror=incompatible-pointer-types]
2602 | 0, NULL, NULL, handler, http_handlers, MHD_OPTION_NOTIFY_COMPLETED,
| ^~~~~~~
| |
| int (*)(void *, struct MHD_Connection *, const char *, const char *, const char *, const char *, size_t , void **) {aka int ()(void *, struct MHD_Connection *, const char *, const char *, const char *, const char *, long unsigned int , void **)}
In file included from /opt/gvm/src/gsa/gsad/src/gsad_params.h:29,
from /opt/gvm/src/gsa/gsad/src/gsad_user.h:28,
from /opt/gvm/src/gsa/gsad/src/gsad_base.h:29,
from /opt/gvm/src/gsa/gsad/src/gsad.c:71:
/usr/include/microhttpd.h:2428:45: note: expected ‘MHD_AccessHandlerCallback’ {aka ‘enum MHD_Result (
)(void *, struct MHD_Connection *, const char *, const char *, const char *, const char *, long unsigned int , void **)’} but argument is of type ‘int ()(void *, struct MHD_Connection *, const char *, const char *, const char *, const char *, size_t , void **)’ {aka ‘int ()(void *, struct MHD_Connection *, const char , const char *, const char *, const char *, long unsigned int *, void **)’}
2428 | MHD_AccessHandlerCallback dh, void *dh_cls,
| ~~~~~~~~~~~~~~~~~~~~^~
/opt/gvm/src/gsa/gsad/src/gsad.c: In function ‘start_http_daemon’:
/opt/gvm/src/gsa/gsad/src/gsad.c:2636:30: error: passing argument 5 of ‘MHD_start_daemon’ from incompatible pointer type [-Werror=incompatible-pointer-types]
2636 | flags, port, NULL, NULL, handler, http_handlers,
| ^

| |
| int (
)(void *, struct MHD_Connection *, const char *, const char *, const char *, const char *, size_t , void **) {aka int ()(void *, struct MHD_Connection *, const char *, const char *, const char *, const char *, long unsigned int , void **)}
In file included from /opt/gvm/src/gsa/gsad/src/gsad_params.h:29,
from /opt/gvm/src/gsa/gsad/src/gsad_user.h:28,
from /opt/gvm/src/gsa/gsad/src/gsad_base.h:29,
from /opt/gvm/src/gsa/gsad/src/gsad.c:71:
/usr/include/microhttpd.h:2428:45: note: expected ‘MHD_AccessHandlerCallback’ {aka ‘enum MHD_Result (
)(void *, struct MHD_Connection *, const char *, const char *, const char *, const char *, long unsigned int , void **)’} but argument is of type ‘int ()(void *, struct MHD_Connection *, const char *, const char *, const char *, const char *, size_t , void **)’ {aka ‘int ()(void *, struct MHD_Connection *, const char *, const char *, const char *, const char *, long unsigned int , void **)’}
2428 | MHD_AccessHandlerCallback dh, void *dh_cls,
| ~~~~~~~~~~~~^~
/opt/gvm/src/gsa/gsad/src/gsad.c: In function ‘start_https_daemon’:
/opt/gvm/src/gsa/gsad/src/gsad.c:2668:30: error: passing argument 5 of ‘MHD_start_daemon’ from incompatible pointer type [-Werror=incompatible-pointer-types]
2668 | flags, port, NULL, NULL, &handle_request, http_handlers,
| ^

| |
| int (
)(void *, http_connection_t *, const char *, const char *, const char *, const char *, size_t , void **) {aka int ()(void *, struct MHD_Connection *, const char *, const char *, const char *, const char *, long unsigned int , void **)}
In file included from /opt/gvm/src/gsa/gsad/src/gsad_params.h:29,
from /opt/gvm/src/gsa/gsad/src/gsad_user.h:28,
from /opt/gvm/src/gsa/gsad/src/gsad_base.h:29,
from /opt/gvm/src/gsa/gsad/src/gsad.c:71:
/usr/include/microhttpd.h:2428:45: note: expected ‘MHD_AccessHandlerCallback’ {aka ‘enum MHD_Result (
)(void *, struct MHD_Connection *, const char *, const char *, const char *, const char *, long unsigned int , void **)’} but argument is of type ‘int ()(void *, http_connection_t *, const char *, const char *, const char *, const char *, size_t , void **)’ {aka ‘int ()(void *, struct MHD_Connection *, const char *, const char *, const char *, const char *, long unsigned int *, void **)’}
2428 | MHD_AccessHandlerCallback dh, void dh_cls,
| ^~
cc1: all warnings being treated as errors
make[2]: *** [gsad/src/CMakeFiles/gsad.dir/build.make:63: gsad/src/CMakeFiles/gsad.dir/gsad.c.o] Error 1
make[2]: Leaving directory ‘/opt/gvm/src/gsa’
make[1]: *** [CMakeFiles/Makefile2:261: gsad/src/CMakeFiles/gsad.dir/all] Error 2
make[1]: Leaving directory ‘/opt/gvm/src/gsa’
make: *** [Makefile:152: all] Error 2
root@kali-linux:/opt/gvm/src/gsa# make
make[1]: Entering directory ‘/opt/gvm/src/gsa’
make[2]: Entering directory ‘/opt/gvm/src/gsa’
make[2]: Leaving directory ‘/opt/gvm/src/gsa’
[ 11%] Built target gsa-ng
make[2]: Entering directory ‘/opt/gvm/src/gsa’
make[2]: Leaving directory ‘/opt/gvm/src/gsa’
make[2]: Entering directory ‘/opt/gvm/src/gsa’
– Found Git: /usr/bin/git (found version “2.28.0”)
make[2]: Leaving directory ‘/opt/gvm/src/gsa’
[ 11%] Built target revisiontag
make[2]: Entering directory ‘/opt/gvm/src/gsa’
Scanning dependencies of target gsad
make[2]: Leaving directory ‘/opt/gvm/src/gsa’
make[2]: Entering directory ‘/opt/gvm/src/gsa’
[ 16%] Building C object gsad/src/CMakeFiles/gsad.dir/gsad.c.o
/opt/gvm/src/gsa/gsad/src/gsad.c: In function ‘start_unix_http_daemon’:
/opt/gvm/src/gsa/gsad/src/gsad.c:2602:20: error: expected expression before ‘void’
2602 | 0, NULL, NULL, void *, http_handlers, MHD_OPTION_NOTIFY_COMPLETED,
| ^
~
/opt/gvm/src/gsa/gsad/src/gsad.c:2599:10: error: too few arguments to function ‘MHD_start_daemon’
2599 | return MHD_start_daemon (
| ^
~
In file included from /opt/gvm/src/gsa/gsad/src/gsad_params.h:29,
from /opt/gvm/src/gsa/gsad/src/gsad_user.h:28,
from /opt/gvm/src/gsa/gsad/src/gsad_base.h:29,
from /opt/gvm/src/gsa/gsad/src/gsad.c:71:
/usr/include/microhttpd.h:2425:1: note: declared here
2425 | MHD_start_daemon (unsigned int flags,
| ^
~~~~~
/opt/gvm/src/gsa/gsad/src/gsad.c: In function ‘start_http_daemon’:
/opt/gvm/src/gsa/gsad/src/gsad.c:2636:30: error: passing argument 5 of ‘MHD_start_daemon’ from incompatible pointer type [-Werror=incompatible-pointer-types]
2636 | flags, port, NULL, NULL, handler, http_handlers,
| ^~~~~~~
| |
| int (
)(void *, struct MHD_Connection *, const char *, const char *, const char *, const char *, size_t , void **) {aka int ()(void *, struct MHD_Connection *, const char *, const char *, const char *, const char *, long unsigned int , void **)}
In file included from /opt/gvm/src/gsa/gsad/src/gsad_params.h:29,
from /opt/gvm/src/gsa/gsad/src/gsad_user.h:28,
from /opt/gvm/src/gsa/gsad/src/gsad_base.h:29,
from /opt/gvm/src/gsa/gsad/src/gsad.c:71:
/usr/include/microhttpd.h:2428:45: note: expected ‘MHD_AccessHandlerCallback’ {aka ‘enum MHD_Result (
)(void *, struct MHD_Connection *, const char *, const char *, const char *, const char *, long unsigned int , void **)’} but argument is of type ‘int ()(void *, struct MHD_Connection *, const char *, const char *, const char *, const char *, size_t , void **)’ {aka ‘int ()(void *, struct MHD_Connection *, const char *, const char *, const char *, const char *, long unsigned int , void **)’}
2428 | MHD_AccessHandlerCallback dh, void *dh_cls,
| ~~~~~~~~~~~~^~
/opt/gvm/src/gsa/gsad/src/gsad.c: In function ‘start_https_daemon’:
/opt/gvm/src/gsa/gsad/src/gsad.c:2668:30: error: passing argument 5 of ‘MHD_start_daemon’ from incompatible pointer type [-Werror=incompatible-pointer-types]
2668 | flags, port, NULL, NULL, &handle_request, http_handlers,
| ^

| |
| int (
)(void *, http_connection_t *, const char *, const char *, const char *, const char *, size_t , void **) {aka int ()(void *, struct MHD_Connection *, const char *, const char *, const char *, const char *, long unsigned int , void **)}
In file included from /opt/gvm/src/gsa/gsad/src/gsad_params.h:29,
from /opt/gvm/src/gsa/gsad/src/gsad_user.h:28,
from /opt/gvm/src/gsa/gsad/src/gsad_base.h:29,
from /opt/gvm/src/gsa/gsad/src/gsad.c:71:
/usr/include/microhttpd.h:2428:45: note: expected ‘MHD_AccessHandlerCallback’ {aka ‘enum MHD_Result (
)(void *, struct MHD_Connection *, const char *, const char *, const char *, const char *, long unsigned int , void **)’} but argument is of type ‘int ()(void *, http_connection_t *, const char *, const char *, const char *, const char *, size_t , void **)’ {aka ‘int ()(void *, struct MHD_Connection *, const char *, const char *, const char *, const char *, long unsigned int *, void **)’}
2428 | MHD_AccessHandlerCallback dh, void *dh_cls,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~^~
/opt/gvm/src/gsa/gsad/src/gsad.c: In function ‘start_unix_http_daemon’:
/opt/gvm/src/gsa/gsad/src/gsad.c:2606:1: error: control reaches end of non-void function [-Werror=return-type]
2606 | }
| ^
cc1: all warnings being treated as errors
make[2]: *** [gsad/src/CMakeFiles/gsad.dir/build.make:63: gsad/src/CMakeFiles/gsad.dir/gsad.c.o] Error 1
make[2]: Leaving directory ‘/opt/gvm/src/gsa’
make[1]: *** [CMakeFiles/Makefile2:261: gsad/src/CMakeFiles/gsad.dir/all] Error 2
make[1]: Leaving directory ‘/opt/gvm/src/gsa’
make: *** [Makefile:152: all] Error 2

For some reason many of the lines have a strikethrough. This includes the errors which may make them easier to spot. Also, I ran into something earlier with depracated functions but managed to fix it. I don’t know if this is something similar.