Wiresharkの標準インストールでは、プログラムがネットワークインターフェイスにアクセスする許可を与えません。
Sudo
でプログラムを実行する必要があると思いますが、それをアイコンに追加する方法がわかりません。
WireSharkにはもっと良い方法があります。通常ルートを必要とするビットはパケット収集アプリケーションであり、特定の人々がSudo
、gksu
、etc
なしでそれを使用できるように構成できます。
ターミナルで(Alt + F2ダイアログだけでなく、ターミナルにいることが非常に重要です)これを実行します:
Sudo dpkg-reconfigure wireshark-common
これにより、非rootユーザーがスニッフィングできるようにするかどうかを尋ねられます。それが私たちが目指していることなので、Yes
を選択してReturnキーを押します。
これにより、wireshark
グループが追加されます。そのグループの誰もがルートにならずににおいを嗅ぐことができます。これは、単にanybodyをスニッフィングさせるよりも安全ですが、パスワードのチェックがないことを意味します。技術的には、wireshark
アカウントでログインしたコンピューターにアクセスできる人は誰でも盗聴できます。それがあなたに受け入れられるなら、続けてください。
そうでない場合は、再度実行して、noを選択します。
次に、そのグループにユーザーを追加するだけです。これを実行します:
Sudo adduser $USER wireshark
再起動またはログアウトします。戻ったら、ルートになることについて大騒ぎせずにスニッフィングを開始できます。
端末からgksu wireshark
を実行して、ルート権限でWiresharkを実行することもできます。
このモードでWiresharkを実行すると、セキュリティ上の懸念があることに注意してください。つまり、Wiresharkを侵害するエクスプロイトには、ユーザー特権ではなくルート特権が付与されることに注意してください。 Wiresharkは他のアプリケーションよりも懸念事項です。なぜなら、それはまさにその性質(任意の入力のキャプチャと処理)であるため、Wiresharkは典型的なデスクトップアプリケーションよりもエクスプロイトに対して脆弱です。 SOHOネットワークではおそらく安全ですが、先に進む前にこの懸念に注意する必要があります。
引用:
本当に、ルートとしてWireSharkを起動する必要はありません。 公式ページ をお読みください。簡単に言うと、次のことを行う必要があります。
Sudo groupadd wireshark
Sudo usermod -a -G wireshark $USER
Sudo chgrp wireshark /usr/bin/dumpcap
Sudo chmod o-rx /usr/bin/dumpcap
Sudo setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' /usr/bin/dumpcap
Sudo getcap /usr/bin/dumpcap
その後、ログアウトして再度ログインします。
注:このメソッドは、16.04 LTS、17.10および18.04 LTSでテストされました。
あなたもこれを試して、ターミナルを開いて、このコマンドを実行することができます
# setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' /usr/bin/dumpcap
root以外のユーザーとしてwiresharkを実行する