GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Menginstal Pemindai Kerentanan GVM di Ubuntu 20.04

GVM (Greenbone Vulnerability Management) adalah solusi sumber terbuka untuk pemindaian kerentanan dan manajemen kerentanan. GVM sebelumnya dikenal sebagai OpenVAS .

Greenbone Vulnerability Manager dan OpenVAS banyak digunakan oleh sejumlah orang di Dunia termasuk pakar keamanan dan pengguna umum yang menggunakan semua ini dalam satu rangkaian alat yang bekerja sama untuk menjalankan tes terhadap komputer klien menggunakan database sendiri dari kelemahan yang diketahui dan eksploitasi.

Dalam artikel ini, kami akan menunjukkan Cara menginstal dan menyiapkan GVM di Ubuntu 20.04 untuk memastikan server Anda terlindungi dari serangan.

Sistem Dasar

Kami akan menyiapkan Greenbone Vulnerability Manager 20.08 dengan instalasi dasar paket sistem di Ubuntu 20.04.

Prasyarat Instal

Instal terlebih dahulu paket dependensi berikut.

sudo su -
apt update &&\
apt -y dist-upgrade &&\
apt -y autoremove &&\
apt install -y software-properties-common &&\
apt install -y build-essential cmake pkg-config libglib2.0-dev libgpgme-dev libgnutls28-dev uuid-dev libssh-gcrypt-dev libldap2-dev doxygen graphviz libradcli-dev libhiredis-dev libpcap-dev bison libksba-dev libsnmp-dev gcc-mingw-w64 heimdal-dev libpopt-dev xmltoman redis-server xsltproc libical-dev postgresql postgresql-contrib postgresql-server-dev-all gnutls-bin nmap rpm nsis curl wget fakeroot gnupg sshpass socat snmp smbclient libmicrohttpd-dev libxml2-dev python3-polib gettext rsync xml-twig-tools python3-paramiko python3-lxml python3-defusedxml python3-pip python3-psutil python3-impacket virtualenv vim git &&\
apt install -y texlive-latex-extra --no-install-recommends &&\
apt install -y texlive-fonts-recommended &&\
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | apt-key add - &&\
echo "deb https://dl.yarnpkg.com/debian/ stable main" | tee /etc/apt/sources.list.d/yarn.list &&\
apt update &&\
apt -y install yarn &&\
yarn install &&\
yarn upgrade

Buat Pengguna GVM

Tempelkan perintah berikut ke terminal untuk membuat pengguna gvm yang akan digunakan dalam proses instalasi dan kompilasi:

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 &&\
source /etc/profile.d/gvm.sh &&\
bash -c 'cat < /etc/ld.so.conf.d/gvm.conf
# gmv libs location
/opt/gvm/lib
EOF'
mkdir /opt/gvm &&\
adduser gvm --disabled-password --home /opt/gvm/ --no-create-home --gecos '' &&\
usermod -aG redis gvm &&\
chown gvm:gvm /opt/gvm/

Sekarang login sebagai pengguna gvm. Mulai sekarang, judul judul akan ditandai dengan pengguna mana yang diperlukan untuk menjalankan perintah.

sudo su - gvm

Unduh dan Instal Perangkat Lunak (GVM)

Sekarang buat folder src dan git clone kode sumber GVM:

mkdir src &&\
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-branch https://github.com/greenbone/gvmd.git &&\
git clone -b master --single-branch https://github.com/greenbone/openvas-smb.git &&\
git clone -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.git

Instal gvm-libs (GVM)

Pada langkah ini kita akan mengkompilasi gvm-libs dari github:

cd gvm-libs &&\
export PKG_CONFIG_PATH=/opt/gvm/lib/pkgconfig:$PKG_CONFIG_PATH &&\
mkdir build &&\
cd build &&\
cmake -DCMAKE_INSTALL_PREFIX=/opt/gvm .. &&\
make &&\
make doc &&\
make install &&\
cd /opt/gvm/src

Instal openvas-smb (GVM)

Sekarang masuk ke direktori openvas-smb dan kompilasi kode sumbernya:

cd openvas-smb &&\
export PKG_CONFIG_PATH=/opt/gvm/lib/pkgconfig:$PKG_CONFIG_PATH &&\
mkdir build &&\
cd build/ &&\
cmake -DCMAKE_INSTALL_PREFIX=/opt/gvm .. &&\
make &&\
make install &&\
cd /opt/gvm/src

Instal pemindai (GVM)

Seperti pada langkah sebelumnya, sekarang kita akan membangun dan menginstal pemindai openvas:

cd openvas &&\
export PKG_CONFIG_PATH=/opt/gvm/lib/pkgconfig:$PKG_CONFIG_PATH &&\
mkdir build &&\
cd build/ &&\
cmake -DCMAKE_INSTALL_PREFIX=/opt/gvm .. &&\
make &&\
make doc &&\
make install &&\
cd /opt/gvm/src

Perbaiki redis untuk Instal OpenVAS (root)

Sekarang kita harus keluar dari sesi saat ini untuk kembali ke hak istimewa pengguna dengan Ketik 'keluar' di terminal.
Sekarang paste kode berikut ke terminal:

export LC_ALL="C" &&\
ldconfig &&\
cp /etc/redis/redis.conf /etc/redis/redis.orig &&\
cp /opt/gvm/src/openvas/config/redis-openvas.conf /etc/redis/ &&\
chown redis:redis /etc/redis/redis-openvas.conf &&\
echo "db_address = /run/redis-openvas/redis.sock" > /opt/gvm/etc/openvas/openvas.conf &&\
systemctl enable [email protected] &&\
systemctl start [email protected]
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 << /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

Tambahkan jalur /opt/gvm/sbin ke variabel secure_path:

sed 's/Defaults\s.*secure_path=\"\/usr\/local\/sbin:\/usr\/local\/bin:\/usr\/sbin:\/usr\/bin:\/sbin:\/bin:\/snap\/bin\"/Defaults 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

Izinkan pengguna yang menjalankan ospd-openvas untuk diluncurkan dengan izin root:

echo "gvm ALL = NOPASSWD: /opt/gvm/sbin/openvas" > /etc/sudoers.d/gvm
echo "gvm ALL = NOPASSWD: /opt/gvm/sbin/gsad" >> /etc/sudoers.d/gvm

Perbarui NVT (GVM)

Kami sekarang akan menjalankan greenbone-nvt-sync untuk memperbarui definisi file kerentanan.
Pertama beralih kembali ke sesi pengguna GVM:

sudo su – gvm

Dan jalankan yang berikut ini:

greenbone-nvt-sync

Jika Anda mendapatkan kesalahan batas waktu, kemungkinan besar ada firewall yang menghalangi. Pastikan untuk membuka port TCP 873. Jika Anda mendapatkan kesalahan koneksi ditolak, tunggu beberapa saat dan coba lagi.

Ini memakan waktu yang sangat lama, jadi Anda harus bersabar.

Unggah Plugin di redis dengan OpenVAS (GVM)

Ini mungkin memerlukan sedikit waktu tergantung pada perangkat keras Anda, dan tidak memberikan umpan balik saat Anda menjalankan perintah.

sudo openvas -u

Catatan:Jika Anda mendapatkan kesalahan perpustakaan yang hilang, ketik berikut ini (satu baris pada satu waktu):

exit
echo "/opt/gvm/lib > /etc/ld.so.conf.d/gvm.conf 
ldconfig
sudo su - gvm

Pengelola Instalasi (GVM)

Sekarang masuk ke direktori gvmd untuk membangun dan menginstal Greenbone Manager:

cd /opt/gvm/src/gvmd &&\
export PKG_CONFIG_PATH=/opt/gvm/lib/pkgconfig:$PKG_CONFIG_PATH &&\
mkdir build &&\
cd build/ &&\
cmake -DCMAKE_INSTALL_PREFIX=/opt/gvm .. &&\
make &&\
make doc &&\
make install &&\
cd /opt/gvm/src

Konfigurasi PostgreSQL (Pengguna Sudoers)

Beralih ke pengguna di sudoers (jangan gunakan root atau gvm untuk ini). Sesi pengguna akan dialihkan dengan perintah "sudo -u postgres bash" di bawah.
Jalankan satu baris pada satu waktu.

