패킷을 캡처하는 방법에는 여러가지 방법이 있습니다.

그중 wireshark를 사용해서 많이 사용합니다.

wireshark는 gui환경에서 동작하는데 tshark라는 gui 없는 버전도 있습니다.



이 포스팅에서는 리눅스에서 tshark를 사용하여 패킷 캡쳐하는 방법을 알아보겠습니다.


제가 현재 사용하는 우분투 기준으로 설명을 하겠습니다.


1. tshark 설치하기

  - ubuntu에는 wireshark와 tshark를 별도로 설치해야합니다.


$ sudo apt-get install tshark


2. 사용하기


$ sudo tshark -i eth0 -w /home/yulgang/pcap/eth0.pcap -b filesize:102400 -a files:50 -a duration:3000 -n


설명 : eth0 인터페이스에 /home/yulgang/pcap/eth0.pcap 파일에 파일사이즈 100mb마다 다른파일을 생성하면서

파일갯수가 50개가 넘거나 동작한지 시간이 3000초가 넘어가면 패킷캡쳐를 멈추도록 세팅한다.


간단한 예시와 함께 사용방법을 알아봤습니다. 

tshark의 상세한 옵션은 https://www.wireshark.org/docs/man-pages/tshark.html  에서 더 확인해보시면 됩니다.



추가

특정시간에 해당 캡처를 백그라운드로 실행하고싶을때


$ vi packet.sh

tshark -i eth0 -w /home/yulgang/pcap/eth0.pcap -b filesize:102400 -a files:50 -a duration:3000 -n


$ chmod 755 packet.sh


$ su

$ crontab -e

아래를 맨아래 추가합니다.

1 1 * * * nohup /home/yulgang/sysstat/packetcap.sh > /dev/hull 2>&1 

설명 : 매일 1시 1분에 해당 스크립트를 백그라운드로 실행한다.


% root권한으로 실행해야합니다.

  


+ Recent posts