웹사이트 검색

VnStat PHP: 네트워크 대역폭 사용량을 모니터링하기 위한 웹 기반 인터페이스


VnStat PHP "vnstat"라는 가장 유명한 콘솔 모드 네트워크 로거 유틸리티에 대한 그래픽 인터페이스 애플리케이션입니다. 이 VnStat PHPVnStat의 그래픽 프런트엔드로, 멋진 그래픽 형식으로 네트워크 트래픽 대역폭 사용 보고서를 보고 모니터링합니다. INOUT 네트워크 트래픽 통계를 시간별, , 월별로 표시합니다. 또는 전체 요약.

이 도움말에서는 Linux 시스템에 VnStatVnStat PHP를 설치하는 방법을 보여줍니다.

VnStat PHP 전제조건

시스템에 다음 소프트웨어 패키지를 설치해야 합니다.

  • VnStat: 명령줄 네트워크 대역폭 모니터링 도구는 설치 및 구성되어야 하며 네트워크 대역폭 통계를 수집해야 합니다.
  • Apache: 웹페이지를 제공하는 웹 서버입니다.
  • PHP: 서버에서 PHP 스크립트를 실행하기 위한 서버측 스크립트 언어입니다.
  • php-gd 확장: 그래픽 이미지 제공을 위한 GD 확장입니다.

1단계: VnStat 명령줄 도구 설치 및 구성

VnStat은 네트워크 장치의 대역폭(송신수신)을 계산하고 자체 데이터베이스에 데이터를 유지하는 명령줄 네트워크 대역폭 모니터링 유틸리티입니다. .

Vnstat은 타사 도구이며 Red Hat 기반 시스템에서 epel 저장소를 활성화하여 설치할 수 있습니다. 활성화한 후에는 아래와 같이 yum 명령을 사용하여 설치할 수 있습니다.

yum install vnstat              [On CentOS/RHEL]
sudo apt-get install vnstat     [On Debian/Ubuntu]

VnStat의 최신 버전을 설치하려면 Linux에서 네트워크 트래픽을 모니터링하기 위해 vnStat를 설치하는 방법 문서를 따르세요.

내가 말했듯이 Vnstat은 모든 네트워크 정보를 보관하기 위해 자체 데이터베이스를 유지 관리합니다. "eth0"이라는 네트워크 인터페이스용 새 데이터베이스를 생성하려면 다음 명령을 실행합니다. 요구 사항에 따라 인터페이스 이름을 바꾸십시오.

vnstat -i eth0

Error: Unable to read database "/var/lib/vnstat/eth0".
Info: -> A new database has been created.

위의 오류가 발생하는 경우 명령을 처음 실행하는 것이므로 이러한 오류에 대해 걱정하지 마십시오. 따라서 eth0에 대한 새 데이터베이스가 생성됩니다.

이제 다음 명령을 실행하여 활성화된 모든 데이터베이스를 업데이트하거나 표시된 대로 -i 매개변수를 사용하여 특정 인터페이스만 업데이트합니다. eth0 인터페이스의 INOUT에 대한 트래픽 통계를 생성합니다.

vnstat -u -i eth0

다음으로 5분마다 실행되는 crontab을 추가하고 eth0 데이터베이스를 업데이트하여 트래픽 통계를 생성합니다.

*/5 * * * * /usr/bin/vnstat -u >/dev/null 2>&1

2단계: Apache, Php 및 Php-gd 확장 설치

Red Hat 기반 시스템용 'yum'이라는 패키지 관리자 도구와 'apt-get'을 사용하여 다음 소프트웨어 패키지를 설치합니다. Debian 기반 시스템용.

RHEL/CentOS 및 Fedora에서
yum install httpd php php-gd

시스템 시작 시 Apache를 켜고 서비스를 시작합니다.

chkconfig httpd on
service httpd start

다음 "iptables" 명령을 실행하여 방화벽에서 Apache 포트 "80"을 연 다음 서비스를 다시 시작합니다.

iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
service iptables restart
Debian/Ubuntu 및 Linux Mint에서
sudo apt-get install apache2 php php-gd
sudo /etc/init.d/apache2 start

Apache용 포트 80를 엽니다.

sudo ufw allow 80

3단계: VnStat PHP 프런트엔드 다운로드

아래와 같이 "wget 명령"을 사용하여 최신 VnStat PHP 소스 tarball 파일을 다운로드하거나 이 페이지를 방문하여 최신 버전을 다운로드하세요.

cd /tmp
wget http://www.sqweek.com/sqweek/files/vnstat_php_frontend-1.5.1.tar.gz

표시된 대로 "tar 명령"을 사용하여 소스 tarball 파일을 추출합니다.

tar xvf vnstat_php_frontend-1.5.1.tar.gz

4단계: VnStat PHP 프런트엔드 설치

압축을 풀면 "vnstat_php_frontend-1.5.1"라는 디렉터리가 표시됩니다. 이 디렉터리의 내용을 아래와 같이 vnstat 디렉터리로 웹 서버 루트 위치에 복사합니다.

RHEL/CentOS 및 Fedora에서
cp -fr vnstat_php_frontend-1.5.1/ /var/www/html/vnstat

시스템에서 SELinux가 활성화된 경우 "restorecon" 명령을 실행하여 파일 기본 SELinux 보안 컨텍스트를 복원합니다.

restorecon -Rv /var/www/html/vnstat/
Debian/Ubuntu 및 Linux Mint에서
cp -fr vnstat_php_frontend-1.5.1/ /var/www/vnstat

5단계: VnStat PHP 프런트엔드 구성

설정에 맞게 구성하세요. VI 편집기로 다음 파일을 열고 아래와 같이 매개변수를 변경합니다.

RHEL/CentOS 및 Fedora에서
vi /var/www/html/vnstat/config.php
Debian/Ubuntu 및 Linux Mint에서
vi /var/www/vnstat/config.php

기본값인 언어를 설정하세요.

// edit these to reflect your particular situation
$locale = 'en_US.UTF-8';
$language = 'en';

모니터링할 네트워크 인터페이스를 정의합니다.

// list of network interfaces monitored by vnStat
$iface_list = array('eth0', 'eth1');

네트워크 인터페이스에 대한 사용자 정의 이름을 설정할 수 있습니다.

// optional names for interfaces
// if there's no name set for an interface then the interface identifier.
// will be displayed instead
$iface_title['eth0'] = 'Internal';
$iface_title['eth1'] = 'External';

파일을 저장하고 닫습니다.

6단계: VnStat PHP에 액세스하고 그래프 보기

즐겨 사용하는 브라우저를 열고 다음 링크 중 하나로 이동하세요. 이제 시간, 단위로 네트워크 대역폭 사용량을 요약하여 보여주는 멋진 네트워크 그래프가 표시됩니다.

http://localhost/vnstat/
http://your-ip-address/vnstat/
샘플 출력

참고링크

VnStat PHP 홈페이지