Как установить мониторинг сети Cacti на Ubuntu 20.04.

Cacti — это бесплатный веб-инструмент для мониторинга сети с открытым исходным кодом, написанный на PHP. Это интерфейсное приложение для RRDtool. Он использует протокол SNMP для мониторинга использования полосы пропускания и сетевого трафика маршрутизатора или коммутатора. Так же отображает загрузку ЦП и использование пропускной способности сети в графическом формате с использованием базы на MySQL.

В этом руководстве покажу вам, как установить инструмент мониторинга Cacti на сервер Ubuntu 20.04.

Инструменты

  • Сервер под управлением Ubuntu 20.04
  • Права суперпользователя на сервере

Подготовка

Перед тем, как приступим к установке рекомендую обновить все системные пакеты до последней версии. Вы можете обновить их с помощью следующей команды:

#apt-get update -y

После обновления всех пакетов установим другие необходимые зависимости, выполнив следующую команду:

# apt-get install snmp php-snmp rrdtool librrds-perl unzip curl git gnupg2 -y

После установки всех зависимостей переходим к следующему шагу.

Установка LAMP-сервера.

Далее необходимо будет установить веб-сервер Apache, MariaDB, PHP вместе с необходимыми расширениями. Это можно установить, выполнив следующую команду:

apt-get install apache2 mariadb-server php php-mysql libapache2-mod-php php-xml php-ldap php-mbstring php-gd php-gmp -y

После установки всех пакетов необходимо отредактировать, любым удобным редактором, файл  php.ini следующим образом:

nano /etc/php/7.4/apache2/php.ini

Измените следующие строки:

memory_limit = 512M
max_execution_time = 60
date.timezone = Europe/Moscow

Сохраняем и закрываем файл. После чего редактируем другой файл php.ini:

nano /etc/php/7.4/cli/php.ini

И меняем те же параметры, что и выше:

memory_limit = 512M
max_execution_time = 60
date.timezone = Europe/Moscow

После внесения изменений, сохраняем и закрываем файл. Теперь перезапустим службу Apache, чтобы применить изменения:

systemctl restart apache2

После этого можно перейти к следующему шагу.

Конфигурация сервера MariaDB.

Cacti использует MariaDB в качестве базы данных. Следовательно нам нужно будет создать базу данных и пользователя для Cacti.

Сначала отредактируем файл конфигурации MariaDB используемый по умолчанию и настроем некоторые параметры. Для этого открываем следующий файл:

nano /etc/mysql/mariadb.conf.d/50-server.cnf

Добавляем/изменяем следующие строки в разделе [mysqld]:

collation-server = utf8mb4_unicode_ci
max_heap_table_size = 128M
tmp_table_size = 64M
join_buffer_size = 64M
innodb_file_format = Barracuda
innodb_large_prefix = 1
innodb_buffer_pool_size = 512M
innodb_flush_log_at_timeout = 3
innodb_read_io_threads = 32
innodb_write_io_threads = 16
innodb_io_capacity = 5000
innodb_io_capacity_max = 10000

Сохраняем и закрываем файл, затем перезапускаем службу MariaDB, чтобы применить изменения:

systemctl restart mariadb

Далее заходим в оболочку MariaDB с помощью следующей команды:

mysql

После входа в систему необходимо создать базу данных и пользователя для Cacti с помощью следующих команд:

MariaDB [(none)]> create database cactidb;
Query OK, 1 row affected (0.002 sec)

MariaDB [(none)]> GRANT ALL ON cactidb.* TO cactiuser@localhost IDENTIFIED BY ‘password’;
Query OK, 0 rows affected (0.003 sec)

Затем сбрасываем привилегии и выходим из оболочки MariaDB с помощью следующих команд:

MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.004 sec)

MariaDB [(none)]> exit;
Bye

Далее нам нужно будет импортировать данные часового пояса в базу данных MySQL. Это можно сделать с помощью следующей команды:

mysql mysql < /usr/share/mysql/mysql_test_data_timezone.sql

Затем опять входим в оболочку MariaDB и предоставляем необходимые привилегии в часовом поясе MySQL с помощью следующей команды:

 mysql
MariaDB [(none)]> GRANT SELECT ON mysql.time_zone_name TO cactiuser@localhost;
Query OK, 0 rows affected (0.006 sec)

Снова сбрасываем привилегии и выходим из оболочки MariaDB:

MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.008 sec)

MariaDB [(none)]> exit;
Bye

Теперь можно переходить к следующему шагу.

Устанавливаем и настраиваем Cacti.

Первым делом скачиваем последнюю версию Cacti с официального сайта. Вы можете скачать его с помощью следующей команды:

 wget https://www.cacti.net/downloads/cacti-latest.tar.gz

После завершения загрузки распаковываем загруженный файл с помощью следующей команды:

tar -zxvf cacti-latest.tar.gz

Затем перемещаем извлеченный каталог в главный каталог Apache с помощью следующей команды:

mv cacti-1* /var/www/html/cacti

Теперь импортируем базу данных в cactidb ​​с помощью следующей команды:

mysql cactidb < /var/www/html/cacti/cacti.sql

Следующим шагом надо отредактировать файл Cacti config.php и определить настройки нашей базы данных. Для этого открываем конфигурационный файл в любом удобном редакторе:

