Как да инсталирате Icinga 2 и Icinga Web 2 на Ubuntu 16.04

Icinga 2 е широко използвана система за мониторинг на мрежови ресурси с отворен код, а Icinga Web 2 е официалният уеб интерфейс за Icinga 2.

В този урок ще обясня как да инсталирате и двете на сървър на Ubuntu 16.04.

Предпоставки

  • Наскоро внедрен екземпляр на сървъра Vultr Ubuntu 16.04.
  • Потребител на sudo. За да научите повече за създаването на потребител на sudo в Ubuntu, вижте инструкциите за Debian в друг урок за Vultr .

Стъпка 1: Актуализирайте системата

Влезте от SSH терминал като потребител на sudo и след това актуализирайте системата до най-новото стабилно състояние, като използвате следните команди:

sudo apt-get update -y
sudo apt-get upgrade -y
sudo shutdown -r now

След рестартирането използвайте същия потребител на sudo, за да влезете.

Стъпка 2: Инсталирайте Apache

Инсталирайте Apache, като използвате следната команда:

sudo apt-get install apache2 -y

Изтрийте приветствената страница на Ubuntu Apache по подразбиране:

sudo rm /var/www/html/index.html

От съображения за сигурност трябва да забраните на Apache да излага /var/www/htmlна посетители файлове и директории в главната уеб директория :

sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/apache2/apache2.conf

Стартирайте услугата Apache и я стартирайте при стартиране:

sudo systemctl start apache2.service
sudo systemctl enable apache2.service

Стъпка 3: Конфигурирайте защитната стена на UFW

По подразбиране защитната стена на UFW е деактивирана на новоразгърнат сървърен екземпляр на Vultr Ubuntu 16.04. Използвайте следните команди, за да активирате защитната стена на UFW и да разрешите входящия трафик от SSH, HTTP и HTTPS:

sudo ufw app list
sudo ufw allow OpenSSH
sudo ufw allow in "Apache Full"
sudo ufw enable

Стъпка 4: Инсталирайте MariaDB

4.1) Използвайте следната команда, за да инсталирате MariaDB:

sudo apt-get install mariadb-client mariadb-server -y

4.2) Стартирайте услугата MariaDB:

sudo systemctl start mysql.service
sudo systemctl enable mysql.service

4.3) Подсигурете инсталацията на MariaDB:

sudo /usr/bin/mysql_secure_installation

По време на интерактивния процес отговорете на въпросите един по един, както следва:

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

Забележка : Заменете <your-password>с вашата собствена MySQL root парола.

4.4) Променете приставката за удостоверяване на rootпотребителя на MySQL :

sudo mysql -u root -p

Използвайте паролата за root на MariaDB, която сте задали по-рано, за да влезете.

В обвивката на MySQL:

UPDATE mysql.user SET authentication_string=PASSWORD('<your-password>'), plugin='mysql_native_password' WHERE user='root';
FLUSH PRIVILEGES;
EXIT;

Забележка : Заменете <your-password>с вашата собствена MySQL root парола.

Стъпка 5: Инсталирайте PHP

Инсталирайте PHP 7.0 и няколко разширения за Icinga 2 и 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

Инсталирайте текущата версия на 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');"

Забележка : Горните команди може да са остарели в бъдеще, така че винаги трябва да получавате най-новата версия от официалния уебсайт на Composer .

В интерес на удобство, преместете Композитор скрипта composer.pharда /usr/local/binго преименувате composer:

sudo mv ~/composer.phar /usr/local/bin/composer

Инсталирайте zip и разархивирайте:

sudo apt-get install zip unzip -y

Инсталирайте компонента ZendFramework Db с помощта на Composer:

composer require zendframework/zend-db

След това трябва да настроите правилната часова зона за вашата машина, която може да бъде определена от официалния уебсайт на PHP . Например, ако вашият сървърен екземпляр се намира в центъра за данни Vultr Los Angeles, тогава стойността на часовата зона за него е America/Los_Angeles.

Отворете PHP конфигурационния файл с vi редактора:

sudo vi /etc/php/7.0/apache2/php.ini

Намерете реда:

;date.timezone =

Променете го на:

date.timezone = America/Los_Angeles

