GVM nazývaný také „Greenbone Vulnerability Management“ je software pro skenování a správu zranitelnosti s otevřeným zdrojovým kódem, který poskytuje sadu testů zranitelnosti sítě k nalezení bezpečnostních mezer v systémech a aplikacích. Jedná se o komplexní sadu nástrojů používaných mnoha bezpečnostními experty a běžnými uživateli po celém světě.
V tomto tutoriálu vám ukážeme, jak nainstalovat a nakonfigurovat GVM na serveru Ubuntu 20.04.
Předpoklady
- Server se systémem Ubuntu 20.04.
- Na serveru je nakonfigurováno heslo uživatele root.
Začínáme
Než začnete, budete muset aktualizovat systémové balíčky na nejnovější verzi. Můžete je aktualizovat pomocí následujícího příkazu:
apt-get update -y
Jakmile je váš server aktualizován, můžete přejít k dalšímu kroku.
Instalovat požadované závislosti
Než začnete, budete muset do systému nainstalovat všechny požadované závislosti. Můžete je nainstalovat spuštěním následujícího příkazu:
apt-get install software-properties-common build-essential cmake pkg-config libglib2.0-dev libgpgme-dev libgnutls28-dev uuid-dev libssh-gcrypt-dev libldap2-dev doxygen graphviz libhiredcli-dev -dev bison libksba-dev libsnmp-dev gcc-mingw-w64 heimdal-dev libpopt-dev xmltoman redis-server xsltproc libical-dev gnutls-bin nmap rpm nsis curl wget fakeroot gnupg sshmbclient socat pymldev3 polib gettext rsync xml-twig-tools python3-paramiko python3-lxml python3-defusedxml python3-pip python3-psutil python3-impacket virtualenv vim git texlive-latex-extra texlive-fonty-s-Jakmile jsou všechny závislosti nainstalovány, přidejte do systému úložiště Yarn:
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - echo "deb https://dl.yarnpkg.com/debian/ stable main" | tričko /etc/apt/sources.list.d/yarn.listDále aktualizujte úložiště a nainstalujte balíček Yarn pomocí následujícího příkazu:
apt-get update -y
apt-get install yarn -yDále upgradujte Yarn na nejnovější verzi pomocí následujícího příkazu:
instalace příze
upgrade přízeJakmile budete hotovi, můžete přejít k dalšímu kroku.
Instalace a konfigurace PostgreSQL
GVM používá PostgreSQL jako backend databáze, takže budete muset nainstalovat server PostgreSQL do vašeho systému. Můžete jej nainstalovat pomocí následujícího příkazu:
apt-get install postgresql postgresql-contrib postgresql-server-dev-all -yPo dokončení instalace se přihlaste do PostgreSQL a vytvořte uživatele a databázi pro GVM:
sudo -u postgres bash
export LC_ALL="C"
createuser -DRS gvm
createdb -O gvm gvmdDále se připojte k databázi a vytvořte roli a rozšíření pomocí následujícího příkazu:
psql gvmd
vytvořit roli dba pomocí superuživatele noinherit;
udělit dba gvm;
vytvořit rozšíření "uuid-ossp";
vytvořit rozšíření "pgcrypto";Dále ukončete PostgreSQL pomocí následujícího příkazu:
exit
exitStáhnout GVM
Nejprve vytvořte samostatný adresář a uživatele pro GVM pomocí následujícího příkazu:
mkdir /opt/gvm
adduser gvm --disabled-password --home /opt/gvm/ --no-create-home --gecos ''Dále přidejte uživatele redis do GVM a nastavte správná oprávnění pomocí následujícího příkazu:
usermod -aG redis gvm
chown gvm:gvm /opt/gvm/Dále vytvořte proměnnou cesty pro GVM pomocí následujícího příkazu:
echo 'export PATH="$PATH:/opt/gvm/bin:/opt/gvm/sbin:/opt/gvm/.local/bin"' | tee -a /etc/profile.d/gvm.sh
chmod 0755 /etc/profile.d/gvm.sh
zdroj /etc/profile.d/gvm.shDále definujte cestu ke knihovně GVM pomocí následujícího příkazu:
nano /etc/ld.so.conf.d/gvm.confPřidejte následující řádek:
/opt/gvm/libDále se přihlaste k uživateli GVM a vytvořte adresář pro všechny komponenty:
su - gvm
mkdir srcDále stáhněte všechny požadované součásti v adresáři src pomocí následujícího příkazu:
cd src
export PKG_CONFIG_PATH=/opt/gvm/lib/pkgconfig:$PKG_CONFIG_PATH
git clone -b gvm-libs-20.08 --single-branch https://github.com/greenbone /gvm-libs.git
git clone -b openvas-20.08 --single-branch https://github.com/greenbone/openvas.git
git clone -b gvmd-20.08 --single- větev https://github.com/greenbone/gvmd.git
klon git -b master --single-branch https://github.com/greenbone/openvas-smb.git
klon git - b gsa-20.08 --single-branch https://github.com/greenbone/gsa.git
git clone -b ospd-openvas-20.08 --single-branch https://github.com/greenbone/ ospd-openvas.git
git clone -b ospd-20.08 --single-branch https://github.com/greenbone/ospd.gitInstalovat gvm-libs
Dále změňte adresář na gvm-libs, exportujte konfigurační cestu a vytvořte adresář sestavení pomocí následujícího příkazu:
cd gvm-libs
export PKG_CONFIG_PATH=/opt/gvm/lib/pkgconfig:$PKG_CONFIG_PATH
sestavení mkdirDále změňte adresář pro sestavení a kompilaci gvm-libs pomocí následujícího příkazu:
sestavení cd
cmake -DCMAKE_INSTALL_PREFIX=/opt/gvm ..
vytvořit
vytvořit dokument
provést instalaciInstalovat openvas-smb
Dále změňte adresář na openvas-smb, exportujte konfigurační cestu a vytvořte adresář sestavení pomocí následujícího příkazu:
cd /opt/gvm/src
cd openvas-smb
export PKG_CONFIG_PATH=/opt/gvm/lib/pkgconfig:$PKG_CONFIG_PATH
sestavení mkdirDále změňte adresář pro sestavení a kompilaci openvas-smb pomocí následujícího příkazu:
cd build
cmake -DCMAKE_INSTALL_PREFIX=/opt/gvm ..
make
make installInstalovat OpenVAS Scanner
Dále změňte adresář na openvas, exportujte konfigurační cestu a vytvořte adresář sestavení pomocí následujícího příkazu:
cd /opt/gvm/src
cd openvas
export PKG_CONFIG_PATH=/opt/gvm/lib/pkgconfig:$PKG_CONFIG_PATH
sestavení mkdirDále změňte adresář pro sestavení a instalaci skeneru OpenVAS pomocí následujícího příkazu:
sestavení cd
cmake -DCMAKE_INSTALL_PREFIX=/opt/gvm ..
vytvořit
vytvořit dokument
provést instalaciDále opusťte uživatele gvm pomocí následujícího příkazu:
exitDále vytvořte mezipaměť pro nainstalované sdílené knihovny pomocí následujícího příkazu:
exportujte LC_ALL="C"
ldconfigDále zkopírujte konfigurační soubor Redis skeneru OpenVAS pomocí následujícího příkazu:
cp /etc/redis/redis.conf /etc/redis/redis.orig
cp /opt/gvm/src/openvas/config/redis-openvas.conf /etc/redis/Dále nastavte správné vlastnictví pomocí následujícího příkazu:
chown redis:redis /etc/redis/redis-openvas.confDále aktualizujte cestu k Unix socketu Redis pomocí následujícího příkazu:
echo "db_address =/run/redis-openvas/redis.sock"> /opt/gvm/etc/openvas/openvas.confDále povolte a spusťte službu Redis pomocí následujícího příkazu:
povolit systemctl [chráněno e-mailem]
spustit systemctl [chráněno e-mailem]Dále budete muset upravit soubor sysctl.conf. Můžete to udělat pomocí následujícího příkazu:
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.confDále znovu načtěte sysctl pomocí následujícího příkazu:
sysctl -pVytvořit soubor služby Systemd
Nejprve vytvořte soubor služby systemd pro Transparent Huge Pages (THP) pomocí následujícího příkazu:
nano /etc/systemd/system/disable-thp.servicePřidejte následující řádky:
Description=Zakázat transparentní obrovské stránky (THP)[Service]Type=simpleExecStart=/bin/sh -c "echo 'nikdy'> /sys/kernel/mm/transparent_hugepage/enabled &&echo 'nikdy'> /sys/ kernel/mm/transparent_hugepage/defrag"[Install]WantedBy=multi-user.targetUložte a zavřete soubor a poté znovu načtěte službu systemd pomocí následujícího příkazu:
systemctl daemon-reloadDále spusťte službu disable-thp a povolte její spuštění při restartu systému:
systemctl start disable-thp
systemctl enable disable-thpPoté restartujte službu Redis, aby se změny projevily:
systemctl restart redis-serverDále budete muset uživateli gvm povolit spouštění všech systémových příkazů pomocí sudo bez zadání hesla. Můžete to udělat pomocí následujícího příkazu:
sed 's/Defaults\s.*secure_path=\"\/usr\/local\/sbin:\/usr\/local\/bin:\/usr\/sbin:\/usr\/bin:\/sbin:\/bin:\/snap\/bin\"/Výchozí secure_path=\"\/usr\/local\/sbin:\/usr\/local\/bin:\/usr\/sbin:\ /usr\/bin:\/sbin:\/bin:\/snap\/bin:\/opt\/gvm\/sbin\"/g' /etc/sudoers | EDITOR='tee' visudo
echo "gvm ALL =NOPASSWD:/opt/gvm/sbin/openvas"> /etc/sudoers.d/gvm
echo "gvm ALL =NOPASSWD:/opt/gvm /sbin/gsad">> /etc/sudoers.d/gvmAktualizovat NVT
Dále budete muset aktualizovat zdroj Network Vulnerability Tests z Greenbone Security Feed/Community Feed.
Nejprve se přihlaste k uživateli gvm pomocí následujícího příkazu:
su - gvmDále aktualizujte zdroj pomocí následujícího příkazu:
greenbone-nvt-syncPo dokončení aktualizace aktualizujte server Redis stejnými informacemi o VT ze souborů VT:
sudo openvas --update-vt-infoInstalovat Greenbone Vulnerability Manager
Nejprve změňte adresář na gvmd, exportujte konfigurační cestu a vytvořte adresář sestavení pomocí následujícího příkazu:
cd /opt/gvm/src/gvmd
export PKG_CONFIG_PATH=/opt/gvm/lib/pkgconfig:$PKG_CONFIG_PATH
sestavení mkdirDále změňte adresář pro sestavení a instalaci gvmd pomocí následujícího příkazu:
cd build/
cmake -DCMAKE_INSTALL_PREFIX=/opt/gvm ..
vytvořit
vytvořit dokument
provést instalaciDále opravte certifikát pomocí následujícího příkazu:
gvm-manage-certs -aMěli byste získat následující výstup:
Vygenerovaný soukromý klíč v /tmp/tmp.gW57p1UV0s/cakey.pem.Vygenerovaný certifikát s vlastním podpisem v /tmp/tmp.gW57p1UV0s/cacert.pem.Instalovaný soukromý klíč do /opt/gvm/var/lib/gvm/private /CA/cakey.pem. Certifikát nainstalovaný do /opt/gvm/var/lib/gvm/CA/cacert.pem.Vygenerovaný soukromý klíč v /tmp/tmp.gW57p1UV0s/serverkey.pem.Vygenerovaná žádost o certifikát v /tmp/tmp .gW57p1UV0s/serverrequest.pem. Podepsaná žádost o certifikát v /tmp/tmp.gW57p1UV0s/serverrequest.pem s certifikátem CA v /opt/gvm/var/lib/gvm/CA/cacert.pem pro vygenerování certifikátu v /tmp/tmp. gW57p1UV0s/servercert.pemInstalovaný soukromý klíč do /opt/gvm/var/lib/gvm/private/CA/serverkey.pem.Instalovaný certifikát do /opt/gvm/var/lib/gvm/CA/servercert.pem.Generovaný soukromý klíč v /tmp/tmp.gW57p1UV0s/clientkey.pem.Vygenerovaná žádost o certifikát v /tmp/tmp.gW57p1UV0s/clientrequest.pem.Podepsaná žádost o certifikát v /tmp/tmp.gW57p1UV0s/clientrequest.pem s certifikátem CA v /opt/gvm/ var/lib/gvm/CA/cacert.pem pro vygenerování certifikátu v /tmp/tmp.g W57p1UV0s/clientcert.pem Soukromý klíč nainstalovaný do /opt/gvm/var/lib/gvm/private/CA/clientkey.pem. Certifikát nainstalovaný do /opt/gvm/var/lib/gvm/CA/clientcert.pem.Odstranění dočasného adresáře /tmp/tmp.gW57p1UV0s.Konfigurace a aktualizace zdrojů (GVM)
Nejprve vytvořte administrátora pro přístup k webovému rozhraní GVM:
gvmd --create-user=admin --password=adminDále vyhledejte UUID uživatele admin pomocí následujícího příkazu:
gvmd --get-users --verboseMěli byste získat následující výstup:
admin 1288cbcf-23a0-407f-8013-b7a57acc5795Dále upravte nastavení gvmd pomocí uživatelského UUID:
gvmd --modify-setting 78eceaec-3385-11ea-b237-28d24461215b --value 1288cbcf-23a0-407f-8013-b7a57acc5795Dále synchronizujte všechny kanály Greenbone pomocí následujícího příkazu:
greenbone-feed-sync --type GVMD_DATA
greenbone-feed-sync --type SCAP
greenbone-feed-sync --type CERTInstalovat gsa
Nejprve změňte adresář na gsa, exportujte konfigurační cestu a vytvořte adresář sestavení pomocí následujícího příkazu:
cd /opt/gvm/src/gsa
export PKG_CONFIG_PATH=/opt/gvm/lib/pkgconfig:$PKG_CONFIG_PATH
sestavení mkdirDále změňte adresář pro sestavení a instalaci gsa pomocí následujícího příkazu:
cd build/
cmake -DCMAKE_INSTALL_PREFIX=/opt/gvm ..
vytvořit
vytvořit dokument
provést instalaciDále vytvořte soubor protokolu pro gsa pomocí následujícího příkazu:
dotkněte se /opt/gvm/var/log/gvm/gsad.logKonfigurovat OSPD-OpenVAS
Nejprve změňte adresář na src a exportujte konfigurační cestu pomocí následujícího příkazu:
cd /opt/gvm/src
export PKG_CONFIG_PATH=/opt/gvm/lib/pkgconfig:$PKG_CONFIG_PATHDále vytvořte virtuální prostředí Pythonu pomocí následujícího příkazu:
virtualenv --python python3.8 /opt/gvm/bin/ospd-scanner/Dále aktivujte virtuální prostředí pomocí následujícího příkazu:
zdroj /opt/gvm/bin/ospd-scanner/bin/activateDále vytvořte adresář pro ospd pomocí následujícího příkazu:
mkdir /opt/gvm/var/run/ospd/Dále změňte adresář na ospd a nainstalujte ospd pomocí pip:
cd ospd
instalace pip3.Dále změňte adresář na ospd-openvas a nainstalujte ospd-openvas pomocí příkazu pip:
cd /opt/gvm/src/ospd-openvas
instalace pip3 .Dále opusťte uživatele gvm pomocí následujícího příkazu:
exitVytvoření souboru služby Systemd pro GVM, GSAD a OpenVAS
Nejprve vytvořte servisní soubor systemd pro gvmd pomocí následujícího příkazu:
nano /etc/systemd/system/gvmd.servicePřidejte následující řádky:
[Unit]Description=Open Vulnerability Assessment System Manager DaemonDocumentation=man:gvmd(8) https://www.greenbone.netWants=postgresql.service ospd-openvas.serviceAfter=postgresql.service ospd-openvas.service[Service ]Typ=forkingUser=gvmGroup=gvmPIDFile=/opt/gvm/var/run/gvmd.pidWorkingDirectory=/opt/gvmExecStart=/opt/gvm/sbin/gvmd --osp-vt-update=/opt/gvm/var run/ospd.sockExecReload=/bin/kill -HUP $MAINPIDKillMode=mixedRestart=on-failureRestartSec=2minKillMode=processKillSignal=SIGINTGuessMainPID=noPrivateTmp=true[Install]WantedBy=.pregeti-userUložte a zavřete soubor a poté vytvořte soubor služby systemd pro gsad pomocí následujícího příkazu:
nano /etc/systemd/system/gsad.servicePřidejte následující řádky:
[Unit]Description=Greenbone Security Assistant (gsad)Documentation=man:gsad(8) https://www.greenbone.netAfter=network.targetWants=gvmd.service[Service]Type=forkingPIDFile=/opt/gvm /var/run/gsad.pidWorkingDirectory=/opt/gvmExecStart=/opt/gvm/sbin/gsad --drop-privileges=gvmRestart=on-failureRestartSec=2minKillMode=processKillSignal=SIGINTGuessMainTMPstal=noPrivatiTBstaly] user.targetUložte a zavřete soubor a poté vytvořte soubor služby systemd pro openvas pomocí následujícího příkazu:
nano /etc/systemd/system/ospd-openvas.servicePřidejte následující řádky:
[Unit]Description=Úloha, která spouští daemon ospd-openvasDocumentation=man:gvmAfter=network.target [chráněno e-mailem][chráněno e-mailem][Služba]Prostředí=PATH=/opt/gvm/bin/ospd-scanner/ bin:/opt/gvm/bin:/opt/gvm/sbin:/opt/gvm/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/binType=forkingUser=gvmGroup=gvmWorkingDirectory=/opt/gvmPIDFile=/opt/gvm/var/run/ospd-openvas.pidExecStart=/opt/gvm/bin/ospd-scanner/bin/gvm /opt /bin/ospd-scanner/bin/ospd-openvas --pid-file /opt/gvm/var/run/ospd-openvas.pid --unix-socket=/opt/gvm/var/run/ospd.sock - -log-file /opt/gvm/var/log/gvm/ospd-scanner.log --lock-file-dir /opt/gvm/var/run/ospd/Restart=on-failureRestartSec=2minKillMode=processKillSignal=SIGINTGuessMainPID=noPrivateTmp=true[Install]WantedBy=multi-user.targetUložte a zavřete soubor a poté znovu načtěte démona systemd pomocí následujícího příkazu:
systemctl daemon-reloadDále spusťte všechny služby a povolte jejich spuštění při restartu systému pomocí následujícího příkazu:
systemctl povolit gvmd
systemctl povolit gsad
systemctl povolit ospd-openvas
systemctl spustit gvmd
systemctl spustit gsad
systemctl spustit ospd-openvasStav všech služeb můžete také ověřit pomocí následujícího příkazu:
systemctl status gvmd
systemctl status gsad
systemctl status ospd-openvasUpravit výchozí skener
Nejprve se přihlaste k uživateli gvm pomocí následujícího příkazu:
sudo su - gvmDále získejte UUID skeneru pomocí následujícího příkazu:
gvmd --get-scannersMěli byste získat následující příkaz:
08b69003-5fc2-4037-a479-93b440211c73 OpenVAS /var/run/ospd/ospd.sock 0 OpenVAS Default6acd0832-df90-11e4-b9d5-28d24461215b CpreVE> CVE>Nyní upravte výchozí skener pomocí výše uvedeného UUID:
gvmd --modify-scanner=08b69003-5fc2-4037-a479-93b440211c73 --scanner-host=/var/run/ospd/ospd.sockPřístup k webovému rozhraní GVM
V tomto okamžiku je GVM nainstalován a naslouchá na portech 80 a 443. Můžete k němu přistupovat pomocí adresy URL https://ip-vašeho-serveru . Budete přesměrováni na přihlašovací stránku GVM, jak je uvedeno níže:
Zadejte své administrátorské uživatelské jméno, heslo a klikněte na Přihlásit knoflík. Na následující stránce byste měli vidět řídicí panel GVM:
Závěr
Gratulujeme! úspěšně jste nainstalovali a nastavili GVM na serveru Ubuntu 20.04. Nyní můžete prozkoumat GVM začít skenovat váš systém na zranitelnost. Neváhejte se mě zeptat, pokud máte nějaké otázky.
Jak nastavit Pritunl VPN Server na Ubuntu 20.04 Jak nainstalovat a používat PowerShell na Ubuntu 20.04Ubuntu