Wireshark

提供: ArchWiki
2021年1月31日 (日) 14:56時点におけるKusanaginoturugi (トーク | 投稿記録)による版 (→‎インストール: 英語版より転載および翻訳)
ナビゲーションに移動 検索に移動

Wireshark はフリーでオープンソースのパケットアナライザです。ネットワークのトラブルシューティングや解析、ソフトウェアと通信プロトコルの開発、または教育などに使われています。

インストール

Wireshark GUI の場合は wireshark-qt パッケージをインストールし、tshark CLIの場合は wireshark-cliインストールします。

通常ユーザーでキャプチャ

root で Wireshark を実行するのは危険です。

Arch Linux は Wireshark wiki の方法 にそって権限を分けています。wireshark-cli のインストール時に、install スクリプトによって /usr/bin/dumpcapケイパビリティが設定されます。

$ getcap /usr/bin/dumpcap
/usr/bin/dumpcap = cap_net_admin,cap_net_raw+eip

/usr/bin/dumpcap だけがパケットをキャプチャできるプロセスになります。/usr/bin/dumpcap は root と wireshark グループのメンバーだけが実行することが可能です。

通常ユーザーでキャプチャする方法は2つあります:

wireshark グループにユーザーを追加

wireshark を通常ユーザーで使うために、ユーザーを wireshark グループに追加します:

# gpasswd -a username wireshark

wireshark を起動する前に次のコマンドを実行することで、ログインしなおすことなくセッションに新しいグループを適用することができます:

$ newgrp wireshark

sudo を使う

sudo を使うことで一時的にグループを wireshark に変更できます。以下の設定をすることで、wheel グループのユーザーが GID が wireshark に設定されたプログラムを実行できるようになります:

%wheel ALL=(:wireshark) /usr/bin/wireshark, /usr/bin/tshark

wireshark は次のコマンドで実行します:

$ sudo -g wireshark wireshark

キャプチャのテクニック

フィルターを適用することで Wireshark で見たいパケットだけをキャプチャすることが可能です。

ノート: フィルターの構文については、pcap-filter(7)wireshark-filter(4) の man ページを見て下さい。

TCP パケットを抽出

TCP パケットを全て閲覧したい場合、"Filter" バーに tcp と入力してください。もしくは CLI 版の場合:

$ tshark -f "tcp"

UDP パケットを抽出

UDP パケットを全て閲覧したい場合、"Filter" バーに udp と入力してください。もしくは CLI 版の場合:

$ tshark -f "udp"

特定の IP アドレスのパケットを抽出

  • 特定のアドレスに送信されるトラフィックを全て閲覧したい場合、ip.dst == 1.2.3.4 と入力してください。1.2.3.4 はトラフィックの送信先の IP アドレスに置き換えて下さい。
  • 特定のアドレスから送られたトラフィックを全て閲覧したい場合、ip.src == 1.2.3.4 と入力してください。1.2.3.4 はトラフィックの送信元の IP アドレスに置き換えて下さい。
  • 特定のアドレスから送受信されるトラフィックを全て閲覧したい場合、ip.addr == 1.2.3.4 と入力してください。1.2.3.4 は適当な IP アドレスに置き換えて下さい。