ChromebookにWireSharkを入れてみた

# 概要
ChromebookにWireShark入れてみた。プロトコルアナライザとかスニッフィングツールとか呼ばれてるソフト。他にも調べたら、クラウド上でパケットの解析をするCloudSharkとか、Chrome拡張のNetwork Snifferってのがあるみたい。そっちは試してない。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184221/38b0905b-abbd-1027-48e5-4eb35e43ecf5.png)


# はじめに
ChromebookでHTTPとかMQTTのプロトコルを勉強してみたいなという気分になったので、chormeosにwireshark入れられるんかなと思って調べて、すこし試してみた。

# 候補
## CloudShark
検索したら最初に見つけた。キャプチャしてファイルをクラウドで解析するっぽい。なんでもクラウドやな。

[Packet Capture in Chrome OS | CloudShark: Network Analysis Evolved](https://cloudshark.io/articles/packet-capture-in-chrome-os/)

登録しよかなと思ったら無料じゃなかった。残念。
[Personal SaaS | CloudShark: Network Analysis Evolved](https://cloudshark.io/products/personal/)

## Network Sniffer
Chrome拡張。評価高いけど、Crostiniの通信も確認できるか微妙な気もする。仮想環境のことよくわからん。UIも微妙そうな気がしてやめた。
[Network Sniffer - Chrome Web Store](https://chrome.google.com/webstore/detail/network-sniffer/coblekblkacfilmgdghecpekhadldjfj?hl=en)

## CrostiniにWireShark
無難（？）にWireShark。[Crostini](https://chromium.googlesource.com/chromiumos/docs/+/master/containers_and_vms.md)にWireShark。開発っぽいことは、Crostini使ってやるので悪くないかも。



# インストール
結局、無難にCrostiniにWireSharkを入れてみることにした。

ここらへんを参考にした。
[How to Install and Use Wireshark on Debian 9 / Ubuntu 16.04 / 17.10](https://www.linuxtechi.com/install-use-wireshark-debian-9-ubuntu/)

CrostiniはDebianベースっぽいので、検索するとき、Debianとして検索してる。最近。

```
~$ cat /etc/issue
Debian GNU/Linux 9 \n \l
~$ cat /etc/debian_version 
9.9
```

普通にapt-getでインストール。

```
~$ sudo apt-get install wireshark -y
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  libc-ares2 libmaxminddb0 libnl-3-200 libnl-genl-3-200 libnl-route-3-200
  libpcap0.8 libqgsttools-p1 libqt5multimedia5 libqt5multimedia5-plugins
  libqt5multimediawidgets5 libqt5opengl5 libqt5printsupport5 libsbc1
  libsmi2ldbl libspandsp2 libssh-gcrypt-4 libwireshark-data libwireshark11
  libwiretap8 libwscodecs2 libwsutil9 wireshark-common wireshark-qt
Suggested packages:
  mmdb-bin snmp-mibs-downloader wireshark-doc
The following NEW packages will be installed:
  libc-ares2 libmaxminddb0 libnl-3-200 libnl-genl-3-200 libnl-route-3-200
  libpcap0.8 libqgsttools-p1 libqt5multimedia5 libqt5multimedia5-plugins
  libqt5multimediawidgets5 libqt5opengl5 libqt5printsupport5 libsbc1
  libsmi2ldbl libspandsp2 libssh-gcrypt-4 libwireshark-data libwireshark11
  libwiretap8 libwscodecs2 libwsutil9 wireshark wireshark-common wireshark-qt
0 upgraded, 24 newly installed, 0 to remove and 35 not upgraded.
Need to get 21.5 MB of archives.
After this operation, 109 MB of additional disk space will be used.
（省略）
```

下記メッセージが出てくる。OKした。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184221/84ae63ef-6587-0cf5-1998-cedc9fda11cf.png)

このあと、non-root userも使うか確認されたので、使う方を選択してみた。

こんな感じで入った。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184221/97084a43-0e54-cdf4-bb12-80f412f345b4.png)

起動方法は、アプリのアイコンをクリックするか、ターミナルで下記コマンド。

```
~$ wireshark
```


試そうとしたら、怒られた。下記メッセージが出てきた。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184221/138c078c-86b3-1d34-bc1b-10d6d6aa225f.png)


chmodした。

```
~$ sudo chmod +x /usr/bin/dumpcap 
~$ ls -l /usr/bin/dumpcap 
-rwxr-xr-x 1 root wireshark 104688 Mar 24  2019 /usr/bin/dumpcap
```

こんなエラーも出てたけどよくわからん。無視することにした。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184221/55f3e41e-ca2a-1b00-737b-d19b5669b2de.png)

とりあえず、動いた。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184221/1b42e1a3-bd8f-78f6-cc28-146725c707ff.png)


ためしに、

```
~$ wget google.com
```

してみたら、こんな感じで表示された。とりあえず、動いてるっぽい。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/184221/38b0905b-abbd-1027-48e5-4eb35e43ecf5.png)

# おわりに
ChromebookにWireShark的なん入れる方法、前から気になってたので、試せてよかった。
他にも、CloudSharkなるものの存在を知ってそれなりにびっくりした。なんでもクラウドやな。試してないけど。
HTTPのこと、もうちょい知りたいのでなんとなく中身見ながら`curl`とかしながら確認したい。そのうち、MQTTも。