서버 모니터링 · 5 min read · Oct 14, 2025

서버 SQUID 접근 모니터링

온라인에서 명령줄 모니터링 업데이트를 온라인으로 모니터링하기 위해, 우리는 “tail” 명령의 매개변수 “-f”를 사용할 수 있으며, 관심에 따라 필터를 적용할 수 있습니다.

# tail -f /var/log/squid/access.log | awk ‘{print$3 “ “ $8 “ “ $7}’

192.168.0.1 wrochal http://www.linuxit.com.br/
192.168.0.1 wrochal http://www.linuxit.com.br/log.gif
192.168.0.1 wrochal http://www.linuxit.com.br/banners/linuxmall.gif
192.168.0.1 wrochal http://www.linuxit.com.br/parcerios/01.gif
192.168.0.1 wrochal http://www.linuxit.com.br/parcerios/02.gif
192.168.0.1 wrochal http://www.linuxit.com.br/parcerios/03.gif
192.168.0.1 wrochal http://www.linuxit.com.br/parcerios/04.gif
192.168.0.1 wrochal http://www.linuxit.com.br/google.html

SARG로 모니터링

Sarg를 사용하면 사용자 접근을 더 자세히 추적할 수 있습니다. Sarg가 보고서를 생성하는 예를 보십시오. Sarg는 /etc/sarg/sarg.conf 구성 파일을 통해 여러 언어로 구성할 수 있으며, Sarg의 구성은 간단하고 쉽습니다.

Sarg와 그 제작자에 대해 조금 알아보십시오 (자세한 정보).

Sarg 설치

SARG는 다음 주소에서 다운로드할 수 있습니다: http://sarg.sourceforge.net/sarg.php. 다운로드한 후, 다음 명령을 사용하여 압축을 풉니다: # tar -xzvf sarg-1.3-PRE2.tar.gz

그 후, 프로그램이 압축 해제된 디렉토리에서 다음을 입력합니다: # ./configure

기본적으로 SARG는 /usr/local/sarg 디렉토리에 설치됩니다. /etc/sarg/에서 sarg.conf 구성 파일을 찾을 수 있습니다.

Sarg 구성

주요 매개변수와 설명된 파일을 인용하겠습니다.

언어 정의

language Portuguese

보고서 제목

title “Squid 사용자 접근 보고서”

보고서가 생성될 디렉토리

output_dir /home/squid/report/

사용자 이름을 기반으로 보고서를 생성하려면 (사용자 인증이 구성된 프록시가 필요합니다).

user_ip no
이 옵션은 Squid의 로그가 생성되는 위치를 지정할 수 있습니다. # TAG: access_log file

#access_log /usr/local/squid/logs/access.log
#access_log /var/log/squid/logs/access.log # RedHat 버전 이 옵션은 수정할 필요가 없습니다. 사이트에 대한 접근 유형은 보고서 유형에 따라 다릅니다. # TAG: report_type type

다음 옵션이 존재합니다:

Topsites - 연결 및 바이트로 가장 많이 방문한 사이트.
Sites_users - 사용자가 특정 사이트에 접근한 샘플.
Users_sites - 특정 사용자가 접근한 사이트 샘플.
Date_time - 일별 및 시간별로 사용된/전송된 바이트.
Denied - ACL에 의해 금지된 사이트에 대한 접근 시도 샘플.
Auth_failures - 인증 시도 샘플 (인증 비밀번호 입력 오류) 사용자 결함.

Sarg 구성을 마친 후, 보고서를 생성하면 됩니다. 아래는 사용 방법에 대한 몇 가지 예입니다.

예를 들어, 날짜에 대한 보고서를 이메일로 보내고 싶다면: sarg -e [email protected] -d 01/01/2003-06/01/2003

URL 주소에 대한 또 다른 멋진 예는, 아래와 같이 특정 주소에 대한 보고서만 생성할 수 있습니다: sarg -s www.linuxit.com.br, www.myunix.org

날짜 형식 구성 sarg -d [e=유럽 -> dd/mm/aa], u=미국 -> mm/dd/aa]

사용자 및 IP에 대한 보고서 sarg -i wrochal 10.100.0.101

시간에 대한 보고서 sarg -t [HH, HH:MM, HH:MM:SS]

사용자에 대한 보고서 sarg -u wrochal

