모니터링 도구 · 8 min read · Oct 18, 2025
Debian 9에 Nagios 4.3.x 모니터링 도구 설치하기
이 튜토리얼에서는 Debian 9.1(코드명 Stretch)에서 소스에서 최신 버전의 Nagios Core(현재 4.3.4)를 설치하고 구성하는 방법을 보여줍니다.
Nagios는 Nagios Core로도 알려져 있으며, 개발자들이 적극적으로 유지 관리하는 무료 오픈 소스 네트워크 모니터링 도구로, 전체 네트워크 인프라를 모니터링하도록 설계되었습니다. Nagios는 네트워크 연결이 구성된 거의 모든 네트워크 장치를 모니터링할 수 있으며, 라우터, 스위치, 서버, 데스크탑, 방화벽 장비, IoT 장치 등을 포함합니다. 장치의 네트워크 상태를 확인하기 위해 장치를 모니터링하는 것 외에도, Nagios는 네트워크 서비스, 애플리케이션 또는 운영 체제와 관련된 기타 특정 작업을 모니터링할 수 있으며, 가능한 장치, 중단 또는 서비스 실패에 대해 네트워크 관리자에게 알리기 위해 이메일 또는 SMS를 통해 경고를 보낼 수 있도록 구성할 수 있습니다.
요구 사항
- 최소 소프트웨어 요구 사항으로 설치된 물리적 머신 또는 가상 사설 서버에 Debian 9.1이 설치되어 있어야 합니다.
- 정적 IP 주소로 구성된 네트워크 인터페이스 카드.
- 루트 계정에 대한 접근 권한 또는 sudo를 통해 루트 계정 권한이 있는 사용자.
- 적절한 DNS A 레코드가 구성된 도메인 이름(개인 또는 공용). DNS 서버가 구성되어 있지 않은 경우, 서버 IP 주소를 통해 Nagios에 접근할 수 있습니다.
초기 구성
소스에서 Nagios를 설치하기 전에 시스템이 Nagios를 컴파일하고 설치하기 위한 모든 소프트웨어 요구 사항을 충족하는지 확인하십시오. 첫 번째 단계로, 아래 명령을 실행하여 시스템 저장소 및 소프트웨어 패키지를 업데이트하십시오.
apt updateapt upgrade
다음 단계에서는 시스템을 명령줄에서 추가로 관리하는 데 사용될 몇 가지 필수 유틸리티를 설치하기 위해 새로운 명령을 실행하십시오.
apt install wget unzip zip bash-completionNext, 다음 명령을 실행하여 시스템의 이름을 설정하십시오:
hostnamectl set-hostname nagios.server.lan아래 명령을 실행하여 머신 호스트 이름 및 호스트 파일을 확인하십시오.
hostnamectlcat /etc/hostnamecat /etc/hosts마지막으로, 새로운 호스트 이름을 적용하기 위해 시스템을 재부팅하십시오.
init 6Nagios는 PHP 서버 측 프로그래밍 언어로 작성된 일부 부분과 기타 CGI 프로그램이 포함된 웹 기반 모니터링 애플리케이션입니다. Nagios PHP 파일 스크립트를 실행하려면 Apache HTTP 서버와 PHP 처리 게이트웨이가 시스템에 설치되고 작동해야 합니다. Nagios 4가 제대로 실행되기 위해 필요한 모든 PHP 모듈과 함께 Apache 웹 서버 및 PHP 인터프리터를 설치하려면 서버 콘솔에서 다음 명령을 실행하십시오.
apt install apache2 libapache2-mod-php7.0 php7.0Apache와 PHP가 설치된 후, 다음 명령을 루트 권한으로 실행하여 웹 서버가 작동 중인지 확인하고 포트 80에서 네트워크 연결을 수신하고 있는지 테스트하십시오.
netstat –tlpnDebian 9 시스템에 netstat 네트워크 유틸리티가 기본적으로 설치되어 있지 않은 경우, 아래 명령을 실행하여 설치하십시오.
apt install net-tools
netstat 명령 출력에서 Apache 웹 서버가 포트 80에서 수신 대기 중임을 확인할 수 있습니다.
시스템에 UFW 방화벽 애플리케이션과 같은 방화벽이 활성화되어 있는 경우, 다음 명령을 실행하여 HTTP 트래픽이 방화벽을 통과할 수 있도록 새로운 규칙을 추가해야 합니다.
ufw allow WWW또는
ufw allow 80/tcp방화벽에서 방문자가 Nagios Core 웹 인터페이스를 탐색할 수 있도록 포트 80의 인바운드 트래픽을 허용하기 위해 iptables 원시 규칙을 사용하려는 경우, 다음 규칙을 추가하십시오.
apt-get install -y iptables-persistentiptables -I INPUT -p tcp --destination-port 80 -j ACCEPTsystemctl iptables-persistent savesystemctl iptables-persistent reload다음으로, Nagios 웹 애플리케이션이 제대로 실행되기 위해 필요한 다음 Apache 모듈을 활성화하고 적용하려면 아래 명령을 실행하십시오.
a2enmod rewrite headers cgisystemctl restart apache2
마지막으로, 클라이언트 브라우저에서 Debian 머신의 IP 주소 또는 도메인 이름을 HTTP 프로토콜을 통해 방문하여 Apache 웹 서버 기본 웹 페이지가 표시되는지 테스트하십시오. 머신 IP 주소를 모르는 경우 ifconfig 또는 ip a 명령을 실행하십시오.