Запазете и излезте:

:wq!

Рестартирайте услугата Apache, за да влезете в сила новите настройки:

sudo systemctl restart apache2.service

Стъпка 6: Инсталирайте Icinga 2 и неговите плъгини

Настройте репото на Icinga APT:

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

Инсталирайте Icinga 2 и няколко плъгини, като използвате репо Icinga APT:

sudo apt-get install icinga2 nagios-plugins -y

За да научите повече за плъгините Icinga 2, моля, посетете уебсайта на проекта за мониторинг на плъгините .

Стартирайте услугата Icinga 2:

sudo systemctl start icinga2.service
sudo systemctl enable icinga2.service

By default, the Icinga 2 program will enable three features: checker, mainlog, and notification. You can confirm that using the following command:

sudo icinga2 feature list

Step 7: Setup the Icinga 2 IDO modules

7.1) Install the IDO (Icinga Data Output) modules for MySQL

sudo apt-get install icinga2-ido-mysql

In the Configuring icinga2-ido-mysql wizard, when being asked whether you want to enable Icinga 2's ido-mysql feature, choose <No>. We will manually enable this feature later.

When being asked whether you want to configure a database for icinga2-ido-mysql, choose <No>. Instead, you can manually create a database as explained in step 7.2.

7.2) Create a database for Icinga 2

Log into the MySQL shell as root:

sudo mysql -u root -p

Use the MariaDB root password you set in step 4 to log in.

В обвивката на MySQL създайте база данни с име icingaи потребител на база данни icingaс парола icingaи след това дайте привилегии върху тази база данни на този потребител на база данни.

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) Импортирайте схемата Icinga 2 IDO

sudo mysql -u root -p icinga < /usr/share/icinga2-ido-mysql/schema/mysql.sql

Когато бъдете подканени, въведете паролата за root на MariaDB, за да завършите работата.

7.4) Активирайте модула IDO MySQL

sudo vi /etc/icinga2/features-available/ido-mysql.conf

Намерете тези редове:

user = "icinga2",
password = "",
host = "localhost",
database = "icinga2"

Променете ги както следва:

user = "icinga"
password = "icinga"
host = "localhost"
database = "icinga"

Запазете и излезте:

:wq!

Активирайте функцията ido-mysql:

sudo icinga2 feature enable ido-mysql
sudo systemctl restart icinga2.service

Стъпка 8: Инсталирайте Icinga Web 2

8.1) Настройте външна командна тръба

sudo icinga2 feature enable command
sudo systemctl restart icinga2.service
sudo icinga2 feature list

Преди да можете да изпращате команди до Icinga 2 чрез уеб интерфейс, трябва да добавите www-dataпотребителя към icingacmdгрупата:

sudo groupadd icingacmd
sudo usermod -a -G icingacmd www-data

Използвайте следната команда, за да потвърдите настройката си:

id www-data

8.2) Инсталирайте пакетите Icinga Web 2

sudo apt-get install icingaweb2 icingaweb2-module-monitoring icingaweb2-module-doc icingacli -y

Насочете основната директория на Apache към местоположение, определено от Icinga Web 2:

sudo icingacli setup config webserver apache --document-root /usr/share/icingaweb2/public
sudo systemctl restart apache2.service

8.3) Настройка на базата данни Icinga Web 2

sudo mysql -u root -p

CREATE DATABASE icingaweb2;
EXIT;

8.4) Заредете схемата на базата данни Icinga Web 2

mysql -u root -p icingaweb2 < /usr/share/icingaweb2/etc/schema/mysql.schema.sql

8.5) Генерирайте токен за настройка за по-късна употреба в съветника за уеб инсталация на Icinga Web 2

sudo icingacli setup token create

8.6) Стартирайте съветника за инсталиране на Icinga 2 в уеб интерфейса

Насочете уеб браузъра си към следния URL:

http://<your-serve-ip>/icingaweb2/setup

8.7) На страницата Добре дошли въведете маркера за настройка, който сте генерирали по-рано, и след това щракнете върху Nextбутона.

8.8) На страницата Модули изберете един или повече модули, които искате да активирате (поне Monitoringмодулът е задължителен) и след това щракнете върху Nextбутона.

