웹사이트 검색

Debian 9.2에 Icinga 2 모니터링 도구를 설치하는 방법


이 가이드에서는 물리적 또는 가상 서버 또는 VM, 라우터, 스위치, 방화벽 어플라이언스 및 다른 네트워크 IoT 장치. 또한 HTTP, FTP, SMTP, IMAP 또는 기타 네트워크 서비스, 호스트 리소스, 물리적 센서, 소프트웨어, CPU 로드, 메모리, 디스크 공간 등과 같은 네트워크 프로토콜의 상태를 모니터링할 수 있으며 거의 모든 상호 연결 ICMP 또는 ping 요청을 통해 네트워크 장치.

원래 Nagios 모니터링 시스템의 포크인 Icinga는 PHP로 작성되고 LAMP 또는 LEMP 스택이라고도 하는 Apache/Nginx, PHP 및 MySQL/MariaDB 구성 요소에서 Linux에 많이 배포되는 오픈 소스 최신 네트워크 모니터링 애플리케이션입니다. Icinga 2는 메일, SMS, 채팅 또는 네트워크, 시스템, 서비스 또는 기타 관련 네트워크 중단에 대한 기타 유형의 경고를 통해 시스템 또는 네트워크 관리자에게 알리도록 구성할 수 있으며 네트워크 중단 시간 또는 성능에 대한 그래픽을 생성할 수도 있습니다.

요구 사항

  • 베어 메탈 머신 또는 가상 사설 서버에 설치된 Debian 9.2
  • 고정 IP 주소로 구성된 서버의 네트워크 인터페이스 카드 중 하나입니다.
  • 콘솔을 통해 루트 계정에 직접 액세스하거나 로컬 또는 원격 계정에 대한 SSH 서비스 또는 sudo 루트 권한을 통해 원격으로 액세스합니다.
  • 배포에 따라 웹 서비스용으로 구성된 적절한 DNS 레코드가 있는 개인 또는 공용 도메인 이름.
  • 메일 알림을 보내기 위해 구내에서 적절하게 구성된 메일 서비스.

초기 구성

자신의 서버에 Icinga 2 웹 모니터링 도구를 설치 및 구성하기 전에 먼저 시스템이 애플리케이션 컴파일 및 설치를 위한 모든 소프트웨어 요구 사항을 충족하는지 확인하십시오. 첫 번째 단계에서 아래 명령을 실행하여 시스템 리포지토리 및 소프트웨어 패키지를 업데이트합니다.

apt update
apt upgrade

다음 단계에서 다음 명령을 실행하여 명령줄에서 시스템을 추가로 관리하는 데 사용할 필수 유틸리티를 설치합니다.

apt install wget bash-completion unzip

그런 다음 다음 명령을 실행하여 시스템의 호스트 이름을 설정하십시오. 그에 따라 호스트 이름 변수를 바꾸십시오.

hostnamectl set-hostname icinga

아래 명령을 실행하여 시스템 호스트 이름과 호스트 파일을 확인합니다.

hostnamectl
cat /etc/hostname
hostname –s

마지막으로 커널 업데이트를 적용하고 호스트 이름이 올바르게 변경되도록 Debian 서버를 재부팅합니다.

init 6

Icinga 2는 웹에서 구성할 수 있는 네트워크 모니터링 응용 프로그램이며 그 기능은 주로 PHP 서버 측 프로그래밍 언어를 기반으로 합니다. 애플리케이션의 PHP 파일 스크립트를 실행하기 위해서는 Apache HTTP 서버와 같은 웹 서버와 PHP 처리 게이트웨이가 시스템에 설치되어 작동해야 합니다. Icinga가 올바르게 실행하는 데 필요한 모든 필수 PHP 모듈과 함께 Apache 웹 서버 및 PHP 인터프리터를 설치하려면 서버 콘솔에서 다음 명령을 실행하십시오.

apt install apache2 libapache2-mod-php7.0 php7.0-xml php7.0-opcache php7.0-xml php7.0-mbstring php7.0-json php7.0-curl php7.0-ldap php7.0-cli php7.0-gd php7.0-intl php7.0-readline

Apache 및 PHP를 설치한 후 루트 권한으로 다음 명령을 실행하여 웹 서버가 실행 중이고 포트 80에서 네트워크 연결을 수신하는지 테스트합니다.

netstat –tlpn

