it-swarm-ko.tech

들어오는 http 요청을 모니터링하는 방법

80 포트로 들어오는 HTTP 요청을 어떻게 모니터링 할 수 있습니까? DynDNSNginx를 사용하여 로컬 컴퓨터에서 웹 호스팅을 설정했습니다. 매일 서버에서 얼마나 많은 요청을하는지 알고 싶었습니다.

현재이 명령을 사용하고 있습니다 :

netstat -an | grep 80
32
user7044

tcpdump를 사용할 수 있습니다.

# tcpdump filter for HTTP GET 
Sudo tcpdump -s 0 -A 'tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x47455420'

# tcpdump filter for HTTP POST 
Sudo tcpdump -s 0 -A 'tcp dst port 80 and (tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x504f5354)'

tshark를 사용하는 솔루션은 다음을 참조하십시오.

https://serverfault.com/questions/84750/monitoring-http-traffic-using-tcpdump

44
nad

tcpflow을 사용하여 AWS 인스턴스에서 들어오는 요청을 확인했습니다. 요청을 매일 집계하는 방법이있을 수 있습니다.

STEP 1-설치

# yum install --nogpgcheck http://pkgs.repoforge.org/tcpflow/tcpflow-0.21-1.2.el6.rf.x86_64.rpm

STEP 2-포트 80에서 GET/POST 요청 추적

# tcpflow -p -c -i eth0 port 80 | grep -oE '(GET|POST|HEAD) .* HTTP/1.[01]|Host: .*'

참고

https://github.com/simsong/tcpflow

7
prayagupd

서버에 대한 로그 파일이 설정되어 있습니까? 그렇다면 정확한보고를 위해 AwStats를 설치하고 로그 파일을 실행하는 것이 좋습니다.

모든 들어오는/나가는 트래픽 만 모니터링하려면 WireShark를 사용할 수 있습니다.

5
djsumdog

로그 파일의 꼬리를 지정할 수도 있습니다.

tail -f /path/to/access_log

-f 매개 변수는 새 항목이 로그에 기록 될 때 tail이 화면을 계속 업데이트하도록합니다.

4
Dave

이것을 실행

while true
do
echo -----`date '+%r'` -----:
netstat -ant | grep :8080 | awk '{print $6}' | sort | uniq -c | sort -n
echo httpd processes: [`ps aux | grep httpd | wc -l`]
echo .
sleep 2
done

2 초마다 8080 포트의 트래픽을 모니터링합니다.

0
vsingh