Wireshark SSH 远程抓包配置指南(以 UniFi Dream Router 为例)

在本地 Wireshark 上直接捕获远程主机(如路由器、服务器)的流量,是网络调试中非常实用的技巧。本文以 UniFi Dream Router 7 为远程目标,完整演示从生成密钥到 Wireshark 开始抓包的整个配置流程。


一、准备工作

  • 远程主机(本例为 UDR7)已开启 SSH 服务,且本地电脑能与它网络互通。

  • 本地电脑安装 Wireshark(建议 4.0 以上版本)。

  • 远程主机已安装 tcpdump(UDR7 默认自带,若没有可自行安装)。


二、生成兼容 Wireshark 的 SSH 密钥对

Wireshark 的 SSH 远程捕获功能对私钥格式有特定要求,需要 传统 PEM 格式 (以 -----BEGIN RSA PRIVATE KEY----- 开头)。

在 Windows PowerShell 中执行:

sql 复制代码
powershell

ssh-keygen -t rsa -b 4096 -m PEM -f C:\Users\你的用户名\.ssh\wireshark_rsa

参数说明:

  • -t rsa -b 4096:生成 4096 位的 RSA 密钥。

  • -m PEM:关键参数,强制输出 Wireshark 可识别的格式。

  • -f:指定保存路径和文件名。

执行后,系统会询问是否设置密码短语(passphrase)。建议直接按两次回车(留空),避免 Wireshark 加载时出现交互问题。

生成完成后,在 C:\Users\你的用户名\.ssh\ 目录下会得到两个文件:

  • wireshark_rsa ------ 私钥(供 Wireshark 使用)

  • wireshark_rsa.pub ------ 公钥(需部署到远程主机)


三、将公钥部署到远程主机

3.1 常规 OpenSSH 服务器

若远程主机使用 OpenSSH,将公钥内容追加到 ~/.ssh/authorized_keys 即可:

sql 复制代码
powershell

type C:\Users\你的用户名\.ssh\wireshark_rsa.pub | ssh root@远程IP "cat >> ~/.ssh/authorized_keys"

然后设置正确权限(可在登录后执行):

php 复制代码
bash

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

3.2 适配 Dropbear(如 Ubiquiti 设备)

UniFi 系列路由器使用 Dropbear SSH 服务,其授权密钥文件路径为 /etc/dropbear/authorized_keys。手动添加方法如下:

  1. SSH 登录到路由器(用密码):

    php 复制代码
    bash
    
    ssh root@192.168.1.1
  2. 创建目录并追加公钥:

    php 复制代码
    bash
    
    mkdir -p /etc/dropbear
    echo "公钥内容(即 wireshark_rsa.pub 文件中的全部字符)" >> /etc/dropbear/authorized_keys

四、验证免密登录是否生效

在本地 PowerShell 中测试:

php 复制代码
powershell

ssh -i C:\Users\你的用户名\.ssh\wireshark_rsa root@远程IP "echo 连接成功"

如果输出 连接成功,表示密钥认证已配置正确。


五、在 Wireshark 中配置远程捕获

  1. 打开 Wireshark,点击菜单栏 捕获(Capture) → 选项(Options)。

  2. 在接口列表中找到 SSH remote capture ,点击其左侧的 ⚙️ 齿轮图标 进入设置。

  3. 填写以下信息:

    • 主机 (Host) :远程 IP 地址(如 192.168.1.1)

    • 端口 (Port) :22(若 SSH 端口非标准则相应修改)

    • 用户名 (Username) :root(或您的登录用户名)

    • 认证方式 :选择 Public Key

    • 私钥文件 :点击浏览,选择 C:\Users\你的用户名\.ssh\wireshark_rsa(不带 .pub 后缀)

    • 密码短语 (Passphrase):留空(因为生成时未设置)

  4. 切换到顶部的 捕获 (Capture) 选项卡,在 远程接口 (Remote interface) 输入框中填写要抓包的网卡名称。若不确定,可先在远程主机执行 ip a 查看,常见接口如 br0(桥接)、eth0 等。

  5. 点击 确认 保存配置。


六、开始抓包

返回 Wireshark 主界面,双击刚配置好的 SSH remote capture 接口,或选中它并点击左上角的蓝色鲨鱼鳍按钮,即可开始实时捕获远程主机的网络流量。

抓包过程中,您可以在 Wireshark 的过滤栏设置显示过滤器(如 host 192.168.1.100),以聚焦于特定流量。


七、关键注意事项

  • 私钥格式 :务必确保文件首行为 -----BEGIN RSA PRIVATE KEY-----,否则 Wireshark 无法加载。

  • 路径与权限 :远程主机上 .ssh 目录权限应为 700,authorized_keys 为 600;Dropbear 场景则需关注 /etc/dropbear/authorized_keys 权限。

  • 抓包接口选择 :远程主机的接口名可能不同于本地,请提前确认(ip a 或 tcpdump -D)。

  • 网络连通性:配置前先用普通 SSH 客户端测试能否正常连接,确保防火墙未阻断 22 端口。


八、结语

通过上述步骤,您可以快速在 Wireshark 中建立与远程主机的 SSH 连接,并直接捕获其网络接口的流量,无需在远程端手动运行 tcpdump 再传输文件,显著提升调试效率。无论是家庭网关、云服务器还是嵌入式设备,这一方法均适用。

希望这份指南能为您的网络分析工作带来便利。如有其他使用场景或扩展需求,也欢迎进一步探索 Wireshark 的强大功能。

相关推荐
chengpei1473 小时前
硬改斐讯K2路由器32M Flash编译适配immortalwrt固件
嵌入式硬件·智能路由器
updayday8546 小时前
供应商补交资质文件时,采购难以核对缺件和新版本 - Ping64 文件收集
大数据·网络·数据库·安全·智能路由器
华允物联-HUAIOT7 小时前
DTU和工业路由器有什么区别?
网络·智能路由器
wdfk_prog1 天前
LWIP教程 15:IPv4 与 IPv6——从网络层工作原理到嵌入式工程取舍
运维·开发语言·网络·笔记·学习·智能路由器·ip
烟雨醉沉浮1 天前
VLAN 网络划分与安全管控
网络·安全·智能路由器
liqingdi4371 天前
小米路由器4刷老毛子固件
智能路由器
星恒讯工业路由器2 天前
从5G-A到6G:工业通信网络的技术演进与产业落地
网络·物联网·5g·智能路由器·工业路由器·工业物联网·5g-a
zbtlink2 天前
网络卡在哪儿:空口时间、会话表容量与接入速率的可复现定位方法
网络·智能路由器
qq_401700412 天前
QNetworkConfigurationManager 与网络状态监控:Qt 上位机如何判断网络真的可用
网络·智能路由器
FW-Linker2 天前
多链路聚合如何降低直播音画不同步概率?从网络抖动到数据包级拆分
网络·5g·智能路由器