데비안 시스템에 netstat 네트워크 유틸리티가 기본적으로 설치되어 있지 않은 경우 아래 명령을 실행하여 설치하십시오.

apt install net-tools

netstat 명령 출력을 검사하면 Apache 웹 서버가 포트 80에서 들어오는 네트워크 연결을 수신하고 있음을 알 수 있습니다. 동일한 작업을 위해 기본적으로 다음 위치에 자동으로 설치되는 ss 명령을 사용할 수도 있습니다. 데비안 9.

ss- tulpn

UFW 방화벽 애플리케이션과 같이 시스템에 방화벽이 활성화된 경우 다음 명령을 실행하여 HTTP 트래픽이 방화벽을 통과하도록 허용하는 새 규칙을 추가해야 합니다.

ufw allow WWW

또는

ufw allow 80/tcp

iptables 원시 규칙을 사용하여 Debian 서버에서 방화벽 규칙을 관리하는 경우 방문자가 Icinga2 웹 인터페이스를 탐색할 수 있도록 방화벽에서 포트 80 인바운드 트래픽을 허용하는 다음 규칙을 추가합니다.

apt-get install -y iptables-persistent
iptables -I INPUT -p tcp --destination-port 80 -j ACCEPT
systemctl iptables-persistent save
systemctl iptables-persistent reload

다음으로 아래 명령을 실행하여 HTTP 연결을 HTTPS로 리디렉션하는 데 사용할 다음 Apache 모듈을 활성화하고 적용합니다.

a2enmod rewrite
systemctl restart apache2

마지막으로 HTTP 프로토콜을 통해 Debian 머신 IP 주소 또는 도메인 이름 또는 서버 FQDN을 방문하여 클라이언트 브라우저에 Apache 웹 서버 기본 웹 페이지를 표시할 수 있는지 테스트합니다. 시스템 IP 주소를 모르는 경우 ifconfig 또는 ip a 명령을 실행하여 서버의 IP 주소를 확인하십시오. 아래 스크린샷과 같이 Debian용 기본 Apache 페이지가 브라우저에 표시됩니다.

http://your_domain.tld

클라이언트의 트래픽을 보호하는 HTTPS 프로토콜을 통해 Icinga 2 모니터링 애플리케이션에 액세스하려면 다음 명령을 실행하여 Apache 웹 서버 SSL 모듈 및 SSL 사이트 구성 파일을 활성화하십시오. 또한 사용자가 HTTPS를 통해 인터페이스를 방문하도록 하려면 Apache 재작성 모듈을 활성화하십시오.

a2enmod ssl rewrite
a2ensite default-ssl.conf

다음으로 텍스트 편집기로 Apache 기본 SSL 사이트 구성 파일을 열고 아래 샘플과 같이 DocumentRoot 지시문 뒤에 다음 코드 줄을 추가하여 URL 재작성 규칙을 활성화합니다.

nano /etc/apache2/sites-enabled/default-ssl.conf

SSL 사이트 구성 파일 발췌:

<Directory /var/www/html>
  Options +FollowSymlinks
  AllowOverride All
Require all granted
</Directory>

또한 아래 발췌문에 표시된 것처럼 VirtualHost 행을 다음과 같이 변경합니다.

        <VirtualHost *:443>

TLS Apache 파일을 닫고 편집을 위해 /etc/apache2/sites-enabled/000-default.conf 파일을 열고 SSL 구성 파일과 동일한 URL 재작성 규칙을 추가합니다. 아래 예와 같이 DocumentRoot 문 뒤에 코드 줄을 삽입합니다.

<Directory /var/www/html>
  Options +FollowSymlinks
  AllowOverride All
  Require all granted
</Directory>

마지막으로 Apache 데몬을 다시 시작하여 지금까지 구성된 모든 규칙을 적용하고 HTTP 프로토콜을 통해 도메인을 방문합니다. 설치 시 Apache에서 발급한 자동 자체 서명 인증서 쌍을 사용하고 있기 때문에 아래 스크린샷과 같이 브라우저에 오류 경고가 표시되어야 합니다.

systemctl restart apache2

https://yourdomain.tld

계속하려면 경고를 수락하고 HTTPS 프로토콜을 통해 Apache 기본 웹 페이지로 리디렉션하십시오. 브라우저에 다음 페이지가 표시됩니다.

UFW 방화벽 애플리케이션이 HTTPS 포트로 들어오는 네트워크 연결을 차단하는 경우 다음 명령을 실행하여 HTTPS 트래픽이 방화벽을 통과하도록 허용하는 새 규칙을 추가해야 합니다.

