วิธีติดตั้ง Icinga 2 และ Icinga Web 2 บน Ubuntu 16.04

Icinga 2 เป็นระบบตรวจสอบทรัพยากรเครือข่ายแบบโอเพ่นซอร์สที่ใช้กันอย่างแพร่หลายและ Icinga Web 2 เป็นเว็บอินเตอร์เฟสอย่างเป็นทางการสำหรับ Icinga 2

ในบทช่วยสอนนี้ฉันจะอธิบายวิธีการติดตั้งทั้งสองอย่างนี้บนเซิร์ฟเวอร์ Ubuntu 16.04

ข้อกำหนดเบื้องต้น

  • เซิร์ฟเวอร์ Vultr Ubuntu 16.04 ที่เพิ่งปรับใช้ใหม่
  • ผู้ใช้ sudo ต้องการเรียนรู้เพิ่มเติมเกี่ยวกับการสร้างผู้ใช้ sudo ในอูบุนตูโปรดดูคำแนะนำใน 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 ของคุณเอง

4.4) แก้ไขปลั๊กอินการพิสูจน์ตัวตนของrootผู้ใช้MySQL :

sudo mysql -u root -p

ใช้รหัสผ่านรูท MariaDB ที่คุณตั้งไว้ก่อนหน้านี้เพื่อเข้าสู่ระบบ

ในเปลือก MySQL:

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

หมายเหตุ : แทนที่<your-password>ด้วยรหัสผ่านรูท MySQL ของคุณเอง

ขั้นตอนที่ 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.pharไปที่/usr/local/binและเปลี่ยนชื่อcomposer:

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

ติดตั้ง zip และ unzip:

sudo apt-get install zip unzip -y

ติดตั้งส่วนประกอบ ZendFramework Db โดยใช้ Composer:

composer require zendframework/zend-db

แล้วคุณจะต้องตั้งค่าเขตเวลาที่เหมาะสมสำหรับเครื่องของคุณซึ่งสามารถตรวจสอบได้จากเว็บไซต์อย่างเป็นทางการ PHP ตัวอย่างเช่นถ้าเช่นเซิร์ฟเวอร์ของคุณอยู่ใน Los Angeles Vultr 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 และปลั๊กอิน

ตั้งค่า repo 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 และปลั๊กอินหลายอันโดยใช้ repo Icinga APT:

sudo apt-get install icinga2 nagios-plugins -y

หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับปลั๊กอิน Icinga 2 โปรดเยี่ยมชมเว็บไซต์โครงการปลั๊กอินการตรวจสอบ

เริ่มบริการ Icinga 2:

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

โดยค่าเริ่มต้นโปรแกรม Icinga 2 จะเปิดใช้งานคุณลักษณะสามอย่าง: ตัวตรวจสอบการฉีดยาและการแจ้งเตือน คุณสามารถยืนยันว่าใช้คำสั่งต่อไปนี้:

sudo icinga2 feature list

ขั้นตอนที่ 7: ตั้งค่าโมดูล Icinga 2 IDO

7.1) ติดตั้งโมดูล IDO (Icinga Data Output) สำหรับ MySQL

sudo apt-get install icinga2-ido-mysql

ในConfiguring icinga2-ido-mysqlตัวช่วยสร้างเมื่อถูกถามว่าคุณต้องการเปิดใช้งานคุณลักษณะ ido-MySQL Icinga 2 <No>เลือก เราจะเปิดใช้งานคุณลักษณะนี้ด้วยตนเองในภายหลัง

เมื่อถูกถามว่าคุณต้องการที่จะกำหนดค่าฐานข้อมูลสำหรับ icinga2-ido-MySQL <No>ให้เลือก แต่คุณสามารถสร้างฐานข้อมูลด้วยตนเองตามที่อธิบายไว้ในขั้นตอนที่ 7.2

7.2) สร้างฐานข้อมูลสำหรับ Icinga 2

ล็อกอินเข้าสู่เชลล์ MySQL ในฐานะรูท:

sudo mysql -u root -p

ใช้รหัสผ่านรูท MariaDB ที่คุณตั้งไว้ในขั้นตอนที่ 4 เพื่อเข้าสู่ระบบ

ใน MySQL shell สร้างฐานข้อมูลชื่อ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

เมื่อได้รับแจ้งให้ป้อนรหัสผ่านรูท 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
  • โฮสต์ *: localhost
  • ชื่อฐานข้อมูล *: icingaweb2
  • ชื่อผู้ใช้ *: รูท
  • รหัสผ่าน *: <MariaDB-root-password>

8.12) ในหน้าการรับรองความถูกต้องแบ็คเอนด์โดยใช้ชื่อแบ็กเอนด์เริ่มต้นicingaweb2ให้คลิกNextปุ่มเพื่อดำเนินการต่อ

8.13) ในหน้าการจัดการให้ตั้งค่าบัญชีการดูแลระบบ Icinga Web 2 แรก (บอกว่าเป็นicingaweb2admin) และรหัสผ่าน (บอกว่าเป็นicingaweb2pass) จากนั้นคลิกที่Nextปุ่ม

8.14) ในหน้าการกำหนดค่าแอปพลิเคชันคุณสามารถปรับตัวเลือกการกำหนดค่าแอปพลิเคชันและการบันทึกที่เกี่ยวข้องกับความต้องการของคุณ สำหรับตอนนี้คุณสามารถใช้ค่าเริ่มต้นที่แสดงด้านล่างและคลิกNextปุ่มเพื่อดำเนินการต่อ

  • แสดง Stacktraces: ทำเครื่องหมาย
  • ประเภทของที่เก็บข้อมูลผู้ใช้ *: ฐานข้อมูล
  • ประเภทการบันทึก *: Syslog
  • ระดับการบันทึก *: เกิดข้อผิดพลาด
  • Application Prefix *: icingaweb2

