원격 호스트로 들어오고 나가는 트래픽을 모니터링하고 기록하려면 무엇을 사용할 수 있습니까?

원격 호스트로 들어오고 나가는 트래픽을 모니터링하고 기록하려면 무엇을 사용할 수 있습니까?

저는 웹 서버(VPS에서 Debian Squeeze)를 운영하고 있는데, 호스팅 회사에서 제공한 그래프를 보면 나가는 트래픽에 비해 서버로 들어오는 트래픽이 약 2배나 많은 것으로 일관되게 나타납니다. 나는 이것 때문에 약간 혼란스럽기 때문에 업로드/다운로드 수치를 확인할 뿐만 아니라 관련된 원격 호스트별로 이를 분할하는 일종의 로깅 유틸리티를 시스템에서 실행하고 싶습니다. 들어오는 트래픽의 대부분은 하나의 특정 소스에서 발생합니다.

나가는 트래픽의 대부분은 Apache를 통과하지만 들어오는 트래픽은 대부분 Apache를 통하거나 다른 스크립트 및 크론 작업에 의해 지배될 수 있으므로 Apache 내의 트래픽보다는 인터페이스 수준에서 트래픽을 모니터링하는 도구를 선호합니다. .

이상적으로는 며칠 동안 실행 상태를 유지한 후 돌아와서 들어오고 나가는 트래픽 모두에 대해 "원격 호스트당 바이트 수"의 출력을 얻을 수 있는 도구를 원합니다.

표준 Linux 도구와 약간의 구성(만약 그렇다면 어떻게?) 또는 전문 프로그램(만약 그렇다면 어떤 프로그램)을 사용하여 이것이 가능합니까?

답변1

ntop아마도 이 작업을 수행하는 가장 좋은 솔루션일 것입니다. 장기간 실행하고 원하는 것을 정확하게 포착하도록 설계되었습니다.
가장 많이 사용되는 원격 대상, 송수신되는 트래픽의 양, 사용 중인 프로토콜 및 포트 등을 보여줄 수 있습니다. 라우터에서 실행하면 소스 호스트에 대해서도 동일한 작업을 수행하여 확인할 수 있습니다. 로컬 클라이언트에서도 동일한 통계가 표시됩니다.
그런 다음 웹 GUI를 사용하여 이 정보를 탐색하고 표시합니다.

ntop

답변2

루트가 있으면 tcpdump모든 것을 사용하고 잡을 수 있습니다. 그런 다음 당겨서 넣으시면 됩니다와이어샤크마음껏 분석해 보세요.

$ sudo tcpdump -i <interface> -w mycapture.tcpdump  

... 그리고 충분히 했다면 Ctrl-C를 누르세요. screen분리 등이 필요한 경우 세션 에서 실행하십시오 .

기본적으로 각 패킷의 첫 번째 부분만 캡처하지만 대부분 원본 분석에 관심이 있으므로 괜찮습니다.tcpdump에 대한 수많은 다른 옵션모험심이 느껴진다면.

편집하다: 실제로 Wireshark에 로드되면 메뉴 옵션만 사용할 수 있습니다.통계|IP 주소...개수/비율/퍼센트별로 트래픽에 대한 멋진 요약을 얻으세요.

여기에 이미지 설명을 입력하세요

답변3

보다 고급 측정항목의 경우 다음과 같은 것을 사용할 수 있습니다.모니터릭스가장 일반적인 서비스에 대한 모듈이 있으며 간단합니다.

apt-get install monitorix

또한 당신은선인장완전한 GUI RDDtool이지만 실시간은 아닙니다.

그리고 제게 있어서 상위 1위는 다중 구성 가능입니다.그라파나. 설치 및 구성이 조금 더 어렵지만 완벽합니다. 모든 것을 실시간으로 상세하게 측정할 수 있습니다. JVM, 흑연, 속삭임 등 몇 가지 종속성이 필요하지만 JSON에 대한 지식이 필요하지만 매력적으로 작동합니다. 정말 추천합니다!

귀하의 경우에 적합한 구성은 다음과 같습니다.

collectd + graphite + whisper + grafana

실제로 Grafana는 사무실에서의 내 삶을 변화시켰습니다.

답변4

확신하는 ;)

https://github.com/graphite-project/whisper

또한 모든 것을 연결하는 방법에 대한 간단한 방법을 원한다면: https://linuxboss.wordpress.com/2015/12/03/graphite-grafana/

관련 정보