Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
snitch — ネットワーク接続を調査する、より美しい方法 | Kitploit
ツール/GitHubGitHub/karol-broda/snitch
汎用ユーティリティパケットスニッフィングと分析ネットワークマッピング情報収集DNS分析
GitHubkarol-broda/snitch

snitch

ネットワーク接続を調査する、より美しい方法

リポジトリを見る
3.5k55223ヶ月前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

snitch

人間のためのより親しみやすい ss / netstat。クリーンなTUIまたはスタイル付きテーブルでネットワーク接続を確認できます。

snitch demo

インストール

homebrew

brew install snitch

@bevanjkay がsnitchをhomebrew-coreに追加してくれたことに感謝

go

go install github.com/karol-broda/snitch@latest

nixpkgs

nix-env -iA nixpkgs.snitch

@DieracDelta がsnitchをnixpkgsに追加してくれたことに感謝

nixos / nix (flake)

# 試す
nix run github:karol-broda/snitch

# プロファイルにインストール
nix profile install github:karol-broda/snitch

# またはflake inputsに追加
{
  inputs.snitch.url = "github:karol-broda/snitch";
}
# その後: inputs.snitch.packages.${system}.default を使用

home-manager (flake)

snitchをflake inputsに追加し、home-managerモジュールをインポート:

{
  inputs = {
    nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
    home-manager.url = "github:nix-community/home-manager";
    snitch.url = "github:karol-broda/snitch";
  };

  outputs = { nixpkgs, home-manager, snitch, ... }: {
    homeConfigurations."user" = home-manager.lib.homeManagerConfiguration {
      pkgs = nixpkgs.legacyPackages.x86_64-linux;
      modules = [
        snitch.homeManagerModules.default
        {
          programs.snitch = {
            enable = true;
            # オプション: nixpkgsの代わりにflakeのパッケージを使用
            # package = snitch.packages.x86_64-linux.default;
            settings = {
              defaults = {
                theme = "catppuccin-mocha";
                interval = "2s";
                resolve = true;
              };
            };
          };
        }
      ];
    };
  };
}

利用可能なテーマ: ansi, catppuccin-mocha, catppuccin-macchiato, catppuccin-frappe, catppuccin-latte, gruvbox-dark, gruvbox-light, dracula, nord, tokyo-night, tokyo-night-storm, tokyo-night-light, solarized-dark, solarized-light, one-dark, mono

arch linux (aur)

# yay使用
yay -S snitch-bin

# paru使用
paru -S snitch-bin

シェルスクリプト

curl -sSL https://raw.githubusercontent.com/karol-broda/snitch/master/install.sh | sh

利用可能な場合は~/.local/binに、そうでなければ/usr/local/binにインストール。上書きするには:

curl -sSL https://raw.githubusercontent.com/karol-broda/snitch/master/install.sh | INSTALL_DIR=~/bin sh

macos: インストールスクリプトは自動的にバイナリの隔離属性(com.apple.quarantine)を削除し、ゲートキーパーの警告なしで実行できるようにします。これを無効にするには、KEEP_QUARANTINE=1を設定します。

docker

GitHub Container Registryから事前ビルドされたOCIイメージが利用可能:

# ghcr.ioからプル
docker pull ghcr.io/karol-broda/snitch:latest          # alpine (デフォルト)
docker pull ghcr.io/karol-broda/snitch:latest-alpine   # alpine (~17MB)
docker pull ghcr.io/karol-broda/snitch:latest-scratch  # 最小限、バイナリのみ (~9MB)
docker pull ghcr.io/karol-broda/snitch:latest-debian   # debian trixie
docker pull ghcr.io/karol-broda/snitch:latest-ubuntu   # ubuntu 24.04

# または特定のバージョンを使用
docker pull ghcr.io/karol-broda/snitch:0.2.0-alpine

あるいは、nix flakeを使用してローカルでビルド:

nix build github:karol-broda/snitch#snitch-alpine
docker load < result

コンテナの実行:

# 基本的な使用法 - ホストのソケットは見えるがプロセス名は見えない
docker run --rm --net=host snitch:latest ls

# 完全な情報 - PID、プロセス名、ユーザーを含む
docker run --rm --net=host --pid=host --cap-add=SYS_PTRACE snitch:latest ls
フラグ目的
--net=hostホストネットワーク名前空間を共有(ホスト接続を表示するために必要)
--pid=hostホストPID名前空間を共有(プロセス情報に必要)
--cap-add=SYS_PTRACE/proc/<pid>からプロセス詳細を読み取る