다음 단계에서는 PHP 기본 구성 파일에 몇 가지 추가 변경을 수행하여 PHP timezone 설정이 올바르게 구성되고 시스템 물리적 위치와 일치하는지 확인해야 합니다. /etc/php/7.0/apache2/php.ini 파일을 열어 다음 줄이 다음과 같이 설정되어 있는지 확인하십시오.
date.timezone = Europe/London시간대 변수를 물리적 시간에 맞게 PHP 문서에서 제공하는 시간대 목록을 참조하여 적절히 교체하십시오. http://php.net/manual/en/timezones.php.
변경 사항을 적용하기 위해 Apache 데몬을 재시작하십시오.
systemctl restart apache2필요한 변경을 완료한 후, php 정보 파일을 생성하고 다음 명령을 실행하여 변경 사항을 적용하기 위해 Apache 데몬을 재시작하십시오.
echo ''| tee /var/www/html/info.phpsystemctl restart apache2브라우저에서 다음 URL에서 phpinfo 스크립트 파일을 방문하여 PHP 시간대가 올바르게 구성되었는지 확인하십시오. 아래 이미지에서 날짜 설정으로 스크롤하여 php 시간대 설정을 확인하십시오.

Nagios Core 설치
소스에서 Nagios Core를 다운로드하고 컴파일하기 전에, 먼저 아래 명령을 실행하여 시스템에 다음 필수 패키지를 설치해야 합니다.
apt install autoconf gcc libc6 make apache2-utils libgd-devDebian 시스템에 Nagios를 소스에서 컴파일하는 데 필요한 모든 종속성 및 패키지가 설치된 후, https://www.nagios.org/downloads/nagios-core/에서 Nagios 공식 웹사이트를 방문하여 wget 유틸리티를 사용하여 최신 버전의 Nagios Core 안정 소스 아카이브를 다운로드하십시오. 다음 명령 발췌와 같이.
wget https://assets.nagios.com/downloads/nagioscore/releases/nagios-4.3.4.tar.gzNagios 소스 tarball이 다운로드된 후, tar 아카이브를 추출하고 추출된 nagios 디렉토리로 들어가십시오. 다음 명령을 사용하십시오. nagios 추출 디렉토리 내에서 ls 명령을 실행하여 소스 파일 목록을 확인하십시오.
tar xzf nagios-4.3.4.tar.gzcd nagios-4.3.4/ls
Nagios 추출된 소스 디렉토리 내에서 아래 명령을 실행하여 Nagios 컴파일 프로세스를 시작하십시오. 먼저, Nagios가 Apache 웹 서버 http 구성 경로를 sites-enabled 디렉토리를 가리키도록 구성하십시오.
./configure --with-httpd-conf=/etc/apache2/sites-enabled다음으로, 아래 명령을 실행하여 Nagios를 컴파일하십시오. 아래 이미지에 설명되어 있습니다.
make all

