Preduvjeti
Korak 1: Ažurirajte sustav
Korak 2: Instalirajte Apache
Korak 3: Konfigurirajte UFW vatrozid
Korak 4: Instalirajte MariaDB
Korak 5: Instalirajte PHP
Korak 6: Instalirajte Icinga 2 i njegove dodatke
Korak 7: Postavite Icinga 2 IDO module
Korak 8: Instalirajte Icinga Web 2
Icinga 2 je široko korišteni open source sustav za praćenje mrežnih resursa, a Icinga Web 2 je službeno web sučelje za Icinga 2.
U ovom vodiču objasnit ću kako ih oboje instalirati na Ubuntu 16.04 poslužitelj.
Preduvjeti
- Novopostavljena instanca poslužitelja Vultr Ubuntu 16.04.
- Korisnik sudoa. Da biste saznali više o stvaranju sudo korisnika na Ubuntuu, pogledajte upute za Debian u drugom vodiču za Vultr .
Korak 1: Ažurirajte sustav
Prijavite se sa SSH terminala kao sudo korisnik, a zatim ažurirajte sustav na najnoviji stabilan status pomoću sljedećih naredbi:
sudo apt-get update -y
sudo apt-get upgrade -y
sudo shutdown -r now
Nakon ponovnog pokretanja, upotrijebite istog sudo korisnika za prijavu.
Korak 2: Instalirajte Apache
Instalirajte Apache pomoću sljedeće naredbe:
sudo apt-get install apache2 -y
Izbrišite zadanu stranicu dobrodošlice Ubuntu Apache:
sudo rm /var/www/html/index.html
Zbog sigurnosnih razloga, trebali biste zabraniti Apacheu /var/www/htmlda posjetiteljima izlaže datoteke i direktorije unutar korijenskog web direktorija :
sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/apache2/apache2.conf
Pokrenite uslugu Apache i pokrenite je pri pokretanju:
sudo systemctl start apache2.service
sudo systemctl enable apache2.service
Prema zadanim postavkama, UFW vatrozid je onemogućen na novopostavljenoj instanci poslužitelja Vultr Ubuntu 16.04. Upotrijebite sljedeće naredbe kako biste omogućili UFW vatrozid i omogućili ulazni promet SSH, HTTP i HTTPS:
sudo ufw app list
sudo ufw allow OpenSSH
sudo ufw allow in "Apache Full"
sudo ufw enable
Korak 4: Instalirajte MariaDB
4.1) Koristite sljedeću naredbu za instalaciju MariaDB:
sudo apt-get install mariadb-client mariadb-server -y
4.2) Pokrenite uslugu MariaDB:
sudo systemctl start mysql.service
sudo systemctl enable mysql.service
4.3) Osigurajte instalaciju MariaDB-a:
sudo /usr/bin/mysql_secure_installation
Tijekom interaktivnog procesa, odgovorite na pitanja jedno po jedno kao u nastavku:
Enter current password for root (enter for none): Enter
Set root password? [Y/n]: Y
New password: <your-password>
Re-enter new password: <your-password>
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y
Napomena : Zamijenite <your-password>svojom vlastitom MySQL root lozinkom.
4.4) Izmijenite dodatak za provjeru autentičnosti rootkorisnika MySQL :
sudo mysql -u root -p
Za prijavu upotrijebite MariaDB root lozinku koju ste prethodno postavili.
U ljusci MySQL:
UPDATE mysql.user SET authentication_string=PASSWORD('<your-password>'), plugin='mysql_native_password' WHERE user='root';
FLUSH PRIVILEGES;
EXIT;
Napomena : Zamijenite <your-password>svojom vlastitom MySQL root lozinkom.
Korak 5: Instalirajte PHP
Instalirajte PHP 7.0 i nekoliko proširenja za Icinga 2 i Icinga Web 2:
sudo apt-get install php7.0 libapache2-mod-php7.0 php7.0-gd php7.0-intl php7.0-xml php7.0-ldap php7.0-mysql php7.0-pgsql php-imagick -y
Instalirajte trenutnu verziju Composer:
cd
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === 'e115a8dc7871f15d853148a7fbac7da27d6c0030b848d9b3dc09e2a0388afed865e6a3d6b3c0fad45c48e2b5fc1196ae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
Napomena : Gornje naredbe mogu biti zastarjele u budućnosti, stoga uvijek trebate dobiti najnoviju verziju sa službene web stranice Composer .
Radi praktičnosti, premjestite skriptu Composer composer.pharu /usr/local/bini preimenujte je composer:
sudo mv ~/composer.phar /usr/local/bin/composer
Instalirajte zip i raspakirajte:
sudo apt-get install zip unzip -y
Instalirajte komponentu ZendFramework Db koristeći Composer:
composer require zendframework/zend-db
Zatim morate postaviti odgovarajuću vremensku zonu za svoj stroj, što se može odrediti na službenoj web stranici PHP-a . Na primjer, ako se instanca vašeg poslužitelja nalazi u podatkovnom centru Vultr Los Angeles, tada je vrijednost vremenske zone za nju America/Los_Angeles.
Otvorite PHP konfiguracijsku datoteku s vi editorom:
sudo vi /etc/php/7.0/apache2/php.ini
Pronađite liniju:
;date.timezone =
Promijeni u:
date.timezone = America/Los_Angeles
Spremi i zatvori:
:wq!
Ponovo pokrenite Apache uslugu kako biste stavili na snagu nove postavke:
sudo systemctl restart apache2.service
Korak 6: Instalirajte Icinga 2 i njegove dodatke
Postavite Icinga APT repo:
cd
wget -O - http://packages.icinga.org/icinga.key | sudo apt-key add -
sudo add-apt-repository 'deb http://packages.icinga.org/ubuntu icinga-xenial main'
sudo apt-get update
Instalirajte Icinga 2 i nekoliko dodataka koristeći Icinga APT repo:
sudo apt-get install icinga2 nagios-plugins -y
Da biste saznali više o dodacima za Icinga 2, posjetite web stranicu projekta Monitoring Plugins .
Pokrenite uslugu Icinga 2:
sudo systemctl start icinga2.service
sudo systemctl enable icinga2.service
Prema zadanim postavkama, program Icinga 2 omogućit će tri značajke: provjeru, glavni dnevnik i obavijest. To možete potvrditi sljedećom naredbom:
sudo icinga2 feature list
Korak 7: Postavite Icinga 2 IDO module
7.1) Instalirajte IDO (Icinga Data Output) module za MySQL
sudo apt-get install icinga2-ido-mysql
U Configuring icinga2-ido-mysqlčarobnjaku, kada budete upitani želite li omogućiti značajku ido-mysql Icinga 2, odaberite <No>. Kasnije ćemo ručno omogućiti ovu značajku.
Kada vas pitaju želite li konfigurirati bazu podataka za icinga2-ido-mysql, odaberite <No>. Umjesto toga, možete ručno stvoriti bazu podataka kao što je objašnjeno u koraku 7.2.
7.2) Napravite bazu podataka za Icinga 2
Prijavite se u MySQL ljusku kao root:
sudo mysql -u root -p
Za prijavu upotrijebite MariaDB root lozinku koju ste postavili u koraku 4.
U MySQL ljusci stvorite bazu podataka s imenom icingai korisnika baze podataka icingas lozinkom icinga, a zatim dodijelite privilegije na ovoj bazi podataka ovom korisniku baze podataka.
CREATE DATABASE icinga;
GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE VIEW, INDEX, EXECUTE ON icinga.* TO 'icinga'@'localhost' IDENTIFIED BY 'icinga';
FLUSH PRIVILEGES;
EXIT;
7.3) Uvezite Icinga 2 IDO shemu
sudo mysql -u root -p icinga < /usr/share/icinga2-ido-mysql/schema/mysql.sql
Kada se to od vas zatraži, unesite MariaDB root lozinku da biste završili posao.
7.4) Omogućite IDO MySQL modul
sudo vi /etc/icinga2/features-available/ido-mysql.conf
Pronađite ove retke:
user = "icinga2",
password = "",
host = "localhost",
database = "icinga2"
Izmijenite ih na sljedeći način:
user = "icinga"
password = "icinga"
host = "localhost"
database = "icinga"
Spremi i zatvori:
:wq!
Omogućite ido-mysql značajku:
sudo icinga2 feature enable ido-mysql
sudo systemctl restart icinga2.service
Korak 8: Instalirajte Icinga Web 2
8.1) Postavljanje vanjske naredbene cijevi
sudo icinga2 feature enable command
sudo systemctl restart icinga2.service
sudo icinga2 feature list
Prije nego što možete slati naredbe Icingi 2 putem web sučelja, morate dodati www-datakorisnika u icingacmdgrupu:
sudo groupadd icingacmd
sudo usermod -a -G icingacmd www-data
Upotrijebite sljedeću naredbu da potvrdite svoje postavljanje:
id www-data
8.2) Instalirajte Icinga Web 2 pakete
sudo apt-get install icingaweb2 icingaweb2-module-monitoring icingaweb2-module-doc icingacli -y
Usmjerite korijenski direktorij Apachea na lokaciju koju je odredio Icinga Web 2:
sudo icingacli setup config webserver apache --document-root /usr/share/icingaweb2/public
sudo systemctl restart apache2.service
8.3) Postavljanje baze podataka Icinga Web 2
sudo mysql -u root -p
CREATE DATABASE icingaweb2;
EXIT;
8.4) Učitajte Icinga Web 2 shemu baze podataka
mysql -u root -p icingaweb2 < /usr/share/icingaweb2/etc/schema/mysql.schema.sql
8.5) Generirajte token za postavljanje za kasniju upotrebu u čarobnjaku za web instalaciju Icinga Web 2
sudo icingacli setup token create
8.6) Pokrenite čarobnjak za instalaciju Icinga 2 u web sučelju
Usmjerite svoj web preglednik na sljedeći URL:
http://<your-serve-ip>/icingaweb2/setup
8.7) Na stranici dobrodošlice unesite token za postavljanje koji ste ranije generirali, a zatim kliknite Nextgumb.
8.8) Na stranici Moduli odaberite jedan ili više modula koje želite omogućiti (barem je Monitoringmodul potreban), a zatim kliknite Nextgumb.
8.9) Na stranici Zahtjevi provjerite je li sve tražena stavka zadovoljena, a zatim kliknite Nextgumb.
8.10) Na stranici Authentication morate odabrati metodu provjere autentičnosti kada pristupate Icinga Web 2. Ovdje možete odabrati Database, a zatim kliknuti Nextgumb.
8.11) Na stranici Resurs baze podataka ispunite sva obavezna polja kao u nastavku, a zatim kliknite Nextgumb.
- Naziv resursa*: icingaweb_db
- Vrsta baze podataka*: MySQL
- Host*: lokalni domaćin
- Naziv baze podataka*: icingaweb2
- Korisničko ime*: root
- Lozinka*: <MariaDB-root-password>
8.12) Na stranici Authentication Backend, koristeći zadani naziv pozadine icingaweb2, kliknite Nextgumb za nastavak.
8.13) Na stranici Administracija postavite prvi Icinga Web 2 administrativni račun (recimo da je icingaweb2admin) i lozinku (recimo da jest icingaweb2pass), a zatim kliknite Nextgumb.
8.14) Na stranici Konfiguracija aplikacije možete prilagoditi opcije konfiguracije aplikacije i zapisivanja kako bi odgovarale vašim potrebama. Za sada možete koristiti zadane vrijednosti navedene u nastavku i kliknuti Nextgumb za nastavak.
- Prikaži tragove stakova: označeno
- Korisničke postavke Vrsta pohrane*: Baza podataka
- Vrsta zapisivanja*: Syslog
- Razina zapisivanja*: Greška
- Prefiks aplikacije*: icingaweb2
8.15) Na stranici Pregled dvaput provjerite svoju konfiguraciju, a zatim kliknite Nextgumb.
8.16) Na stranici dobrodošlice za konfiguraciju modula za praćenje kliknite Nextgumb .
8.17) Na stranici Monitoring Backend upotrijebite zadani naziv icingapozadine i vrstu pozadine IDO, a zatim kliknite Nextgumb.
8.18) Na stranici Monitoring IDO Resource, unesite pojedinosti IDO baze podataka koje ste prethodno postavili, a zatim kliknite Nextgumb.
- Naziv resursa*: icinga_ido
- Vrsta baze podataka*: MySQL
- Host*: lokalni domaćin
- Naziv baze podataka*: icinga
- Korisničko ime*: icinga
- Lozinka*: icinga
8.19) Na stranici Command Transport i dalje koristite ove zadane vrijednosti navedene u nastavku. Kliknite Nextgumb za nastavak.
- Naziv transporta*: icinga2
- Vrsta prijenosa*: datoteka lokalne naredbe
- Naredbena datoteka*: /var/run/icinga2/cmd/icinga2.cmd
8.20) Na stranici Monitoring Security i dalje koristite zadanu vrijednost:
- Zaštićene prilagođene varijable: *pw*,*pass*,community
Kliknite Nextgumb da biste otišli na sljedeću stranicu.
8.21) Na stranici za pregled dvaput provjerite svoju konfiguraciju, a zatim kliknite Finishgumb.
8.22) Čestitamo! stranicu, kliknite Login to Icinga Web 2gumb za skok na stranicu za prijavu na Icinga Web 2. Za prijavu koristite administrativni račun i lozinku za Icinga Web 2 koje ste prethodno postavili. Slobodno istražite nadzornu ploču Icinga Web 2.
Time je naš vodič završen. Hvala na čitanju.