exit
cd /
sudo -u postgres bash
export LC_ALL="C"
createuser -DRS gvm
createdb -O gvm gvmd

psql gvmd
create role dba with superuser noinherit;
grant dba to gvm;
create extension "uuid-ossp";
create extension "pgcrypto";
exit
exit

Perbaiki Sertifikat (GVM)

Ketik satu baris pada satu waktu:

sudo su - gvm
gvm-manage-certs -a

Buat Pengguna Admin (GVM)

Ini akan membuat nama pengguna dan kata sandi awal. Ingatlah untuk mengubahnya nanti.

gvmd --create-user=admin --password=admin

Konfigurasikan dan Perbarui Umpan (GVM)

Agar umpan diperbarui sepenuhnya, kita perlu mengatur "Pemilik Impor Umpan" ke UUID admin. Pertama, temukan UUID pengguna admin baru

gvmd --get-users --verbose

Anda harus mendapatkan sesuatu seperti ini:

admin fb019c52-75ec-4cb6-b176-5a55a9b360bf

Gunakan string di sebelah admin pada perintah berikutnya:

gvmd --modify-setting 78eceaec-3385-11ea-b237-28d24461215b --value (output string from the above command fb019c52-75ec-4cb6-b176-5a55a9b360bf)

Jadi contoh perintahnya adalah:

$ gvmd --get-users --verbose
admin fb019c52-75ec-4cb6-b176-5a55a9b360bf
$ gvmd --modify-setting 78eceaec-3385-11ea-b237-28d24461215b --value fb019c52-75ec-4cb6-b176-5a55a9b360bf

Jalankan tiga perintah berikutnya satu per satu. Jika Anda mendapatkan kesalahan koneksi ditolak, coba perintah lagi hingga berhasil. Perintah ini juga akan memakan waktu.

greenbone-feed-sync --type GVMD_DATA
greenbone-feed-sync --type SCAP
greenbone-feed-sync --type CERT

Instal gsa (GVM)

Sekali lagi seperti pada langkah sebelumnya, masuk ke folder gsa dan kompilasi kode sumber gsa:

cd /opt/gvm/src/gsa &&\
export PKG_CONFIG_PATH=/opt/gvm/lib/pkgconfig:$PKG_CONFIG_PATH &&\
mkdir build &&\
cd build/ &&\
cmake -DCMAKE_INSTALL_PREFIX=/opt/gvm .. &&\
make &&\
make doc &&\
make install &&\
touch /opt/gvm/var/log/gvm/gsad.log &&\
cd /opt/gvm/src

Siapkan OSPD-OpenVAS

Instal virtualenv (GVM)

Catatan:Anda mungkin harus mengubah –python python3.8 agar sesuai dengan versi python yang Anda instal.

cd /opt/gvm/src &&\
export PKG_CONFIG_PATH=/opt/gvm/lib/pkgconfig:$PKG_CONFIG_PATH &&\
virtualenv --python python3.8  /opt/gvm/bin/ospd-scanner/ &&\
source /opt/gvm/bin/ospd-scanner/bin/activate

Instal ospd (GVM)

Kami akan menginstal ospd menggunakan pip installer:

mkdir /opt/gvm/var/run/ospd/ &&\
cd ospd &&\
pip3 install . &&\
cd /opt/gvm/src

Instal ospd-openvas (GVM)

Sekali lagi untuk ospd-openvas kita akan menggunakan pip installer dengan paket yang kita kloning dari github:

cd ospd-openvas &&\
pip3 install . &&\
cd /opt/gvm/src

Buat Skrip Startup (root)

Pertama ketik exit to loguout to root session, lalu paste berikut ini di terminal:

cat << EOF > /etc/systemd/system/gvmd.service
[Unit]
Description=Open Vulnerability Assessment System Manager Daemon
Documentation=man:gvmd(8) https://www.greenbone.net
Wants=postgresql.service ospd-openvas.service
After=postgresql.service ospd-openvas.service