ufw allow 'WWW Full'

또는

ufw allow 443/tcp

iptables가 네트워크 수준에서 Debian 시스템을 보호하기 위해 설치된 기본 방화벽 응용 프로그램인 경우 방문자가 도메인 이름을 탐색할 수 있도록 방화벽에서 포트 443 인바운드 트래픽을 허용하는 다음 규칙을 추가합니다.

iptables -I INPUT -p tcp --destination-port 443 -j ACCEPT
systemctl iptables-persistent save
systemctl iptables-persistent reload

다음 단계에서는 다음 PHP 변수가 활성화되고 PHP 시간대 설정이 올바르게 구성되고 시스템 지리적 위치와 일치하도록 PHP 기본 구성 파일을 추가로 변경해야 합니다. 편집을 위해 /etc/php/7.0/apache2/php.ini 파일을 열고 다음 줄이 다음과 같이 설정되었는지 확인합니다. 또한 처음에는 PHP 구성 파일을 백업하십시오.

cp /etc/php/7.0/apache2/php.ini{,.backup}
nano /etc/php/7.0/apache2/php.ini

php.ini 구성 파일에서 다음 변수를 검색, 편집 및 변경합니다.

php_value max_execution_time 300
php_value memory_limit 128M
php_value max_input_time 300
date.timezone = Europe/London

http://php.net/manual/ 링크에서 PHP 문서가 제공하는 표준 시간대 목록을 참조하여 실제 시간에 따라 time.zone 변수를 교체하십시오. ko/timezones.php

PHP7에서 사용할 수 있는 OPCache 플러그인을 통해 웹사이트 페이지의 로드 속도를 높이려면 아래 설명된 대로 PHP 인터프리터 구성 파일 하단에 다음 OPCache 설정을 추가하십시오.

opcache.enable=1 
opcache.enable_cli=1
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.memory_consumption=128
opcache.save_comments=1
opcache.revalidate_freq=1

php.ini 구성 파일을 닫고 아래 명령을 실행하여 변수가 올바르게 추가되었는지 확인하려면 PHP 구성 파일의 끝을 확인하십시오.

tail /etc/php/7.0/apache2/php.ini

위에서 설명한 변경 사항을 적용한 후 다음 명령을 실행하여 Apache 데몬을 다시 시작하여 새 변경 사항을 적용합니다.

systemctl restart apache2

마지막으로 다음 명령어를 실행하여 PHP info 파일을 생성하고 아래 이미지와 같이 브라우저에서 다음 URL의 PHP info 스크립트 파일을 방문하여 PHP 시간대가 올바르게 설정되었는지 확인합니다. 날짜 설정까지 아래로 스크롤하여 PHP 시간대 구성을 확인합니다.

echo '<?php phpinfo(); ?>'| tee /var/www/html/info.php

https://domain.tld/info.php

Icinga 2는 사용자, 연락처 및 기타 수집된 데이터를 MySQL, SQLite 또는 PostgreSQL과 같은 특정 RDBMS 데이터베이스에 저장합니다. 이 가이드에서는 MySQL 데이터베이스의 포크인 MariaDB 데이터베이스를 백엔드로 사용하여 Icinga를 구성합니다. 아래 명령을 실행하여 MariaDB 데이터베이스와 mysql 데이터베이스에 액세스하는 데 필요한 PHP 모듈을 설치합니다.

apt install mariadb-server mariadb-client php7.0-mysql

MariaDB를 설치한 후 netstat 또는 ss 명령을 실행하여 데몬이 실행 중이고 localhost, 포트 3306에서 연결을 수신하는지 확인합니다.

netstat –tlpn | grep mysql

그런 다음 MySQL 콘솔에 로그인하고 다음 명령을 실행하여 MariaDB 루트 계정을 보호합니다.

mysql -h localhost
use mysql;
update user set plugin='' where user='root';
flush privileges;
exit

이제 Debian 저장소의 설치 패키지에서 제공하는 mysql_secure_installation 스크립트를 실행하여 MariaDB를 안전하게 보호합니다. 실행하는 동안 스크립트는 MySQL 루트 암호 변경, 익명 사용자 제거, 원격 루트 로그인 비활성화 및 테스트 데이터베이스 삭제와 같은 MariaDB 데이터베이스 보안을 위해 설계된 일련의 질문을 합니다. 아래 명령을 실행하여 스크립트를 실행하고 MySQL 데몬을 완전히 보호하기 위해 묻는 모든 질문에 예를 입력했는지 확인하십시오. 가이드를 제외하고 아래 스크립트 출력을 사용하십시오.

