Skip to content

A terminal UI for tshark, inspired by Wireshark

License

Notifications You must be signed in to change notification settings

NutekSecurity/termshark

 
 

Repository files navigation

Termshark

A terminal user-interface for tshark, inspired by Wireshark.

V2.4 is out now with packet search and profiles for colors and columns! See the ChangeLog.

demo24

If you're debugging on a remote machine with a large pcap and no desire to scp it back to your desktop, termshark can help!

Features

  • Read pcap files or sniff live interfaces (where tshark is permitted)
  • Filter pcaps or live captures using Wireshark's display filters
  • Reassemble and inspect TCP and UDP flows
  • View network conversations by protocol
  • Copy ranges of packets to the clipboard from the terminal
  • Written in Golang, compiles to a single executable on each platform - downloads available for Linux, macOS, BSD variants, Android (termux) and Windows

tshark has many more features that termshark doesn't expose yet! See What's Next.

Install Packages

Termshark is pre-packaged for the following platforms: Arch Linux, Debian (unstable), FreeBSD, Homebrew, MacPorts, Kali Linux, NixOS, SnapCraft, Termux (Android) and Ubuntu.

Building

Termshark uses Go modules. Set GO111MODULE=on then run:

go install github.com/gcla/termshark/v2/cmd/termshark@v2.4.0

For versions of Go between 1.14 and 1.17, use

go get github.com/gcla/termshark/v2/cmd/termshark

Then add ~/go/bin/ to your PATH.

For all packet analysis, termshark depends on tshark from the Wireshark project. Make sure tshark is in your PATH.

Quick Start

Inspect a local pcap:

termshark -r test.pcap

Capture ping packets on interface eth0:

termshark -i eth0 icmp

Run termshark -h for options.

Downloads

Pre-compiled executables are available via Github releases. Or download the latest build from the master branch - Build Status.

Documentation

See the termshark user guide, and my best guess at some FAQs. For a summary of updates, see the ChangeLog.

Dependencies

Termshark depends on these open-source packages:

  • tshark - command-line network protocol analyzer, part of Wireshark
  • tcell - a cell based terminal handling package, inspired by termbox
  • gowid - compositional terminal UI widgets, inspired by urwid, built on tcell

Note that tshark is a run-time dependency, and must be in your PATH for termshark to function. Version 1.10.2 or higher is required (approx 2013).

Contributors

Thanks to everyone that's contributed ports, patches and effort!


Ross Jacobs

๐Ÿ’ป ๐Ÿ› ๐Ÿ““

Hongarc

๐Ÿ“–

Ryan Steinmetz

๐Ÿ“ฆ

Nicolai Sรธborg

๐Ÿ“ฆ

Elliott Sales de Andrade

๐Ÿ’ป

Romanos

๐Ÿ’ป

Denys

๐Ÿ›

jerry73204

๐Ÿ“ฆ

Jon Knapp

๐Ÿ“ฆ

Mario Harjac

๐Ÿ“ฆ

Andrew Benson

๐Ÿ›

sagis-tikal

๐Ÿ›

punkymaniac

๐Ÿ›

msenturk

๐Ÿ›

Sandor Szรผcs

๐Ÿ›

Dawid Dziurla

๐Ÿ› ๐Ÿ“ฆ

jJit0

๐Ÿ›

inzel

๐Ÿ›

thejerrod

๐Ÿค”

gdluca

๐Ÿ›

Patrick Winter

๐Ÿ“ฆ

Robert Larsen

๐Ÿค” ๐Ÿ““

MinJae Kwon

๐Ÿ›

the-c0d3r

๐Ÿค”

Gisle Vanem

๐Ÿ›

hook

๐Ÿ›

Lennart Koopmann

๐Ÿค”

Fernandez, ReK2

๐Ÿ›

mazball

๐Ÿค”

wfailla

๐Ÿค”

่ฃๆ€ก

๐Ÿค”

thebyrdman-git

๐Ÿ›

Clemens Mosig

๐Ÿ›

Michael Rash

๐Ÿ““

joelparker

๐Ÿ““

Dragos Maftei

๐Ÿค”

Matthew Giassa

๐Ÿค”

Sean Abbott

๐Ÿ“ฆ

Vincent Wang

๐Ÿค”

piping

๐Ÿค”

kevinhwang91

๐Ÿค” ๐Ÿ›

Justin Overfelt

๐Ÿค”

Anthony

๐Ÿค”

basondole

๐Ÿ›

zoulja

๐Ÿ›

freddii

๐Ÿ›

Thord Setsaas

๐Ÿ“–

deliciouslytyped

๐Ÿ›

factorion

๐Ÿ“ฆ

Herby Gillot

๐Ÿ“ฆ

nmeum

๐Ÿค”

Aaron Bieber

๐Ÿค”

elig0n

๐Ÿค”

luzpaz

๐Ÿ“–

uzxmx

๐Ÿ’ป

Contact

License

License: MIT

About

A terminal UI for tshark, inspired by Wireshark

Resources

License

Siteproxy

Siteproxy

ๆœ็ดขๅผ•ๆ“Ž


ๅธธ็”จ็ฝ‘็ซ™


ๆ–ฐ้—ป็ฝ‘็ซ™


ๆตทๅค–่ฎบๅ›


Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 99.6%
  • Shell 0.4%