目录

简介

与此版本之前的版本相比

功能概述

最低软件和硬件平台

Snort 3、IPv6、多实例和HA/群集支持

支持的其他方面

功能说明和演练

新建Show Snort Flows CLI

客户端和服务器流状态

过滤器选项

潜在错误响应

停止CLI/输出

性能影响

参考

常见问题解答

简介

本文档介绍如何使用show snort flows命令查看Snort中的活动流。

与此版本之前的版本相比

功能概述

- 新的CLI show snort flows用于查看Snort 3流缓存中的活动流。

- 这提供了运行Snort 3进程的活动流的详细信息。

- 输出提供Snort流的状态、源IP和目标IP以及端口。

- 它有助于隔离和调试生产环境中的问题。

Spoiler （突出显示以便阅读）

NOTE:引入此功能是为了能够查看活动的Snort流量和客户端、流量的服务器状态、超时等。

NOTE:引入此功能是为了能够查看活动的Snort流量和客户端、流量的服务器状态、超时等。

最低软件和硬件平台

Snort 3、IPv6、多实例和HA/群集支持

- 同时适用于IPv4和IPv6。

- 要求Snort 3作为检测引擎

支持的其他方面

功能说明和演练

本部分提供演练，包括流超时和有关更多功能的详细信息。

新建Show Snort Flows CLI

> show snort flows

TCP 0: x1.x1.x1.2/38148 x1.x1.x1.1/22 pkts/bytes client 9/2323 server 6/2105 idle 7s, uptime 7s, timeout 59m53s state client EST server EST

ICMP 0: x1.x1.x1.2 type 8 x1.x1.x1.1 pkts/bytes client 1/98 server 1/98 idle 0s, uptime 0s, timeout 3m0s

UDP 0: x1.x1.x1.1/40101 x1.x1.x1.1/12345 pkts/bytes client 3/141 server 0/0 idle 19s, uptime 58s, timeout 2m41s

此示例显示了三个流：TCP、ICMP和UDP。

对于TCP流，值如下：

- 协议 — TCP/ICMP/UDP/IP

- 地址空间ID — 接口的VRF ID

- 源IP/端口：x1.x1.x1.2/38148

- 目的IP/端口：x1.x1.x1.1/22

- 客户端Pkts/bytes - 9/2323

- 服务器数据包/字节 — 6/2105

- 空闲 — 自流中最后一个数据包以来的时间

- Uptime — 设置流后的时间

- 超时 — 流超时

- 客户端状态（仅限TCP流量） — EST

- 服务器状态（仅限TCP流量） — EST

客户端和服务器流状态

- 仅当协议为TCP时，输出中才会显示Client State和Server State。

- 以下是可能的值以及每个缩写词对各状态的含义：

过滤器选项

show snort flows命令支持仅输出与过滤器匹配的流的过滤选项。  语法为

show snort flows <filter option> <value>

过滤器选项：

- proto -TCP/UDP/IP/ICMP

- src_ip -按源ip过滤流

- dst_ip — 按目标ip过滤流

- src_port — 按源端口过滤流量

- dst_port — 按目标端口过滤流量

> show snort flows proto TCP命令仅列出TCP流量：

TCP 0: x1.x1.x1.2/45508 x1.x1.x1.1/22 pkts/bytes client 10/2389 server 7/2171 idle

30s, uptime 150s, timeout 59m30s state client CLW server FW2

Spoiler （突出显示以便阅读）

NOTE:还可以在命令中使用多个过滤器。  例如，

show snort flows proto TCP src_ip x1.x1.x1.2 — 输出具有src ip x1.x1.x1.2的TCP流

NOTE:还可以在命令中使用多个过滤器。  例如，> show snort flows proto TCP src_ip x1.x1.x1.2 — 输出具有src ip x1.x1.x1.2的TCP流

潜在错误响应

- CLI用户可能会收到“无法处理命令，请稍后重试”的响应。

- 例如，当Snort 3关闭、Snort 3繁忙或Snort 3未处理控制套接字命令（例如线程处于停滞状态）时，就会发生这种情况。

- CLI成功运行的条件：

- Snort 3正在运行。

- Snort 3正在对UNIX域套接字上的控制命令做出响应。

停止CLI/输出

- 与任何CLI命令一样，您可以通过按CTRL +C获得命令提示符，但该命令已传递到所有数据包线程，并在Snort中运行至完成。

- 当以下两种情况都适用时，命令完成：

- 已查看流缓存中的所有流

- 与CLI命令中的过滤器匹配的所有流已写入作为命令输入的文件中，以便在CLI中输出。

性能影响

- 这是调试CLI。对于我们通过的每个数据包，我们查看流表中的大约100个流，并打印符合条件的流。

- 运行show snort flows会对性能产生影响。

参考

常见问题解答

问:在“show snort flows”中是否可以使用多个过滤器

A：是，CLI支持一次提供多个过滤器，并输出匹配两个过滤器的流。

问:支持哪些协议？

A：IP/TCP/UDP/ICMP