nano /var/www/html/cacti/include/config.php

И меняем следующие строки:

$database_type = ‘mysql’;
$database_default = ‘cactidb’;
$database_hostname = ‘localhost’;
$database_username = ‘cactiuser’;
$database_password = ‘password’;
$database_port = ‘3306’;

Сохраняем и закрываем файл, затем создаем файл журнала для Cacti, следующим образом:

touch /var/www/html/cacti/log/cacti.log

Далее устанавливаем права собственности и права доступа к каталогу cacti с помощью следующей команды:

chown -R www-data:www-data /var/www/html/cacti/
chmod -R 775 /var/www/html/cacti/

Затем создайте новый файл задания Cacti cron с помощью следующей команды:

nano /etc/cron.d/cacti

Добавьте следующую строку:

*/5 * * * * www-data php /var/www/html/cacti/poller.php > /dev/null 2>&1

Сохраняем и закрываем файл.

На данный момент Cacti установлен и настроен. Теперь можно перейти к следующему шагу.

Настраиваем Apache для Cacti

На этом этапе нужно будет создать файл конфигурации виртуального хоста Apache для Cacti. Создаем его с помощью любого удобного редактора

nano /etc/apache2/sites-available/cacti.conf

Добавляем в него следующие строки:

Alias /cacti /var/www/html/cacti

  <Directory /var/www/html/cacti>
      Options +FollowSymLinks
      AllowOverride None
      <IfVersion >= 2.3>
      Require all granted
      </IfVersion>
      <IfVersion < 2.3>
      Order Allow,Deny
      Allow from all
      </IfVersion>

   AddType application/x-httpd-php .php

<IfModule mod_php.c>
      php_flag magic_quotes_gpc Off
      php_flag short_open_tag On
      php_flag register_globals Off
      php_flag register_argc_argv On
      php_flag track_vars On
      php_value mbstring.func_overload 0
      php_value include_path .
 </IfModule>

  DirectoryIndex index.php
</Directory>

Сохраните и закройте файл, затем включите файл виртуального хоста с помощью следующей команды:

a2ensite cacti

Затем перезапускаем службу Apache, чтобы применить изменения конфигурации:

systemctl restart apache2

проверяем статус службы Apache с помощью следующей команды:

systemctl status apache2

Если вывод команды выглядит так, как показано ниже, то все идет по плану.

● apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Sun 2022-08-14 00:31:04 MSK; 54s ago
       Docs: https://httpd.apache.org/docs/2.4/
   Main PID: 69010 (apache2)
      Tasks: 6 (limit: 1066)
     Memory: 13.0M
     CGroup: /system.slice/apache2.service
             ├─69010 /usr/sbin/apache2 -k start
             ├─69011 /usr/sbin/apache2 -k start
             ├─69012 /usr/sbin/apache2 -k start
             ├─69013 /usr/sbin/apache2 -k start
             ├─69014 /usr/sbin/apache2 -k start
             └─69015 /usr/sbin/apache2 -k start

Aug 14 00:31:04 dcitst-x53555.x5.ru systemd[1]: Starting The Apache HTTP Server...
Aug 14 00:31:04 dcitst-x53555.x5.ru systemd[1]: Started The Apache HTTP Server.

Теперь можем перейти к следующему шагу.

Доступ к веб-интерфейсу Cacti.

Теперь открываем веб-браузер и входим в веб-интерфейс Cacti, используя URL-адрес http://ip-вашего-сервера/cacti. У вас должна открыться страница входа в Cacti:

Cacti

Укажите имя пользователя и пароль администратора, по умолчанию имя admin, пароль — admin, и нажмите кнопку «Войти». Вы должны увидеть экран сброса пароля:

Cacti Resset Password

Измените пароль по умолчанию и нажмите кнопку Сохранить. После чего, вы должны увидеть страницу Лицензионного соглашения:

Cacti License

Принимаем соглашение и жмем кнопку «Начало». Вы должны увидеть экран проверки перед установкой:

Жмем кнопку «Следующая». Далее идет экран Тип установки:

Cacti Installation Type

Выбераем нужный тип установки и нажмите кнопку «Следующая». Видим экран проверки разрешений каталога:

Следующий экран проверки Версии требуемого ПО:

Cacti Critical Binary Locations and Versions

На следующем экране опять что-то подтверждаем:

Cacti Input Validation Whitelist Protection

Ставим галочку на «I have read this statement» и идем к следующему экрану:

Выбираем нужные параметры и нажмите кнопку «Следующая». Вы должны увидеть экран настройки шаблона:

Нажмите кнопку «Следующая». Переходим на следующий экран:

И наконец-таки «Следующая»:

Подтверждаем, что мы это все хотим установить, и жмем соответствующую кнопку. Начнется процесс установки

Все закончилось, жмем кнопку начать:

И если все прошло хорошо, то вы увидите главное окно Cacti

Заключение.

И вот мы успешно установили и настроили инструмент мониторинга Cacti на сервере Ubuntu 20.04. Теперь можно добавлять сетевые устройства с панели инструментов Cacti и начинать их мониторить из веб-браузера. .

Was this helpful?

0 / 0

Добавить комментарий 0