sudo mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
 SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!
In order to log into MariaDB to secure it, we'll need the current
password for the root user.  If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none):
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
You already have a root password set, so you can safely answer 'n'.
Change the root password? [Y/n] y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
 ... Success!
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] y
 ... Success!
Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] y
 ... Success!
By default, MariaDB comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] y
 ... Success!
Cleaning up...
All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!

MariaDB 보안을 테스트하려면 루트 암호 없이 콘솔에서 데이터베이스에 로그인해 보십시오. 루트 계정에 암호가 제공되지 않으면 데이터베이스에 대한 액세스가 거부되어야 합니다. 암호가 제공되면 아래 스크린샷과 같이 로그인 프로세스가 MySQL 콘솔에 부여되어야 합니다.

mysql -h localhost -u root
mysql -h localhost -u root –p

다음으로 MariaDB 데이터베이스 콘솔에 로그인하고 먼저 다음 명령을 실행하여 Icinga2 응용 프로그램에서 사용할 데이터베이스와 이 데이터베이스를 관리하는 데 사용할 암호가 있는 사용자를 만듭니다. 이 데이터베이스 이름, 사용자 및 암호를 적절하게 바꿉니다.

mysql –u root -p
create database icingadb;
grant all privileges on icingadb.* to 'icinga_user'@'localhost' identified by 'icinga_pass';
flush privileges
exit

다음으로 다음 명령을 실행하여 Icinga2 웹 인터페이스 사용자, 그룹 및 기타 웹 인터페이스 사용자 지정 데이터를 저장하는 데 사용할 두 번째 MySQL 데이터베이스를 생성합니다. 또한 위의 데이터베이스에서와 같이 데이터베이스 이름과 자격 증명을 그에 따라 교체하고 데이터베이스 사용자에 대한 강력한 암호를 선택해야 합니다.

mysql –u root –p
create database icinga_users;
grant all privileges on icinga_users.* to 'icinga_user'@'localhost' identified by 'icinga_pass';
flush privileges
exit

지금까지의 모든 변경 사항을 적용하려면 MySQL 및 Apache 데몬을 다시 시작하고 다음 명령을 실행하여 데몬이 실행 중인지 확인합니다.

systemctl restart mysql apache2
systemctl status mysql apache2

아이싱가 2 설치

웹 모니터링 애플리케이션 설치를 위한 모든 시스템 요구 사항이 충족되면 아래 명령을 실행하여 MySQL 데이터베이스에 액세스하는 데 필요한 MySQL 모듈과 함께 애플리케이션 설치를 진행합니다. Icinga 2에는 Debian 9 리포지토리에서 제공하는 미리 컴파일된 바이너리 패키지가 있습니다. 설치는 Debian 9 apt 패키지 관리자를 통해 수행됩니다.

apt install icinga2 icinga2-ido-mysql

Debian 9 리포지토리에서 Icinga2 사전 컴파일된 바이너리를 설치하는 동안 응용 프로그램을 구성하기 위해 일련의 프롬프트가 화면에 나타납니다. 첫 번째 프롬프트에서 MySQL 모듈을 사용하도록 Icinga 2를 구성하고 활성화할지 묻는 메시지가 표시됩니다. 프롬프트에서 예를 선택하고 [Enter] 키를 눌러 아래 그림과 같이 계속 진행합니다.

다음 프롬프트에서 dbconfig-common 옵션을 사용하여 icinga2-ido-mysql에 대한 데이터베이스를 구성할지 묻는 메시지가 표시됩니다. 프롬프트에서 아니요를 선택하고 [Enter] 키를 눌러 Icinga 2 설치를 완료합니다.

Icinga 2 설치 후 Icinga 2 데몬을 시작하고 다음 명령을 실행하여 서비스 상태를 확인합니다.

systemctl start icinga2.service
systemctl status icinga2.service

다음 단계에서 아래 명령을 사용하여 Debian 9에서 Icinga 2 웹 인터페이스 및 명령줄 유틸리티 패키지를 설치합니다.

apt install icingaweb2 icingacli

웹에서 Icinga 2 구성을 시작하기 전에 Icinga 2 데몬을 다시 시작하여 모든 변경 사항을 선택하고 아래 명령을 실행하여 애플리케이션 상태를 확인합니다.

