Mail Packet Capture
메일 통신 패킷 캡처 · 기본 분석
확인할 메일 통신을 선택하고 Linux tcpdump 명령을 생성한 뒤 터미널 출력 또는 PCAP을 읽는 방법을 확인합니다. 이 페이지가 직접 캡처하지는 않습니다.
캡처 흐름 · 지원 범위 보기
통신 선택 → 포트·인터페이스·서버 설정 → 명령 생성 → Linux에서 실행 → 터미널 요약 또는 PCAP 확인 → 다음 진단 도구로 이동합니다. 기본 해석을 안내하며, 페이지가 직접 캡처하거나 패킷 파일을 분석하지는 않습니다.
브라우저에서 처리합니다. 입력을 업로드하거나 저장하지 않습니다.
지원 범위
명령 텍스트만 생성합니다. 이 페이지에서 실행하거나 연결하지 않습니다.
캡처에는 관리자·캡처 권한이 필요할 수 있습니다. 관리 권한이 있는 시스템에서 실행하며 sudo는 자동으로 붙이지 않습니다. 100개 패킷 또는 Ctrl+C로 종료합니다. PCAP에는 민감한 메일 데이터가 포함될 수 있으므로 취급에 유의하세요.
결과
사용 방법
- 확인하려는 통신이 발생하는 Linux 시스템에서 터미널을 엽니다. tcpdump가 설치되어 있어야 합니다.
- 생성된 명령을 실행합니다. 환경에 따라 관리자 또는 캡처 권한이 필요합니다.
- 확인하려는 SMTP/IMAP 동작을 실행합니다.
- 패킷 요약이 터미널에 표시되거나 PCAP 파일에 저장됩니다.
- Ctrl+C로 종료합니다. 100개 패킷 수집 후에도 자동 종료합니다 (-c 100).
-i는 인터페이스를 지정하고 -nn은 주소·포트를 숫자로 표시합니다. 캡처 지점에서 관찰 가능한 통신만 볼 수 있습니다. 아무것도 나오지 않으면 인터페이스·필터와 테스트 통신 발생 여부를 확인하세요.
저장한 PCAP 확인
-w mail-capture.pcap은 터미널 요약 대신 패킷 데이터를 파일에 기록합니다. -s 0은 tcpdump의 기본 snapshot 길이를 사용합니다. 터미널의 현재 디렉터리에 저장되며 같은 파일명으로 다시 실행하면 덮어씁니다. 캡처를 종료한 뒤 여세요.
Wireshark에서 File → Open → mail-capture.pcap을 열고 아래 내용을 Display Filter에 붙여넣으세요. 표시만 필터링하며 이미 저장된 패킷은 변경하지 않습니다.
포트별 필터 예제
tcp.port == 25 tcp.port == 465 tcp.port == 587 tcp.port == 143 tcp.port == 993
smtp / imap 필터는 Wireshark가 해당 프로토콜을 인식할 때만 유용합니다. TLS 통신이나 사용자 지정 포트는 빠질 수 있으므로 tcp.port부터 확인하세요.
Wireshark TCP Display Filter 안내SSL/TLS(465/993) 또는 STARTTLS 이후에는 메일 명령과 본문이 평문으로 보이지 않습니다. 그래도 상대 IP·포트, TCP 연결·응답·Reset, 패킷 송수신과 종료 시점을 확인하는 데 도움이 됩니다.
tcpdump 출력 · TCP Flag 읽는 방법
192.168.0.10.50000 > 203.0.113.10.587: Flags [S]
이 예제에서 192.168.0.10:50000은 연결을 요청하는 클라이언트, 203.0.113.10:587은 SMTP 서버입니다. >는 왼쪽에서 오른쪽으로 전송됨을 뜻합니다. 서버 응답에서는 방향이 반대입니다.
Flags [S]- SYN: TCP 연결 시작 요청
Flags [S.]- SYN/ACK: 연결 시작 요청에 대한 응답
Flags [.]- ACK: 데이터 수신 확인
Flags [P.]- PSH/ACK: 애플리케이션 데이터에서 흔히 보임 · length도 확인
Flags [F.]- FIN/ACK: 연결 종료 과정
Flags [R]- RST: 연결 Reset ([R.]로 표시되기도 함)
Flag 하나로 장애 원인을 확정하지 않습니다. 양방향 패킷과 시간을 함께 보세요. 반복 SYN에 응답이 없으면 경로·필터·서버를 확인할 단서가 되지만 원인 확정은 아닙니다.
평문 SMTP 세션에서 확인할 흐름
이 도구의 터미널 모드는 패킷 요약을 표시하며 메일 payload는 출력하지 않습니다. 평문 연결의 대화를 보려면 PCAP으로 저장하고 Wireshark의 Follow → TCP Stream에서 확인하세요.
TCP → EHLO → 250 → MAIL FROM → RCPT TO → DATA → 354 → 메일 데이터 → . → 250 → QUIT
- EHLO
- 클라이언트를 알리고 서버의 지원 기능을 확인
- 250
- 요청한 동작을 정상 처리했다는 응답
- MAIL FROM / RCPT TO
- Envelope 발신자 / 수신자
- DATA
- 헤더·본문 전송을 요청하고 354 응답을 기다림
- QUIT
- SMTP 세션 종료
왜 메일 내용이 안 보이나요? TLS · STARTTLS
465/993은 연결 즉시 TLS를 사용합니다. 587/143에서 STARTTLS를 사용하면 초기 SMTP EHLO 또는 IMAP CAPABILITY는 평문일 수 있고, TLS 협상 이후 명령·데이터가 암호화됩니다. 포트 번호만으로 암호화 여부를 확정하지 말고 실제 교환을 확인하세요.
초기 평문 기능 확인 → STARTTLS → TLS 협상 → 암호화된 SMTP/IMAP
캡처된 TLS 협상을 Wireshark가 인식하면 TLS 시작 여부를 확인하는 데 도움이 됩니다. 패킷 요약이나 협상만으로 인증서 검증·메일 전달 성공을 확정할 수는 없습니다. OpenSSL 또는 프로토콜 응답을 함께 확인하세요.