이제 원하는 기술의 보고서를 생성할 수 있으며, 많은 행운을 빕니다.

사이트, 문자열 및 사용자를 제외한 보고서

많은 사람들이 특정 사이트, 사용자 및 문자열을 제외한 보고서를 생성하는 방법을 묻습니다. 이 리소스를 사용하는 방법을 알아보십시오:

exclude.hosts - 여기 각 줄에는 보고서에 표시되지 않을 도메인/URL이 포함됩니다. 예를 들어, Squid를 통해 지나가지만 인터넷 대역폭을 사용하지 않는 인트라넷의 다운로드 주소를 추가하는 데 유용합니다.

sarg.conf 파일에 추가합니다: exclude_hosts /etc/sarg/exclude.hosts

exclude.strings - 로그 파일의 어떤 줄이 이 파일의 문자열 중 하나를 포함하면 (각 문자열은 한 줄), 해당 로그 줄은 보고서에서 무시됩니다. 이를 통해 보고서를 필터링할 수 있습니다.

sarg.conf 파일에 추가합니다: exclude_string /etc/sarg/exclude.strings

exclude.users - 이 파일에 있는 사용자 (줄로 구분됨)는 보고서에 포함되지 않습니다.

sarg.conf 파일에 추가합니다: exclude_users /etc/sarg/exclude.users

webalizer로 모니터링

Webalizer는 Sarg와는 다른 방식으로 작동하며, 총계를 포함한 보고서를 생성하여 대역폭, 처리량 등을 더 강조합니다. 이는 서로 다른 기간 동안의 네트워크 사용을 비교하는 데 훌륭한 옵션입니다.

그러나 사용자 접근 모니터링을 위해서는 Sarg가 가장 좋은 대안이며, Webalizer는 Squid 및 Apache 서비스 기반으로 보고서를 생성합니다.

webalizer 설치

다운로드합니다: http://www.mrunix.net/webalizer/download.html

다운로드 후 압축을 풀고 설치합니다: # ./configure

고급 옵션:

언어 정의와 함께 설치하면 지원되는 lang 디렉토리를 확인합니다.

–with-language=

–with-language=french

주요 매개변수

어떤 로그 파일이 보고서 생성을 위한 필요한 데이터를 포함하는지.

LogFile /var/log/squid/access.log

어떤 유형의 서비스에 대한 보고서가 생성될 것인지.

LogType squid

보고서가 생성될 디렉토리

OutputDir /home/webalizer/

Calamaris

Calamaris는 Perl로 작성된 소프트웨어로, 여러 프록시 서버의 로그 파일을 사용하여 인터넷 사용에 대한 상세 보고서를 생성합니다. NetCache, Inktomi Traffic Server, Oops! 프록시 서버, Novell 인터넷 캐싱 시스템, Compaq Tasksmart, Netscape/iplanet 웹 프록시 서버 및 명확히 Squid와 같은 서버의 로그 파일을 사용합니다. 생성된 보고서는 프레젠테이션이 간단하지만 로그 파일에서 추출된 세부 정보가 매우 풍부합니다. HTML 형식이나 텍스트 형식으로 생성되어 이메일로 전송될 수 있습니다.

이 소프트웨어의 사용은 매우 간단합니다. 먼저 http://cord.de/tools/squid/calamaris/Welcome.html.en에서 최신 버전을 다운로드하고, 원하는 디렉토리에 압축을 풉니다. 이 경우 /usr/local/calamaris에 압축을 풉니다. 그 후, 이미 사용할 수 있습니다. 아래는 Squid 로그 보고서를 생성하기 위한 간단한 예입니다. # /usr/local/calamaris/calamaris -a -F html /var/log/squid/access.log >/srv/www/default/html/calamaris/index.html

위 명령은 로그 분석에 대한 훌륭한 보고서를 생성하는 데 충분합니다. 이 경우 - 옵션을 사용하여 Calamaris에 모든 보고서를 생성하도록 지시하며, -F HTML은 우리가 원하는 보고서 형식을 지정합니다. /var/log/squid/access.log는 Squid 로그 파일이 위치한 곳이며, /srv/www/default/html/calamaris/index.html은 생성된 보고서의 위치입니다. 이 경우 Apache 트리의 폴더로, 네트워크의 어떤 스테이션에서도 분석할 수 있습니다.

