이전 기사에서는 Linux 네트워크를 모니터링하거나 관리하는 20 개의 Netstat 명령을 보았습니다. 이것은 tcpdump라는 또 다른 지속적인 패킷 스니퍼 도구입니다. 여기에서는 tcpdump를 설치하는 방법을 보여주고 몇 가지 유용한 명령을 실용적인 예제와 함께 논의하고 다룹니다.
tcpdump는 가장 강력하고 널리 사용되는 명령 줄 패킷 스니퍼 또는 사용되는 패키지 분석기 도구입니다. 특정 인터페이스에서 네트워크를 통해 수신 또는 전송 된 TCP / IP 패킷을 캡처하거나 필터링합니다. 대부분의 Linux / Unix 기반 운영 체제에서 사용할 수 있습니다. tcpdump는 또한 향후 분석을 위해 캡처 된 패킷을 파일에 저장하는 옵션을 제공합니다. 파일을 pcap 형식으로 저장하며 tcpdump 명령이나 tcpdump pcap 형식 파일을 읽는 Wireshark (Network Protocol Analyzier)라는 오픈 소스 GUI 기반 도구로 볼 수 있습니다.
Linux에서 tcpdump를 설치하는 방법
많은 Linux 배포판에는 이미 tcpdump 도구가 포함되어 있습니다. 시스템에없는 경우 다음 Yum 명령을 사용하여 설치할 수 있습니다.
# yum install tcpdump
시스템에 tcpdump 도구가 설치되면 해당 예제와 함께 다음 명령을 계속 찾아 볼 수 있습니다.
1. 특정 인터페이스에서 패킷 캡처
명령 화면은 사용자가 인터럽트 할 때까지 위로 스크롤하고 tcpdump 명령을 실행하면 모든 인터페이스에서 캡처하지만 -i 스위치를 사용하면 원하는 인터페이스에서만 캡처합니다.
2. N 개의 패킷 만 캡처
tcpdump 명령을 실행하면 취소 버튼을 누를 때까지 지정된 인터페이스에 대한 모든 패킷을 캡처합니다. 그러나 -c 옵션을 사용하면 지정된 수의 패킷을 캡처 할 수 있습니다. 아래 예제는 6 개의 패킷 만 캡처합니다.
3. 캡처 된 패킷을 ASCII로 인쇄
옵션 -A를 사용하는 아래 tcpdump 명령은 패키지를 ASCII 형식으로 표시합니다. 문자 인코딩 체계 형식입니다.
4. 사용 가능한 인터페이스 표시
시스템에서 사용 가능한 인터페이스 수를 나열하려면 -D 옵션과 함께 다음 명령을 실행합니다.
5. 캡처 된 패킷을 HEX 및 ASCII로 표시
옵션 -XX를 사용하는 다음 명령은 HEX 및 ASCII 형식의 링크 수준 헤더를 포함하여 각 패킷의 데이터를 캡처합니다.
6. 파일에 패킷 캡처 및 저장
우리가 말했듯이 tcpdump에는 파일을 캡처하고 .pcap 형식으로 저장하는 기능이 있습니다.이 작업을 수행하려면 -w 옵션을 사용하여 명령을 실행하면됩니다.
# tcpdump -w 0001.pcap -i eth0tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes4 packets captured4 packets received by filter0 packets dropped by kernel
7. 캡처 된 패킷 파일 읽기
캡처 된 패킷 0001.pcap 파일을 읽고 분석하려면 다음과 같이 -r 옵션과 함께 명령을 사용하십시오.
8. IP 주소 패킷 캡처
특정 인터페이스에 대한 패킷을 캡처하려면 -n 옵션과 함께 다음 명령을 실행합니다.
9. TCP 패킷 만 캡처합니다.
TCP 포트를 기반으로 패킷을 캡처하려면 tcp 옵션을 사용하여 다음 명령을 실행합니다.
10. 특정 포트에서 패킷 캡처
특정 포트 22에 대한 패킷을 캡처하려는 경우 아래와 같이 포트 번호 22를 지정하여 아래 명령을 실행합니다.
11. 소스 IP에서 패킷 캡처
소스 IP에서 패킷을 캡처하려면 192.168.0.2에 대한 패킷을 캡처하려면 다음 명령을 사용하십시오.
12. 대상 IP에서 패킷 캡처
50.116.66.139에 대한 패킷을 캡처하려는 경우 대상 IP에서 패킷을 캡처하려면 다음 명령을 사용합니다.