다음으로, nagios 시스템 사용자 및 그룹을 생성하고 nagios 계정을 Apache 런타임 사용자에 추가하여 nagios 사용자가 웹 리소스에 접근할 수 있는 권한을 갖도록 하십시오.
useradd nagiosusermod -a -G nagios www-data이제 다음 명령을 실행하여 Nagios 바이너리 파일, CGI 스크립트 및 HTML 파일을 설치하기 시작하십시오. make install 명령의 최종 출력은 아래 이미지에 표시된 대로 바이너리 위치를 표시해야 합니다.
make install
다음으로, Nagios 데몬 systemd init 파일을 설치하고 nagios 서비스를 시스템 전체에서 활성화하려면 다음 명령을 실행하십시오.
make install-initsystemctl enable nagios.service
또한, 아래 명령을 실행하여 Nagios 외부 명령 파일을 설치하고 구성하십시오.
make install-commandmode다음으로, Nagios 데몬이 시작하고 제대로 작동하는 데 필요한 Nagios 샘플 구성 파일을 설치하려면 다음 명령을 실행하십시오.
make install-config
마지막으로, Nagios에 대한 Apache 웹 서버 구성 파일을 설치하십시오. 이 파일은 /etc/apacahe2/sites-enabled/ 디렉토리에 위치하게 됩니다. 아래 명령을 실행하십시오.
make install-webconf
Apache 웹 서버에 로그인할 수 있도록 필요한 비밀번호와 함께 nagiosadmin 사용자 계정을 생성하려면 다음 명령을 실행하십시오.
htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadminNagios 웹 패널에 접근하려면 먼저 Apache HTTP 서버를 재시작하고 Nagios 서비스를 시작하려면 다음 명령을 실행하십시오.
systemctl restart apache2systemctl start nagios그런 다음 브라우저를 열고 서버의 IP 주소 또는 도메인 이름 또는 FQDN을 방문하고 /nagios URL 경로를 HTTP 프로토콜을 통해 추가하여 Nagios 웹 인터페이스에 로그인하십시오. 아래 스크린샷에 설명되어 있습니다. 이 사용자에 대해 이전에 구성한 비밀번호를 사용하여 nagiosadmin 사용자로 로그인하십시오.


Nagios 플러그인 설치
이제 시스템에 Nagios 엔진이 설치되었습니다. 그러나 Nagios 소프트웨어는 아직 작동하지 않습니다. 호스트 및 서비스를 확인하는 데 사용되는 플러그인이 설치되지 않았기 때문입니다. 이 동작은 Hosts 메뉴로 이동하면 플러그인 오류가 표시되는 것을 통해 확인할 수 있습니다. 아래 스크린샷과 같이.

소스에서 기본 Nagios 플러그인을 컴파일하고 설치하려면 먼저 아래 명령을 실행하여 다음 라이브러리 및 종속성을 설치해야 합니다.
apt install libmcrypt-dev make libssl-dev bc gawk dc build-essential snmp libnet-snmp-perl gettext libldap2-dev smbclient fping default-libmysqlclient-dev모든 종속성 패키지가 시스템에 설치된 후, 다음 주소로 이동하여 Nagios 플러그인 리포지토리 페이지를 방문하십시오. https://github.com/nagios-plugins/nagios-plugins/releases 그리고 wget 명령줄 유틸리티를 사용하여 최신 소스 코드 아카이브를 가져오십시오. 아래 명령 예와 같이.
wget https://github.com/nagios-plugins/nagios-plugins/archive/release-2.2.1.tar.gz그런 다음, 압축된 Nagios 플러그인 소스 코드 tarball을 추출하고 추출된 nagios-plugins 디렉토리로 들어가려면 다음 명령을 실행하십시오.
tar xfz release-2.2.1.tar.gzcd nagios-plugins-release-2.2.1/
소스에서 Nagios 플러그인을 컴파일하고 설치하려면 다음 스크립트 및 명령을 루트 권한으로 실행하십시오. 아래 발췌와 같이.
./tools/setup./configuremakemake install모든 플러그인이 설치된 후, /usr/local/nagios/libexec/ 시스템 경로에서 플러그인을 찾을 수 있습니다. ls 명령을 실행하여 /usr/local/nagios/libexec/ 디렉토리의 모든 내용을 검사하고 시스템에서 사용할 수 있는 Nagios 플러그인을 확인하십시오.
ls /usr/local/nagios/libexec/
Nagios 엔진이 설치된 플러그인을 사용하도록 하려면 다음 명령을 실행하여 Nagios 서비스를 재시작하고 상태를 확인해야 합니다.
systemctl restart nagios.servicesystemctl status nagios.serviceNagios 플러그인이 예상대로 작동하는지 테스트하려면 브라우저를 열고 서버의 IP 주소, FQDN 또는 도메인 이름을 방문하여 Hosts 또는 Services 메뉴로 이동하십시오. 아래 스크린샷과 같이. 모니터링되는 호스트 및 서비스는 이제 플러그인에 의해 확인되어야 하며, 플러그인 명령 종료 상태에 따라 올바른 출력을 표시해야 합니다. 표시되는 색상은: 초록색은 OK, 노란색은 경고, 빨간색은 치명적입니다.

