Featured image of post Wireshark Over SSH in Docker

Wireshark Over SSH in Docker

Wireshark Over SSH in Docker

分成兩個部份,一個是把封包從 docker container 裡面弄出來,再來是在本地的 wireshark 抓到遠端的封包

把封包弄出 docker container

使用 nicolaka/netshoot 這個 docker image,把他跟目標 container 放在同一個 network 下,例如以下會把封包全部丟進 /data/nginx.pcap 這個檔案裡

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
version: "3.6"
services:
  tcpdump:
    image: nicolaka/netshoot
    depends_on:
      - nginx
    command: tcpdump -i eth0 -w /data/nginx.pcap
    network_mode: service:nginx
    volumes:
      - $PWD/data:/data

  nginx:
    image: nginx:alpine
    ports:
      - 80:80

本地的 wireshark 抓到遠端的封包

我們有了 /data/nginx.pcap 之後,就可以用 ssh 把檔案印出來,然後吐給 wireshark

1
ssh ssh_host "cat path/to/nginx.pcap" | wireshark -k -i -

參考資料

好想養貓阿~~
使用 Hugo 建立
主題 StackJimmy 設計