그림 1에서 생성된 보고서 유형을 확인할 수 있으며, 그림 2에서는 이러한 보고서 중 하나를 보여줍니다. 이 샘플 정보는 요청에 대한 정보를 확장자별로 정리합니다.


그림 01


그림 02

이것은 Calamaris를 cron으로 실행할 수 있도록 스크립트를 개발하는 것이 이상적이지만, 이는 각자의 필요에 따라 다르므로 여기서는 다루지 않겠습니다. 소프트웨어 자체에서 이를 수행하는 방법에 대한 몇 가지 예를 제공합니다.

Squid-Graph

Squid-Graph는 Calamaris와 마찬가지로 Perl로 작성되었지만, 이름에서 알 수 있듯이 프록시 서버 사용의 그래프 생성기입니다. 이는 접근 및 데이터 전송에 대한 더 간결한 정보를 제공하며, 따라서 또 다른 흥미로운 대안이 될 수 있으며 관리 도구 목록을 보완할 수 있습니다.

http://squid-graph.securlogic.com/files/stable/squid-graph-3.1.tar.gz에서 다운로드할 수 있으며, 현재 이 시점에서 사용 가능한 최신 버전입니다. Perl GD 모듈이 설치되어 있어야 한다는 점을 기억하는 것이 중요합니다. 이는 분명히 좋아하는 배포판의 CD에 있어야 합니다.

설치 과정은 매우 간단합니다. 선택한 디렉토리에 파일을 압축 해제하면 되며, 아무 것도 컴파일할 필요가 없습니다. 이 경우 /usr/local/squid-graph에 설치합니다. 아래 명령을 보여줍니다. **# tar xzvf squid-graph-3.1.tar.gz -C /usr/local/

그래프 생성을 위한 명령 실행은 생성할 그래프에 따라 다르지만, 아래와 같이 누적 형태로 그래프를 생성하는 좋은 방법입니다. #/usr/local/squid-graph/bin/squid-graph -c -n -o=/srv/www/default/html/squid-graph/ –title=”프록시 사용 그래프” < /var/log/squid/access.log

위 명령에서 -c 옵션을 사용하여 누적 그래프를 생성하고, 즉 접근 및 TCP 전송에 대한 두 개의 그래프와 접근 및 UDP 전송에 대한 두 개의 그래프를 생성합니다. -n 옵션은 Squid 로그 처리 정보를 화면에 표시하지 않도록 하며, -o=/srv/www/default/html/squid-graph/는 파일이 기록될 위치(HTML 및 이미지)를 나타냅니다. -title=”프록시 사용 그래프”는 그래프가 표시되는 HTML 페이지의 제목을 개인화하며, 마지막으로 Squid 로그 파일이 있습니다.

특정 URL에 대한 그래프를 생성하거나 특정 사용자에 대한 그래프를 생성하는 등의 흥미로운 옵션이 있으며, 아래 명령 3을 사용하여 확인할 수 있습니다: # cat /var/log/squid/access.log | grep “ginux.comp.ufla.br” | /usr/local/squid-graph/bin/squid-graph -c -n / -o=/srv/www/default/html/squid-graph/ –title=”프록시 사용 그래프”

특정 사용자의 접근 그래프를 생성하려면 위의 grep 명령을 “grep ‘192.168.16.3’”로 대체하면 됩니다. 192.168.16.3이 해당 사용자의 IP라고 가정합니다. 또한 특정 유형의 파일에 대한 그래프를 생성할 때 확장자를 매개변수로 사용하여 같은 리소스를 사용할 수 있습니다. 예를 들어 “grep ‘.mp3’”는 좋은 시작점입니다. 이미 알 수 있듯이, Squid-Graph를 다른 Linux 명령과 결합하여 무한한 옵션을 가질 수 있으며, 여기서 다루지 않은 다른 흥미로운 옵션도 존재합니다.


저자: William Rocha - [email protected]
번역: Tatiana Freitas - [email protected]

참고 문헌:

Hugo Cisneiros, hugo_arroba_devin_ponto_com_ponto_br - http://www.devin.com.br/eitch/
책 Squid - 리눅스를 위한 프록시 구성 (Antonio Marcelo)
Webalizer - http://www.mrunix.net/webalizer/
Sarg - http://sarg.sourceforge.net/
SQUID 사용 및 구성 (파트 1 및 파트 2) - Antonio Claudio Sales Pinheiro - [email protected]

Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.