Nagios 엔진 웹 인터페이스에 보안 연결을 통해 HTTPS 프로토콜을 사용하여 접근하려면 다음 명령을 실행하여 Apache 웹 서버 SSL 모듈 및 SSL 사이트 구성 파일을 활성화해야 합니다.
a2enmod ssla2ensite default-ssl.conf그런 다음, 방문자가 브라우저에서 Nagios 웹 인터페이스를 방문할 때마다 자동으로 HTTPS 프로토콜로 리디렉션되도록 하려면 /etc/apache2/sites-enabled/000-default.conf 파일을 열어 편집하고 DocumentRoot 문 다음에 다음 리라이트 규칙을 추가하십시오.
RewriteEngine on
RewriteCond %{HTTPS} off
RewriteRule ^(.*) https://%{HTTP_HOST}/$1
마지막으로, 지금까지 구성된 모든 규칙을 적용하기 위해 Apache 데몬을 재시작하고 Nagios 웹 인터페이스를 HTTP 프로토콜을 통해 방문하십시오.
systemctl restart apache2.serviceApache가 HTTPS 포트에서 수신 대기 중인지 확인하려면 netstat 명령을 실행하고 443 포트 바인딩을 찾으십시오. 아래 이미지와 같이.
netstat -tlpnUFW 방화벽 애플리케이션이 HTTPS 포트로의 인바운드 네트워크 연결을 차단하는 경우, 다음 명령을 실행하여 HTTPS 트래픽이 방화벽을 통과할 수 있도록 새로운 규칙을 추가해야 합니다.
ufw allow 'WWW Full'또는
ufw allow 443/tcpDebian 시스템을 보호하기 위해 iptables 방화벽을 실행하는 경우, 방문자가 Nagios Core 웹 인터페이스를 탐색할 수 있도록 방화벽에서 포트 443의 인바운드 트래픽을 허용하기 위해 다음 규칙을 추가하십시오.
iptables -I INPUT -p tcp --destination-port 443 -j ACCEPTsystemctl iptables-persistent savesystemctl iptables-persistent reload이제 자동으로 HTTPS 프로토콜을 통해 Nagios 웹 패널로 리디렉션되어야 합니다. Apache에서 설치 시 발급된 자동 생성된 자체 서명된 인증서 쌍을 사용하고 있기 때문에 브라우저에 경고 오류가 표시될 수 있습니다. 브라우저 경고를 수락하고 이전에 구성한 자격 증명으로 Nagios에 로그인하십시오. 아래 스크린샷과 같이.

Nagios에서 모니터링할 새 호스트를 추가하려면 /usr/local/nagios/etc/objects/localhost.cfg 구성 파일을 열어 편집하고 localhost 정의 다음에 새 장치를 추가하십시오. 아래 예와 같이.
define host{
use linux-server
host_name router
alias router
address 192.168.1.1
}
host_name, alias 및 IP 주소 변수를 적절히 교체하고 Nagios 데몬을 재시작하여 새 호스트 정의를 로드하고 변경 사항을 적용하십시오.
systemctl restart nagios몇 분 후, Nagios 웹 인터페이스의 Hosts 메뉴로 이동하여 장치 상태를 확인하십시오. 아래 이미지와 같이.

그게 전부입니다! Debian 9에서 소스에서 Nagios 엔진을 성공적으로 설치하고 구성했습니다. 이제 조직의 네트워크 장치, 서버 또는 모니터링할 중요한 서비스를 추가할 수 있습니다. Nagios Core 및 Nagios 플러그인에 대한 기타 사용자 정의 구성에 대해서는 다음 링크의 문서 페이지를 방문하십시오. https://support.nagios.com/kb/category.php?id=12
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.