systemctl restart icinga2.service
systemctl status icinga2.service

다음으로 웹루트 경로에 아파치 웹서버에서 설치한 기본 index.html 파일을 제거하고 앞서 생성한 info.php 파일도 삭제한다.

rm /var/www/html/index.html
rm /var/www/html/info.php

이제 다음 명령을 실행하여 Icinga 데이터베이스용 MySQL 스키마를 설치합니다. MySQL 데이터베이스 스키마는 /usr/share/icinga2-ido-mysql/schema/ 디렉토리에 있습니다.

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

웹에서 Icinga 2 설치를 수행하려면 다음 명령으로 설치 토큰을 생성하십시오. 나중에 요청할 때 웹 인터페이스에 기록할 것이기 때문에 이 토큰을 기록해 두십시오.

icingacli setup token create

나중에 이 토큰을 찾을 수 없는 경우 아래 명령을 실행하여 생성된 토큰을 표시할 수 있습니다.

icingacli setup token show

이제 브라우저를 열고 HTTP 프로토콜을 통해 서버의 IP 주소 또는 도메인 이름을 다음 URL로 이동하여 Icinga2 웹 인터페이스 설치 프로세스를 진행하십시오.

http://your_domain.tld/icingaweb2/setup

첫 번째 설치 화면에서 아래 스크린샷과 같이 설치 프로세스를 시작하기 위해 이전에 생성된 토큰을 기록하라는 메시지가 표시됩니다. 토큰을 추가한 후 다음 버튼을 눌러 설치 프로세스를 계속하십시오.

다음 설치 화면에서 Icinga 2 웹 설치를 위한 일부 모듈을 활성화하라는 메시지가 표시됩니다. 아래 이미지와 같이 문서 및 모니터링 모듈을 선택하고 다음 버튼을 눌러 계속합니다.

다음으로 Icinga2 웹 설치 프로그램은 설치 프로세스를 계속하기 위해 모든 요구 사항이 충족되는지 감지하기 위해 일련의 시스템 및 PHP 모듈 검사를 수행합니다. 필요한 모든 PHP 모듈이 설치되고 올바르게 구성되어 있는 목록까지 아래로 스크롤하고 다음 버튼을 눌러 아래 이미지와 같이 다음 설치 섹션으로 이동합니다.

다음 화면에서 Icinga Web 2의 인증 백엔드 방법으로 데이터베이스를 선택하고 다음 버튼을 눌러 계속합니다.

다음 단계에서 Icinga 2 Web MySQL 데이터베이스 이름과 이 데이터베이스에 대한 액세스 자격 증명을 추가합니다. 이 데이터베이스는 Icinga 2 웹 인터페이스 사용자 및 그룹을 저장하는 데 사용됩니다. 앞에서 만든 두 번째 데이터베이스에 대한 데이터베이스 정보를 사용합니다. 이 리소스의 이름으로 icingaweb_db를 추가하고 호스트, 포트 및 문자 세트 변수를 기본값으로 둡니다. Persistent 및 SSL 옵션을 선택하지 말고 아래 이미지와 같이 구성 유효성 검사 버튼을 눌러 데이터베이스 연결을 확인하십시오. 완료되면 다음 버튼을 눌러 다음 설치 프로그램 섹션으로 이동합니다.

이제 아래 스크린샷과 같이 지원되는 데이터베이스 인증의 이름을 설정하고 다음 버튼을 눌러 계속 진행하세요.

다음 화면에서 Icinga2 웹 인터페이스를 관리하기 위한 관리 사용자 이름을 제공하고 이 계정에 대한 강력한 암호를 선택합니다. 완료되면 다음 버튼을 눌러 다음 설치 화면으로 이동합니다.

다음 설정으로 Icinga 응용 프로그램 및 로깅 구성을 구성하고 완료되면 다음 버튼을 눌러 계속하십시오.

  • Show Stacktraces 확인
  • 스토리지 유형=데이터베이스
  • 로깅 유형=파일
  • 로깅 수준=오류
  • 파일 경로=/var/log/icingaweb2/icingaweb2.log

다음 화면에는 Icinga Web2가 성공적으로 구성되었음을 알리는 메시지가 표시되며 자세한 보고서에는 지금까지 이루어진 모든 구성이 표시됩니다. 보고서를 검토하고 다음 버튼을 눌러 다음 설치 섹션으로 계속 진행하십시오.