注: CAP_NET_ADMINとCAP_NET_RAWは必要ありません。snitchは/proc/net/*から読み取り、特別なネットワーク機能は不要です。

バイナリ

リリースからダウンロード:

  • linux: snitch_<version>_linux_<arch>.tar.gz または .deb/.rpm/.apk
  • macos: snitch_<version>_darwin_<arch>.tar.gz
tar xzf snitch_*.tar.gz
sudo mv snitch /usr/local/bin/

macos: "デベロッパを確認できないため開けません" とブロックされた場合は、次を実行:

xattr -d com.apple.quarantine /usr/local/bin/snitch

クイックスタート

snitch              # 対話型TUIを起動
snitch -l           # リスニングソケットのみ表示するTUI
snitch ls           # スタイル付きテーブルを表示して終了
snitch ls -l        # リスニングソケットのみ
snitch ls -t -e     # TCP確立済み接続
snitch ls -p        # プレーン出力(解析可能)

コマンド

snitch / snitch top

ライブ更新される接続リストの対話型TUI。

snitch                  # すべての接続
snitch -l               # リスニングのみ
snitch -t               # TCPのみ
snitch -e               # 確立済みのみ
snitch -i 2s            # 2秒間隔で更新

キーバインド:

j/k, ↑/↓      ナビゲート
g/G           先頭/末尾
t/u           TCP/UDP切替
l/e/o         リスニング/確立済み/その他切替
s/S           ソート切替 / 逆順
w             プロセス監視(ハイライト)
W             全監視をクリア
K             プロセスを強制終了(確認あり)
/             検索
enter         接続詳細
?             ヘルプ
q             終了

snitch ls

ワンショットテーブル出力。出力が端末の高さを超える場合は自動的にページャを使用。

snitch ls               # スタイル付きテーブル(デフォルト)
snitch ls -l            # リスニングのみ
snitch ls -t -l         # TCPリスナー
snitch ls -e            # 確立済みのみ
snitch ls -p            # プレーン/解析可能な出力
snitch ls -o json       # JSON出力
snitch ls -o csv        # CSV出力
snitch ls -n            # 数値(DNS解決なし)
snitch ls --no-headers  # ヘッダーを省略

snitch json

スクリプト用JSON出力。

snitch json
snitch json -l

snitch watch

指定間隔でJSONフレームをストリーム出力。

snitch watch -i 1s | jq '.count'
snitch watch -l -i 500ms

snitch upgrade

更新を確認し、その場でアップグレード。

snitch upgrade              # 更新を確認
snitch upgrade --yes        # 自動アップグレード
snitch upgrade -v 0.1.7     # 特定のバージョンをインストール

フィルター

ショートカットフラグはすべてのコマンドで使用可能:

-t, --tcp           TCPのみ
-u, --udp           UDPのみ
-l, --listen        リスニングソケット
-e, --established   確立済み接続
-4, --ipv4          IPv4のみ
-6, --ipv6          IPv6のみ

名前解決

DNSおよびサービス名解決のオプション:

--resolve-addrs     IPアドレスをホスト名に解決(デフォルト: true)
--resolve-ports     ポート番号をサービス名に解決
--no-cache          DNSキャッシュを無効(強制的に新規ルックアップ)

DNSルックアップは並列で実行され、パフォーマンスのためにキャッシュされます。アドレスが頻繁に変更されるデバッグや状況では --no-cache を使用してキャッシュをバイパスします。

より詳細なフィルタリングには、ls で key=value 構文を使用:

snitch ls proto=tcp state=listen
snitch ls pid=1234
snitch ls proc=nginx
snitch ls lport=443
snitch ls contains=google

出力

スタイル付きテーブル(デフォルト):

  ╭─────────────────┬───────┬───────┬─────────────┬─────────────────┬────────╮
  │ PROCESS         │ PID   │ PROTO │ STATE       │ LADDR           │ LPORT  │
  ├─────────────────┼───────┼───────┼─────────────┼─────────────────┼────────┤
  │ nginx           │ 1234  │ tcp   │ LISTEN      │ *               │ 80     │
  │ postgres        │ 5678  │ tcp   │ LISTEN      │ 127.0.0.1       │ 5432   │
  ╰─────────────────┴───────┴───────┴─────────────┴─────────────────┴────────╯
  2 connections

プレーン出力 (-p):

PROCESS    PID    PROTO   STATE    LADDR       LPORT
nginx      1234   tcp     LISTEN   *           80
postgres   5678   tcp     LISTEN   127.0.0.1   5432

設定

オプションの設定ファイル ~/.config/snitch/snitch.toml:

[defaults]
numeric = false      # 名前解決を無効化
dns_cache = true     # DNSルックアップをキャッシュ(無効にするにはfalseに設定)
theme = "auto"       # カラーテーマ: auto, dark, light, mono

[tui]
remember_state = false   # セッション間で表示オプションを記憶

表示オプションの記憶

remember_state = true の場合、TUIは以下を保存・復元します:

  • フィルター切替 (TCP/UDP、リスニング/確立済み/その他)
  • ソートフィールドと方向
  • アドレスとポートの解決設定

状態は $XDG_STATE_HOME/snitch/tui.json に保存されます(デフォルトは ~/.local/state/snitch/tui.json)。

CLIフラグは常に保存された状態よりも優先されます。

環境変数

SNITCH_THEME=dark          # デフォルトテーマを設定
SNITCH_RESOLVE=0           # DNS解決を無効化
SNITCH_DNS_CACHE=0         # DNSキャッシュを無効化
SNITCH_NO_COLOR=1          # カラー出力を無効化
SNITCH_CONFIG=/path/to     # カスタム設定ファイルパス

必要条件

  • Linux または macOS
  • Linux: /proc/net/* から読み取り、完全なプロセス情報には root または CAP_NET_ADMIN が必要
  • macOS: システムAPIを使用、完全なプロセス情報には sudo が必要な場合あり
ツールをダウンロード