[Service]
Type=forking
User=gvm
Group=gvm
PIDFile=/opt/gvm/var/run/gvmd.pid
WorkingDirectory=/opt/gvm
ExecStart=/opt/gvm/sbin/gvmd --osp-vt-update=/opt/gvm/var/run/ospd.sock
ExecReload=/bin/kill -HUP $MAINPID
KillMode=mixed
Restart=on-failure
RestartSec=2min
KillMode=process
KillSignal=SIGINT
GuessMainPID=no
PrivateTmp=true

[Install]
WantedBy=multi-user.target
EOF
cat << EOF > /etc/systemd/system/gsad.service
[Unit]
Description=Greenbone Security Assistant (gsad)
Documentation=man:gsad(8) https://www.greenbone.net
After=network.target
Wants=gvmd.service


[Service]
Type=forking
PIDFile=/opt/gvm/var/run/gsad.pid
WorkingDirectory=/opt/gvm
ExecStart=/opt/gvm/sbin/gsad --drop-privileges=gvm
Restart=on-failure
RestartSec=2min
KillMode=process
KillSignal=SIGINT
GuessMainPID=no
PrivateTmp=true

[Install]
WantedBy=multi-user.target
EOF
cat << EOF > /etc/systemd/system/ospd-openvas.service 
[Unit]
Description=Job that runs the ospd-openvas daemon
Documentation=man:gvm
After=network.target [email protected]
[email protected]

[Service]
Environment=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:/bin
Type=forking
User=gvm
Group=gvm
WorkingDirectory=/opt/gvm
PIDFile=/opt/gvm/var/run/ospd-openvas.pid
ExecStart=/opt/gvm/bin/ospd-scanner/bin/python /opt/gvm/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-failure
RestartSec=2min
KillMode=process
KillSignal=SIGINT
GuessMainPID=no
PrivateTmp=true

[Install]
WantedBy=multi-user.target
EOF

Aktifkan dan Mulai layanan (root)

Kami sekarang akan mengaktifkan dan memulai layanan GVM, juga sebagai pengguna root:

systemctl daemon-reload &&\
systemctl enable gvmd &&\
systemctl enable gsad &&\
systemctl enable ospd-openvas &&\
systemctl start gvmd &&\
systemctl start gsad &&\
systemctl start ospd-openvas

Periksa layanan (root)

Pastikan ketiga layanan berjalan (ketik satu baris pada satu waktu).

systemctl status gvmd
systemctl status gsad
systemctl status ospd-openvas

Ubah Pemindai Default (GVM)

Beralih kembali ke sesi GVM Anda.

sudo su - gvm

Pertama, dapatkan UUID pemindai yang memiliki soket (ospd.sock)

gvmd --get-scanners

Kemudian ubah pemindai:

gvmd --modify-scanner=(INSERT SCANNER UUID HERE) --scanner-host=/opt/gvm/var/run/ospd.sock

Contoh:

gvmd --get-scanners
08b69003-5fc2-4037-a479-93b440211c73  OpenVAS  /var/run/ospd/ospd.sock  0  OpenVAS Default
6acd0832-df90-11e4-b9d5-28d24461215b  CVE    0  CVE

gvmd --modify-scanner=08b69003-5fc2-4037-a479-93b440211c73 --scanner-host=/opt/gvm/var/run/ospd.sock
Scanner modified.

Hanya itu saja. Anda sekarang dapat masuk ke antarmuka web GVM.

Kesimpulan

Kami telah berhasil menyelesaikan instalasi GVM di Ubuntu 20.04. Anda sekarang dapat masuk menggunakan alamat IP server Anda. Login default adalah admin/admin seperti yang diatur di atas. Beri tahu kami pendapat Anda tentang tutorial di komentar di bawah.


Ubuntu
  1. Cara Menginstal Git di Ubuntu 18.04 / 20.04

  2. Cara Menginstal R di Ubuntu 20.04

  3. Cara menginstal git di ubuntu 16.04

  1. Cara Menginstal Git di Ubuntu 18.04

  2. Cara Menginstal Go di Ubuntu 18.04

  3. Cara Menginstal Git di Ubuntu 20.04

  1. Cara Memasang dan Menggunakan Pemindai Kerentanan GVM di Ubuntu 20.04

  2. Cara Menginstal dan Mengonfigurasi Git di Ubuntu 20.04

  3. Cara Menginstal Versi Git Terbaru di Ubuntu