Wireshark를 이용해 원격 호스트에서 패킷을 덤프하는 게 쉬워졌다. 지금 내가 쓰고 있는 버전은 2.2.0인데, 아예 네트워크 인터페이스 수준에서 SSH를 이용한 원격 덤프를 지원한다.

다만, 패킷 덤프를 실행할 시스템에 패킷 덤프를 실행할 수 있는 권한을 가진 계정이 있어야 가능하다(권한 설정 방법은 Wireshark Wiki에서 CapturePrivileges을 참고).

wireshark-ssh-remote-capture-interface

SSH remote capture: ssh를 클릭하면 아래와 같은 창이 나오는데, 연결에 필요한 값을 지정하고 Start를 클릭하는 것으로 끝. 정말 간단해졌다.

wireshark-ssh-remote-capture-options

여태껏 이걸 모르고 살았다니! 명령어를 사용해야 했다면 꽤 복잡했을 것이다: How can I sniff the traffic of remote machine with wireshark?

UPDATE1. Windows 버전은 설치할 때 SSHdump 컴포넌트를 선택해야 한다(아래 그림 참고). 근데 왜 macOS 버전만 2.2.0일까?

wireshark-sshdump-component-in-windows

PS 1. Preferences > Protocols는 정말 새로운 발견이다. SNMPv3도 복호화해서 볼 수 있고, 서버 인증서만 있으면 SSL(TLS)이나 DTLS도 복호화해서 볼 수 있구나!

PS 2. Remote capture filter에 SSH로 접근할 포트는 제외하도록 반드시 지정해둘 것. 기본값으로 22번 포트는 제외되어 있지만, 나처럼 포트를 변경해서 쓴다면 반드시 추가해줘야 한다.