Мониторинг сети · 5 min read · Dec 02, 2025
Как установить инструмент мониторинга сети Cacti на Ubuntu 20.04

Cacti — это бесплатный, открытый и веб-ориентированный инструмент мониторинга сети, написанный на PHP. Это фронтенд-приложение для RRDtool. Он использует протокол SNMP для мониторинга использования пропускной способности и сетевого трафика маршрутизатора или коммутатора. Он отображает загрузку ЦП и использование сетевой пропускной способности в графическом формате и заполняет их данными в базе данных MySQL.
В этом руководстве мы покажем вам, как установить инструмент мониторинга Cacti на сервер Ubuntu 20.04.
Предварительные условия
- Сервер с установленной Ubuntu 20.04.
- Настроен пароль root для сервера.
Начало работы
Перед началом рекомендуется обновить все системные пакеты до последней версии. Вы можете обновить их с помощью следующей команды:
apt-get update -yПосле обновления всех пакетов установите другие необходимые зависимости, выполнив следующую команду:
apt-get install snmp php-snmp rrdtool librrds-perl unzip curl git gnupg2 -yПосле установки всех зависимостей вы можете перейти к следующему шагу.
Установка LAMP-сервера
Далее вам нужно будет установить веб-сервер Apache, MariaDB, PHP и другие необходимые расширения 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 = Asia/Kolkata
Сохраните и закройте файл, затем отредактируйте другой файл php.ini и внесите некоторые изменения:
nano /etc/php/7.4/cli/php.iniИзмените следующие строки:
memory_limit = 512M
max_execution_time = 60
date.timezone = Asia/Kolkata
Сохраните и закройте файл, когда закончите. Затем перезапустите службу 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;
MariaDB [(none)]> GRANT ALL ON cactidb.* TO cactiuser@localhost IDENTIFIED BY 'password';Далее сбросьте привилегии и выйдите из оболочки MariaDB с помощью следующей команды:
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;Далее вам нужно будет импортировать данные о временных зонах в базу данных 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;Далее сбросьте привилегии и выйдите из оболочки MariaDB с помощью следующей команды:
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;Когда вы закончите, вы можете перейти к следующему шагу.
Установка и настройка 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/Далее создайте новый файл задания cron для Cacti с помощью следующей команды:
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
Options +FollowSymLinks
AllowOverride None
= 2.3>
Require all granted
Order Allow,Deny
Allow from all
AddType application/x-httpd-php .php
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
# this setting is necessary for some locales
php_value mbstring.func_overload 0
php_value include_path .
DirectoryIndex index.php
Сохраните и закройте файл, затем активируйте файл виртуального хоста с помощью следующей команды:
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 Wed 2020-12-02 03:11:25 UTC; 9s ago
Docs: https://httpd.apache.org/docs/2.4/
Process: 15445 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
Main PID: 15459 (apache2)
Tasks: 6 (limit: 4691)
Memory: 13.2M
CGroup: /system.slice/apache2.service
??15459 /usr/sbin/apache2 -k start
??15460 /usr/sbin/apache2 -k start
??15461 /usr/sbin/apache2 -k start
??15462 /usr/sbin/apache2 -k start
??15463 /usr/sbin/apache2 -k start
??15464 /usr/sbin/apache2 -k start
Dec 02 03:11:25 ubuntu2004 systemd[1]: Starting The Apache HTTP Server...
Когда вы закончите, вы можете перейти к следующему шагу.
Доступ к веб-интерфейсу Cacti
Теперь откройте веб-браузер и получите доступ к веб-интерфейсу Cacti, используя URL http://your-server-ip/cacti. Вы будете перенаправлены на страницу входа в Cacti:

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

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

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

Нажмите кнопку Далее. Вы должны увидеть экран типа установки:

Выберите желаемый тип установки и нажмите кнопку Далее. Вы должны увидеть экран проверки разрешений каталога:

Нажмите кнопку Далее. Вы должны увидеть экран проверки бинарных местоположений и версий:

Нажмите кнопку Далее. Вы должны увидеть следующий экран:

Отметьте **
Get new posts in your inbox
No spam. Unsubscribe anytime.