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 的强大功能。

相关推荐
huainingning2 天前
Windows syslog日志服务器搭建与模拟器对接
运维·服务器·智能路由器
外收内放2 天前
ENSP学习记录(4)
服务器·学习·智能路由器
半壶清水2 天前
[软考网规考点笔记]-局域网之冗余网关技术
网络·笔记·智能路由器
贝猫说python2 天前
为什么要拆分成 mac 地址和 ip 地址,放一起为什么不行
网络·智能路由器
海绵宝宝转agent2 天前
计网基础知识
网络·笔记·学习·智能路由器
别讲概念3 天前
JavaEE(5)网络原理初识
网络·java-ee·智能路由器
外收内放3 天前
ENSP学习记录(2)
网络·智能路由器
updayday8544 天前
客户附件不该发往旧邮箱,如何在发送前拦截 - Ping64 邮件安全管控
大数据·网络·数据库·安全·智能路由器
夜雪一千4 天前
锐捷天蝎路由器WiFi优化设置教程:解决邻居WiFi干扰、远距离卡顿
网络·智能路由器
智慧光迅AINOPOL5 天前
POF光电复合缆多业务承载原理
网络·安全·智能路由器