8.9) На страницата Изисквания се уверете, че всички необходими елементи са изпълнени и след това щракнете върху Nextбутона.

8.10) На страницата за удостоверяване трябва да изберете метода за удостоверяване при достъп до Icinga Web 2. Тук можете да изберете Databaseи след това да щракнете върху Nextбутона.

8.11) На страницата Ресурс на базата данни попълнете всички задължителни полета, както е посочено по-долу, и след това щракнете върху Nextбутона.

  • Име на ресурс*: icingaweb_db
  • Тип база данни*: MySQL
  • Хост*: локален хост
  • Име на база данни*: icingaweb2
  • Потребителско име*: root
  • Парола*: <MariaDB-root-password>

8.12) На страницата Backend за удостоверяване, като използвате името на бекенда по подразбиране icingaweb2, щракнете върху Nextбутона, за да продължите.

8.13) На страницата Администриране настройте първия административен акаунт на Icinga Web 2 (да кажем, че е icingaweb2admin) и парола (да кажем, че е icingaweb2pass), след което щракнете върху Nextбутона.

8.14) На страницата Конфигурация на приложението можете да коригирате опциите за конфигурация, свързани с приложението и регистрирането, за да отговарят на вашите нужди. Засега можете да използвате стойностите по подразбиране, изброени по-долу, и да щракнете върху Nextбутона, за да продължите.

  • Показване на Stacktraces: Отметнато
  • Потребителски предпочитания Тип съхранение*: База данни
  • Тип регистриране*: Syslog
  • Ниво на регистриране*: Грешка
  • Префикс на приложението*: icingaweb2

8.15) На страницата за преглед проверете отново конфигурацията си и след това щракнете върху Nextбутона.

8.16) На началната страница за конфигурация на модула за наблюдение щракнете върху Nextбутона.

8.17) На страницата за наблюдение на бекенда използвайте името на icingaбекенда по подразбиране и типа на бекенда IDOи след това щракнете върху Nextбутона.

8.18) На страницата Мониторинг IDO Resource, въведете данни за IDO база данни, които сте настроили по-рано, и след това щракнете върху Nextбутона.

  • Име на ресурс*: icinga_ido
  • Тип база данни*: MySQL
  • Хост*: локален хост
  • Име на базата данни*: icinga
  • Потребителско име*: icinga
  • Парола*: icinga

8.19) На страницата Command Transport все още използвайте тези стойности по подразбиране, изброени по-долу. Щракнете върху Nextбутона, за да продължите.

  • Транспортно име*: icinga2
  • Тип транспорт*: Локален команден файл
  • Команден файл*: /var/run/icinga2/cmd/icinga2.cmd

8.20) На страницата за наблюдение на сигурността все още използвайте стойността по подразбиране:

  • Защитени персонализирани променливи: *pw*,*pass*,community

Щракнете върху Nextбутона, за да отидете на следващата страница.

8.21) На страницата за преглед проверете отново конфигурацията си и след това щракнете върху Finishбутона.

8.22) Поздравления! щракнете върху Login to Icinga Web 2бутона, за да преминете към страницата за вход в Icinga Web 2. Използвайте административния акаунт и парола на Icinga Web 2, които сте настроили по-рано, за да влезете. Чувствайте се свободни да разгледате таблото за управление на Icinga Web 2.

Това завършва нашия урок. Благодаря ви, че четете.


Инсталирайте Lets Encrypt SSL в приложението WordPress с едно щракване

Инсталирайте Lets Encrypt SSL в приложението WordPress с едно щракване

Въведение Lets Encrypt е услуга на сертифициращ орган, която предлага безплатни TLS/SSL сертификати. Процесът на инсталиране е опростен от Certbot,

Как да настроите надстройки без надзор на Debian 9 (разтягане)

Как да настроите надстройки без надзор на Debian 9 (разтягане)

Използване на различна система? Ако закупите сървър на Debian, винаги трябва да имате най-новите корекции за сигурност и актуализации, независимо дали спите или не

Как да инсталирате и конфигурирате PHP 7.0 или PHP 7.1 на Ubuntu 16.04