아래 이미지와 같이 다음 버튼을 눌러 Icinga 2 모니터링 모듈 구성을 진행합니다.

다음 화면에서 Icinga2 백엔드의 이름을 추가하고 백엔드 유형으로 IDO를 선택한 후 다음 버튼을 눌러 계속합니다.

서버 콘솔로 돌아가서 Icinga MySQL IDO 구성 파일을 열고 편집한 다음 아래 샘플과 같이 Icinga 데이터베이스 자격 증명(첫 번째 데이터베이스 정보)을 추가합니다.

nano /etc/icinga2/features-enabled/ido-mysql.conf

ido-mysql.conf 파일 발췌:

library "db_ido_mysql"
 
object IdoMysqlConnection "ido-mysql" {
  user = "icinga_user",
  password = "icinga_pass",
  host = "localhost",
  database = "icingadb"
}

파일을 저장하고 Icinga2 데몬을 다시 시작하여 다음 명령을 실행하여 설정을 적용합니다. 그런 다음 Icinga 웹 인터페이스로 돌아가서 설치 프로세스를 계속하십시오.

systemctl restart icinga2.service

IDO 리소스 환경 설정을 위해 Icinga 데이터베이스 정보를 추가합니다. 아래 그림과 같이 처음 생성된 데이터베이스에 대한 데이터베이스 정보를 사용합니다. 데이터베이스 정보 편집을 마친 후 Validate Configuration 버튼을 눌러 Icinga Monitoring IDO Resource를 검증하고 Next 버튼을 눌러 다음 설치 화면으로 이동합니다.

다음 설정으로 Icinga Command Transport를 구성하고 다음 버튼을 눌러 계속하십시오.

  • 수송 이름=icinga2
  • 전송 유형=로컬 명령 파일
  • 명령 파일=/var/run/icinga2/cmd/icinga2.cmd

다음 화면에서 아래 이미지와 같이 보안 모니터링을 위해 구성된 기본 변수를 그대로 두고 다음 버튼을 눌러 계속합니다.

다음 화면에서 Icinga2 모니터링 모듈이 성공적으로 구성되었음을 알리는 새 메시지가 표시됩니다. 표시된 보고서를 검토하여 모든 것이 올바르게 구성되었는지 확인하고 마침 버튼을 눌러 설치를 완료합니다.

설치 프로세스가 성공적으로 완료되면 Icinga Web 2가 성공적으로 설치되었음을 알리는 축하 메시지가 표시됩니다. Icinga2 로그인 페이지로 리디렉션하려면 로그인 링크를 누르십시오.

설치 프로세스 중에 구성된 자격 증명을 사용하여 Icinga Web 2에 로그인하면 Icinga Web 2 대시보드로 이동하여 현재 모니터링되는 서비스 목록과 서버에 속한 시스템 리소스가 표시됩니다.

마지막으로 서버의 명령줄에 다시 로그인하고 다음 명령을 실행하여 Icinga Web 2 로그가 생성되는지 확인합니다.

mkdir -p /var/log/icingaweb2/
chgrp -R icingaweb2 /var/log/icingaweb2/
chmod -R 775 /var/log/icingaweb2/

방문자가 HTTPS 프로토콜을 통해 Icinga 웹 2 인터페이스를 탐색하도록 강제하려면 웹 서버 문서 루트 경로에 다음 콘텐츠가 포함된 새 .htaccess 파일을 만듭니다.

nano /var/www/html/.htaccess

.htaccess 파일 발췌:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{SERVER_NAME}/$1 [R,L]
</IfModule>
 
RewriteEngine on
Options -Indexes

그게 다야! Debian 9.2에 Icinga 2 네트워크 모니터링 응용 프로그램을 성공적으로 설치하고 구성했습니다. 그러나 Apache HTTP 서버는 자체 서명된 인증서를 사용하여 서버와 클라이언트 브라우저 간의 트래픽을 암호화하기 때문에 도메인에 액세스할 때마다 항상 경고 메시지가 생성되고 브라우저에 표시됩니다. 이 경우 신뢰할 수 있는 인증 기관에서 발급한 인증서를 구입하거나 Let’s Encrypt CA에서 무료 인증서 쌍을 받아야 합니다.

Icinga 2와 관련된 다른 사용자 지정 구성에 대해서는 다음 주소의 설명서 페이지를 방문하십시오: https://www.icinga.com/docs