8.15) ในหน้าตรวจทานให้ตรวจสอบการกำหนดค่าของคุณอีกครั้งแล้วคลิกNextปุ่ม

8.16) ในหน้ายินดีต้อนรับการกำหนดค่าโมดูลการตรวจสอบคลิกNextปุ่ม

8.17) ในหน้าการติดตามแบ็กเอนด์ให้ใช้ชื่อแบ็กเอนด์เริ่มต้นicingaและประเภทแบ็กเอนด์IDOจากนั้นคลิกที่Nextปุ่ม

8.18) ในหน้าทรัพยากรการตรวจสอบ IDO ให้ป้อนรายละเอียดฐานข้อมูล IDO ที่คุณตั้งค่าไว้ก่อนหน้านี้แล้วคลิกNextปุ่ม

  • ชื่อทรัพยากร *: icinga_ido
  • ประเภทฐานข้อมูล *: MySQL
  • โฮสต์ *: localhost
  • ชื่อฐานข้อมูล *: 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

สรุปบทเรียนของเรา ขอบคุณสำหรับการอ่าน.



Leave a Comment

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS: นี่คืออนาคตของ Windows หรือไม่?

ReactOS ซึ่งเป็นโอเพ่นซอร์สและระบบปฏิบัติการฟรีพร้อมเวอร์ชันล่าสุดแล้ว สามารถตอบสนองความต้องการของผู้ใช้ Windows ยุคใหม่และล้ม Microsoft ได้หรือไม่? มาหาข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบเก่านี้ แต่เป็นประสบการณ์ OS ที่ใหม่กว่ากัน

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

AI สามารถต่อสู้กับการโจมตีของแรนซัมแวร์ที่เพิ่มขึ้นได้หรือไม่

การโจมตีของ Ransomware กำลังเพิ่มขึ้น แต่ AI สามารถช่วยจัดการกับไวรัสคอมพิวเตอร์ตัวล่าสุดได้หรือไม่? AI คือคำตอบ? อ่านที่นี่รู้ว่า AI boone หรือ bane

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

เชื่อมต่อผ่าน WhatsApp Desktop App 24*7

ในที่สุด Whatsapp ก็เปิดตัวแอพเดสก์ท็อปสำหรับผู้ใช้ Mac และ Windows ตอนนี้คุณสามารถเข้าถึง Whatsapp จาก Windows หรือ Mac ได้อย่างง่ายดาย ใช้ได้กับ Windows 8+ และ Mac OS 10.9+

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

AI จะนำกระบวนการอัตโนมัติไปสู่อีกระดับได้อย่างไร

อ่านข้อมูลนี้เพื่อทราบว่าปัญญาประดิษฐ์กำลังได้รับความนิยมในหมู่บริษัทขนาดเล็กอย่างไร และเพิ่มโอกาสในการทำให้พวกเขาเติบโตและทำให้คู่แข่งได้เปรียบ

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

การอัปเดตเสริม macOS Catalina 10.15.4 ทำให้เกิดปัญหามากกว่าการแก้ปัญหา

เมื่อเร็ว ๆ นี้ Apple เปิดตัว macOS Catalina 10.15.4 การอัปเดตเสริมเพื่อแก้ไขปัญหา แต่ดูเหมือนว่าการอัปเดตทำให้เกิดปัญหามากขึ้นที่นำไปสู่การสร้างเครื่อง Mac อ่านบทความนี้เพื่อเรียนรู้เพิ่มเติม

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

13 เครื่องมือดึงข้อมูลเชิงพาณิชย์ของ Big Data

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

ระบบไฟล์บันทึกคืออะไรและทำงานอย่างไร

คอมพิวเตอร์ของเราจัดเก็บข้อมูลทั้งหมดในลักษณะที่เรียกว่าระบบไฟล์บันทึก เป็นวิธีการที่มีประสิทธิภาพที่ช่วยให้คอมพิวเตอร์สามารถค้นหาและแสดงไฟล์ได้ทันทีที่คุณกดค้นหาhttps://wethegeek.com/?p=94116&preview=true

ภาวะเอกฐานทางเทคโนโลยี: อนาคตอันห่างไกลของอารยธรรมมนุษย์?

ภาวะเอกฐานทางเทคโนโลยี: อนาคตอันห่างไกลของอารยธรรมมนุษย์?

ในขณะที่วิทยาศาสตร์มีวิวัฒนาการไปอย่างรวดเร็ว โดยรับช่วงต่อความพยายามของเราอย่างมาก ความเสี่ยงในการทำให้ตัวเองตกอยู่ในภาวะภาวะเอกฐานที่อธิบายไม่ได้ก็เพิ่มขึ้นเช่นกัน อ่านว่าภาวะเอกฐานอาจมีความหมายสำหรับเราอย่างไร

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ข้อมูลเชิงลึกเกี่ยวกับ 26 เทคนิคการวิเคราะห์ข้อมูลขนาดใหญ่: ตอนที่ 1

ผลกระทบของปัญญาประดิษฐ์ในการดูแลสุขภาพ 2021

ผลกระทบของปัญญาประดิษฐ์ในการดูแลสุขภาพ 2021

AI ในการดูแลสุขภาพได้ก้าวกระโดดอย่างมากจากทศวรรษที่ผ่านมา ดังนั้นอนาคตของ AI ในการดูแลสุขภาพจึงยังคงเติบโตทุกวัน