Как да инсталирате и конфигурирате PHP 7.0 или PHP 7.1 на Ubuntu 16.04

PHP и свързаните с него пакети са най-често използваните компоненти при разгръщане на уеб сървър. В тази статия ще научим как да настроим PHP 7.0 или PHP 7.1 o

Как да инсталирате Squid Proxy на CentOS

Как да инсталирате Squid Proxy на CentOS

Squid е популярна, безплатна програма за Linux, която ви позволява да създадете уеб прокси за препращане. В това ръководство ще видите как да инсталирате Squid на CentOS, за да ви обърне

Как да инсталирате Lighttpd (LLMP стек) на CentOS 6

Как да инсталирате Lighttpd (LLMP стек) на CentOS 6

Въведение Lighttpd е форк на Apache, чиято цел е да бъде много по-малко ресурсоемка. Той е лек, откъдето идва и името му, и е доста лесен за използване. Инсталирайте

Три безплатни контролни панела на сървъра (бърза инсталация)

Три безплатни контролни панела на сървъра (бърза инсталация)

1. Virtualmin/Webmin Virtualmin е мощен и гъвкав контролен панел за уеб хостинг за Linux и UNIX системи, базиран на добре познатата уеб база с отворен код

Настройване на приложение Yii на Ubuntu 14.04

Настройване на приложение Yii на Ubuntu 14.04

Yii е PHP рамка, която ви позволява да разработвате приложения по-бързо и лесно. Инсталирането на Yii в Ubuntu е лесно, както ще научите точно l

Настройте свой собствен DNS сървър на Debian/Ubuntu

Настройте свой собствен DNS сървър на Debian/Ubuntu

Този урок обяснява как да настроите DNS сървър с помощта на Bind9 на Debian или Ubuntu. В цялата статия заменете your-domain-name.com съответно. При th

Използване на Logrotate за управление на регистрационни файлове

Използване на Logrotate за управление на регистрационни файлове

Въведение Logrotate е помощна програма за Linux, която опростява администрирането на лог файлове. Обикновено се изпълнява веднъж на ден чрез cron задание и управлява базата от регистрационни файлове

Промяна на Icinga2 за използване на модел главен/клиент на CentOS 6 или CentOS 7

Промяна на Icinga2 за използване на модел главен/клиент на CentOS 6 или CentOS 7

Icinga2 е мощна система за наблюдение и когато се използва в модел главен-клиент, тя може да замени необходимостта от проверки на базата на NRPE. Главният клиент

Настройте Red5 Media Server на Ubuntu 16.04

Настройте Red5 Media Server на Ubuntu 16.04

Използване на различна система? Red5 е медиен сървър с отворен код, внедрен в Java, който ви позволява да стартирате Flash многопотребителски приложения, като например предаване на живо

Компилирайте и инсталирайте Nginx с модула PageSpeed ​​на Debian 8

Компилирайте и инсталирайте Nginx с модула PageSpeed ​​на Debian 8

В тази статия ще видим как да компилирате и инсталирате основната линия на Nginx от официалните източници на Nginx с модула PageSpeed, който ви позволява да

Как да инсталирате Apache Cassandra 3.11.x на Ubuntu 16.04 LTS

Как да инсталирате Apache Cassandra 3.11.x на Ubuntu 16.04 LTS

Използване на различна система? Apache Cassandra е безплатна система за управление на база данни NoSQL с отворен код, която е проектирана да осигури мащабируемост, висока

Как да инсталирате Vanilla Forum на Ubuntu 16.04

Как да инсталирате Vanilla Forum на Ubuntu 16.04

Използване на различна система? Vanilla forum е приложение за форум с отворен код, написано на PHP. Той е напълно адаптивен, лесен за използване и поддържа външен

Как да инсталирате Kanboard на Ubuntu 18.04 LTS

Как да инсталирате Kanboard на Ubuntu 18.04 LTS

Използване на различна система? Въведение Kanboard е безплатна програма за управление на проекти с отворен код, която е предназначена да улеснява и визуализира

Как да инсталирате Kanboard на Debian 9

Как да инсталирате Kanboard на Debian 9

Използване на различна система? Въведение Kanboard е безплатна програма за управление на проекти с отворен код, която е предназначена да улеснява и визуализира

