「Wireshark」の版間の差分
(en:Wiresharkへの転送ページ) |
(Wireshark GTK Client 開発終了) |
||
(3人の利用者による、間の7版が非表示) | |||
1行目: | 1行目: | ||
+ | [[Category:セキュリティ]] |
||
− | #redirect[[en:Wireshark]] |
||
+ | [[Category:ネットワーク]] |
||
+ | [[en:Wireshark]] |
||
+ | [[fr:Wireshark]] |
||
+ | [[ru:Wireshark]] |
||
+ | [[zh-hans:Wireshark]] |
||
+ | Wireshark はフリーでオープンソースのパケットアナライザです。ネットワークのトラブルシューティングや解析、ソフトウェアと通信プロトコルの開発、または教育などに使われています。元の名前は Ethereal で、2006年5月に商標の問題を回避するために Wireshark にプロジェクトの名前が変更されました。 |
||
+ | |||
+ | ==インストール== |
||
+ | |||
+ | wireshark のパッケージは CLI バージョン {{ic|tshark}} と Qt フロントエンド {{ic|wireshark}} に分割されています。フロントエンドは CLI に依存しています。 |
||
+ | |||
+ | * CLI バージョン (tshark) - {{Pkg|wireshark-cli}} パッケージで[[インストール]]できます。 |
||
+ | * Qt フロントエンド (wireshark) - {{Pkg|wireshark-qt}} パッケージで[[インストール]]できます。 |
||
+ | |||
+ | == 通常ユーザーでキャプチャ == |
||
+ | |||
+ | root で Wireshark を実行するのは危険です。 |
||
+ | |||
+ | Arch Linux は [https://wiki.wireshark.org/CaptureSetup/CapturePrivileges#Other_Linux_based_systems_or_other_installation_methods Wireshark wiki の方法] にそって権限を分けています。{{Pkg|wireshark-cli}} のインストール時に、[[PKGBUILD#install|install スクリプト]]によって {{ic|/usr/bin/dumpcap}} に[[ケイパビリティ]]が設定されます。 |
||
+ | |||
+ | {{hc|$ getcap /usr/bin/dumpcap|2= |
||
+ | /usr/bin/dumpcap = cap_net_admin,cap_net_raw+eip |
||
+ | }} |
||
+ | |||
+ | {{ic|/usr/bin/dumpcap}} だけがパケットをキャプチャできるプロセスになります。{{ic|/usr/bin/dumpcap}} は root と {{ic|wireshark}} グループのメンバーだけが実行することが可能です。 |
||
+ | |||
+ | 通常ユーザーでキャプチャする方法は2つあります: |
||
+ | === wireshark グループにユーザーを追加=== |
||
+ | wireshark を通常ユーザーで使うために、ユーザーを wireshark グループに追加します: |
||
+ | |||
+ | {{bc|# gpasswd -a ''username'' wireshark}} |
||
+ | |||
+ | wireshark を起動する前に次のコマンドを実行することで、ログインしなおすことなくセッションに新しいグループを適用することができます: |
||
+ | {{bc|$ newgrp wireshark}} |
||
+ | |||
+ | === sudo を使う === |
||
+ | [[sudo]] を使うことで一時的にグループを {{ic|wireshark}} に変更できます。以下の設定をすることで、wheel グループのユーザーが GID が wireshark に設定されたプログラムを実行できるようになります: |
||
+ | |||
+ | {{bc|1=%wheel ALL=(:wireshark) /usr/bin/wireshark, /usr/bin/tshark}} |
||
+ | |||
+ | wireshark は次のコマンドで実行します: |
||
+ | {{bc|$ sudo -g wireshark wireshark}} |
||
+ | |||
+ | ==キャプチャのテクニック== |
||
+ | |||
+ | フィルターを適用することで Wireshark で見たいパケットだけをキャプチャすることが可能です。 |
||
+ | |||
+ | {{Note|フィルターの構文については、{{man|7|pcap-filter}} や {{man|4|wireshark-filter}} の man ページを見て下さい。}} |
||
+ | |||
+ | ===TCP パケットを抽出=== |
||
+ | TCP パケットを全て閲覧したい場合、"Filter" バーに {{ic|tcp}} と入力してください。もしくは CLI 版の場合: |
||
+ | $ tshark -f "tcp" |
||
+ | |||
+ | ===UDP パケットを抽出=== |
||
+ | UDP パケットを全て閲覧したい場合、"Filter" バーに {{ic|udp}} と入力してください。もしくは CLI 版の場合: |
||
+ | $ tshark -f "udp" |
||
+ | |||
+ | ===特定の IP アドレスのパケットを抽出=== |
||
+ | * 特定のアドレスに送信されるトラフィックを全て閲覧したい場合、{{ic|<nowiki>ip.dst == 1.2.3.4</nowiki>}} と入力してください。{{ic|1.2.3.4}} はトラフィックの送信先の IP アドレスに置き換えて下さい。 |
||
+ | |||
+ | * 特定のアドレスから送られたトラフィックを全て閲覧したい場合、{{ic|<nowiki>ip.src == 1.2.3.4</nowiki>}} と入力してください。{{ic|1.2.3.4}} はトラフィックの送信元の IP アドレスに置き換えて下さい。 |
||
+ | |||
+ | * 特定のアドレスから送受信されるトラフィックを全て閲覧したい場合、{{ic|<nowiki>ip.addr == 1.2.3.4</nowiki>}} と入力してください。{{ic|1.2.3.4}} は適当な IP アドレスに置き換えて下さい。 |
2019年8月10日 (土) 22:02時点における版
Wireshark はフリーでオープンソースのパケットアナライザです。ネットワークのトラブルシューティングや解析、ソフトウェアと通信プロトコルの開発、または教育などに使われています。元の名前は Ethereal で、2006年5月に商標の問題を回避するために Wireshark にプロジェクトの名前が変更されました。
目次
インストール
wireshark のパッケージは CLI バージョン tshark
と Qt フロントエンド wireshark
に分割されています。フロントエンドは CLI に依存しています。
- CLI バージョン (tshark) - wireshark-cli パッケージでインストールできます。
- Qt フロントエンド (wireshark) - wireshark-qt パッケージでインストールできます。
通常ユーザーでキャプチャ
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 で見たいパケットだけをキャプチャすることが可能です。
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 アドレスに置き換えて下さい。