--- tags: PPT --- [TOC] # Cacti ## Ubuntu 20.04 - 安裝套件 - 設定 PHP/DB - 安裝/設定 Cacti - Gui Cacti 安裝/設定 ### 安裝套件 1. 更新並升版 > sudo -i > apt update ![](https://i.imgur.com/om87pzY.png) > apt upgrade -y ![](https://i.imgur.com/vPVrP3k.png) 2. 安裝 Apache/PHP/MariaDB/SNMP - Apache > apt install -y apache2 php-mysql libapache2-mod-php ![](https://i.imgur.com/tiyqImR.png) - PHP 擴充 > apt install -y php-xml php-ldap php-mbstring php-gd php-gmp ![](https://i.imgur.com/yuqHiGv.png) - MariaDB > apt install -y mariadb-server mariadb-client ![](https://i.imgur.com/JeEwig1.png) - SNMP > apt install -y snmp php-snmp rrdtool librrds-perl ![](https://i.imgur.com/UrGIY6D.png) ### 設定 PHP 1. 調整時區、硬碟等配置 - 兩個檔案都做一樣的設定 > nano /etc/php/7.4/apache2/php.ini > nano /etc/php/7.4/cli/php.ini ![](https://i.imgur.com/jviLvT0.png) ![](https://i.imgur.com/L3tle82.png) ![](https://i.imgur.com/P7NPBv2.png) ### 設定 DB 1. MariaDB 安裝後,執行 secure_installation 防護 MariaDB > mysql_secure_installation ![](https://i.imgur.com/VtPaQEt.png) - 禁用 Unix Socket 身份驗證並啟用本機密碼 > mysql -u root -p ![](https://i.imgur.com/oQtgo8Q.png) > use mysql; ![](https://i.imgur.com/w666ZrU.png) > update user set plugin='mysql_native_password' where user='root'; ![](https://i.imgur.com/bDGsTHQ.png) > flush privileges; > quit; ![](https://i.imgur.com/ppR444w.png) 2. DB Tuning - 在 [mysqld] 下新增設定 > nano /etc/mysql/mariadb.conf.d/50-server.cnf ![](https://i.imgur.com/55Gxj38.png) - 並將 collation-server = utf8mb4_general_ci 註解 ![](https://i.imgur.com/3mhDG1Y.png) - 配置完成後,重啟 DB > systemctl restart mariadb ![](https://i.imgur.com/n3a8odl.png) 3. 創建 Cacti 的 DB > mysql -u root -p > create database cacti; ![](https://i.imgur.com/5vSCkrc.png) - 設定 Cacti DB 的帳密 > GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY 'cactipassword'; ![](https://i.imgur.com/e1bR0ZQ.png) > flush privileges; > exit; ![](https://i.imgur.com/vkpeI6l.png) 4. 將 mysql_test_data_timezone.sql 導入 mysql 數據庫 ![](https://i.imgur.com/WmH4Al8.png) - 登入 DB 並授予 cactiuser 權限 > mysql -u root -p > GRANT SELECT ON mysql.time_zone_name TO cactiuser@localhost; > flush privileges; > exit; ![](https://i.imgur.com/Vp5NA2z.png) ### 安裝/設定 Cacti 1. 使用 wget 下載 Cacti 最新的版本 > wget https://www.cacti.net/downloads/cacti-latest.tar.gz ![](https://i.imgur.com/OTzKmT3.png) - 解壓縮文件並移動到 /opt 目錄 > tar -zxvf cacti-latest.tar.gz > mv cacti-1* /opt/cacti ![](https://i.imgur.com/3OBCvpP.png) 2. 將默認的 Cacti 資料庫數據導入新創建的 cacti 資料庫 > mysql -u root -p cacti < /opt/cacti/cacti.sql ![](https://i.imgur.com/7qxfRlF.png) - 調整 Cacti 資料庫的資料 > nano /opt/cacti/include/config.php ![](https://i.imgur.com/ma2YaLi.png) 3. 創建 crontab 文件安排輪詢作業 - 將下列字串,加入 crontab 文件 */5 * * * * www-data php /opt/cacti/poller.php > /dev/null 2>&1 > nano /etc/cron.d/cacti ![](https://i.imgur.com/A4TMwVj.png) 4. 為 Cacti 創建新的站點配置 > nano /etc/apache2/sites-available/cacti.conf ![](https://i.imgur.com/JbFW8Y2.png) - 啟用 > a2ensite cacti > systemctl reload apache2 ![](https://i.imgur.com/DsMDkqa.png) 5. 為 Cacti 創建一個 log 文件並允許 Apache 用戶將數據寫入 Cacti 目錄 > touch /opt/cacti/log/cacti.log > chown -R www-data:www-data /opt/cacti/ ![](https://i.imgur.com/9Ib7Q6j.png) ### Gui Cacti 安裝/設定 1. 使用自己的 ip 打開 Cacti 頁面 > ip ad ![](https://i.imgur.com/uSgEYc2.png) > http:// yourIP/cacti ![](https://i.imgur.com/SQ9ajB4.png) 2. 登入 Cacti,預設帳密皆為 admin 登入後再重新設定密碼 ![](https://i.imgur.com/AFVrb02.png) 3. 進到安裝程序,可以看到 MySQL 有幾個數值是有問題的再進到文件更改相對應的數據即可 ![](https://i.imgur.com/gJF4QtV.png) > nano /etc/mysql/mariadb.conf.d/50-server.cnf ![](https://i.imgur.com/6fJkWvZ.png) - 調整後,重啟 DB ,並刷新網頁 > systemctl restart mariadb ![](https://i.imgur.com/Olc0K2e.png) ![](https://i.imgur.com/k02DjiG.png) 4. 檢查相對應檔案的路徑 ![](https://i.imgur.com/njFzf4p.png) 5. 設定網路範圍 ![](https://i.imgur.com/f8PlX4Q.png) 6. 安裝完成,添加一個新裝置測試 ![](https://i.imgur.com/aynVEBG.png) 7. 檢查圖表有無正確收錄 ![](https://i.imgur.com/I688AUp.png)