Как да инсталирате Gitea на Debian 9

Как да инсталирате Gitea на Debian 9

Използване на различна система? Gitea е алтернатива с отворен код, самостоятелно хоствана система за контрол на версиите, задвижвана от Git. Gitea е написана на Голанг и е

Как да инсталирате Gitea на Ubuntu 18.04

Как да инсталирате Gitea на Ubuntu 18.04

Използване на различна система? Gitea е алтернатива с отворен код, самостоятелно хоствана система за контрол на версиите, задвижвана от git. Gitea е написана на Голанг и е

Инсталирайте Lynis на Debian 8

Инсталирайте Lynis на Debian 8

Въведение Lynis е безплатен инструмент за одит на системата с отворен код, който се използва от много системни администратори за проверка на целостта и заздравяване на техните системи. аз

Как да инсталирате Thelia 2.3 на Debian 9

Как да инсталирате Thelia 2.3 на Debian 9

Използване на различна система? Thelia е инструмент с отворен код за създаване на уебсайтове за е-бизнес и управление на онлайн съдържание, написано на PHP. Изходен код на Thelia i

Възходът на машините: Реални приложения на AI

Възходът на машините: Реални приложения на AI

Изкуственият интелект не е в бъдещето, тук е точно в настоящето. В този блог Прочетете как приложенията за изкуствен интелект са повлияли на различни сектори.

DDOS атаки: кратък преглед

DDOS атаки: кратък преглед

Вие също сте жертва на DDOS атаки и сте объркани относно методите за превенция? Прочетете тази статия, за да разрешите вашите запитвания.

Чудили ли сте се как хакерите печелят пари?

Чудили ли сте се как хакерите печелят пари?

Може би сте чували, че хакерите печелят много пари, но чудили ли сте се някога как печелят такива пари? нека обсъдим.

Революционни изобретения на Google, които ще улеснят живота ви.

Революционни изобретения на Google, които ще улеснят живота ви.

Искате ли да видите революционни изобретения на Google и как тези изобретения промениха живота на всяко човешко същество днес? След това прочетете в блога, за да видите изобретенията на Google.

Friday Essential: Какво се случи с колите, задвижвани от изкуствен интелект?

Friday Essential: Какво се случи с колите, задвижвани от изкуствен интелект?

Концепцията за самоуправляващи се автомобили да тръгват по пътищата с помощта на изкуствен интелект е мечта, която имаме от известно време. Но въпреки няколкото обещания, те не се виждат никъде. Прочетете този блог, за да научите повече…

Технологична сингулярност: далечно бъдеще на човешката цивилизация?

Технологична сингулярност: далечно бъдеще на човешката цивилизация?

Тъй като науката се развива с бързи темпове, поемайки много от нашите усилия, рискът да се подложим на необяснима сингулярност също нараства. Прочетете какво може да означава сингулярността за нас.

Еволюция на съхранението на данни – инфографика

Еволюция на съхранението на данни – инфографика

Методите за съхранение на данните може да се развиват от раждането на данните. Този блог обхваща развитието на съхранението на данни на базата на инфографика.

Функционалности на референтните архитектурни слоеве за големи данни

Функционалности на референтните архитектурни слоеве за големи данни

Прочетете блога, за да разберете различни слоеве в архитектурата на големи данни и техните функционалности по най-простия начин.

6 невероятни предимства от наличието на интелигентни домашни устройства в живота ни

6 невероятни предимства от наличието на интелигентни домашни устройства в живота ни

В този дигитално задвижван свят устройствата за интелигентен дом се превърнаха в решаваща част от живота. Ето няколко невероятни предимства на интелигентните домашни устройства за това как те правят живота ни струващ и по-опростен.

Актуализацията на допълнението на macOS Catalina 10.15.4 причинява повече проблеми, отколкото решава

Актуализацията на допълнението на macOS Catalina 10.15.4 причинява повече проблеми, отколкото решава

Наскоро Apple пусна macOS Catalina 10.15.4 допълнителна актуализация за отстраняване на проблеми, но изглежда, че актуализацията причинява повече проблеми, водещи до блокиране на mac машини. Прочетете тази статия, за да научите повече