greater
过滤器按数据包的总长度过滤数据包。是否可以按有效载荷的长度进行过滤?我知道这可以作为显示过滤器,但我想知道是否可以在捕获过滤器中执行此操作。
rawat
Asked:
2019-04-08 20:31:42 +0800 CST
我正在尝试通过 Windows 机器上的 jumphost 捕获远程主机流量并显示在 Wireshark 中。
当使用 PUTTY GUI 并配置如下
- 为跳转主机创建并保存 SSH 会话(bastion-host)
- 连接 --> 数据 --> 配置自动登录用户名
- Connection --> SSH --> Auth --> jumphost private Key file for authentication configured
- 创建并保存另一个 SSH 会话 ( target-host ),其中将发生流量捕获
- 连接 --> 数据 --> 配置自动登录用户名
- 连接 --> 代理 --> 配置为代理和端口 22 的代理主机名
- 连接 --> 代理 --> Telnet 命令或本地代理命令为
plink "bastion-host" -agent -nc %host:%port
- 连接 --> SSH --> Remote command as
"sudo tcpdump -i ens5 -w - not port 22"
- Connection --> SSH --> Auth --> target-host private Key file for authentication configured
- 加载并打开保存的会话(目标主机)
结果是
- 我可以看到流量被捕获并显示在 Windows PUTTY 终端上。
- 而“tcpdump”实际上是在目标主机上执行的。
在这个阶段,我不知道如何将其重定向到 Wireshark。
接下来,这就是我想要实现的目标,通过命令行执行上面的设置。下面是完整的命令
plink.exe -proxycmd "putty.exe -ssh <username>@<jumphost-address> -i <private-key-file> -agent -nc <target-host>:22" -ssh <target-username>@<target-host> -i <target-private-key> "sudo tcpdump -ni ens5 -s 0 -w - not port 22" | "C:\Program Files\Wireshark\Wireshark.exe" -k -i -
Wireshark 弹出但没有捕获流量,因为我看不到“tcpdump”命令在 .
为了确认 plink 有效,我在可直接访问的主机上测试了类似的命令,一切正常。Wireshark 弹出实时流量捕获。
plink.exe -ssh -pw <password> <username>@<my-host> "/usr/sbin/tcpdump -ni ens192 -s 0 -w - not port 22" | "C:\Program Files\Wireshark\Wireshark.exe" -k -i -
所以,我认为我使用 plink 命令的方式有问题。感谢有人可以帮助我纠正它。
谢谢
操作系统:Windows 7 企业版,64 位
PUTTY:0.70 版
Georgi Stoyanov
Asked:
2019-04-03 00:03:44 +0800 CST
我希望tcpdump
通过数据包长度缩小我的范围。我知道我可以`| grep 但我想知道我是否可以将这个特定的数据包长度作为“tcpdump”中的一个选项传递。我正在尝试编写一个脚本,使用以下命令向我展示网络上所有存在的 MPEG-TS 多播:
sudo tcpdump -c 1000 -ti <network_interface> multicast | grep 1316 | sort | uniq
所以这个命令有效并准确地给出了我想要的输出,但我想我可以通过在tcpdump
命令中传递长度来简化它,比如:
sudo tcpdump -c 1000 -ti <network_interface> multicast and length 1316 | sort | uniq