PCの電源がオンになっている時間の80%程度の間、アップロード帯域幅をすべて消費している邪悪なアプリケーションがあります(私はブラジル人で、わずか35kbpsです)。
この使用状況を追跡し、どのアプリがこれを行っているかを発見する方法があるかどうか知りたいです。
nethogs はどうですか?私の意見では、それははるかに人道的です。ネットワークを使用するコマンド/プログラムと、それぞれの帯域幅をリアルタイムで一覧表示します。
以下を使用してubuntu/debianシステムにインストールします。
Sudo apt-get install nethogs
これを実行して、次のようにネットワークインターフェイスを監視します。
Sudo nethogs eth0
iftop
は、pcapライブラリ(tcpdumpおよびwiresharkでも使用されます)を使用できるtopと同様のコンソール/シェルベースのプログラムです。ユニバースからUbuntuで利用できます。
Sudo aptitude install iftop
Sudo iftop
Ubuntuシステムでアップグレードを実行しているとき:
Netstatを使用すると、特定のポートまたはIPに接続されているプロセスを確認できます。ポートの場合、接頭辞としてコロンを付けることをお勧めします。
Sudo netstat -plantu | grep "some_port_number_or_ip_address"
たとえば、sshの開いている接続を確認するには、次のようにします。
Sudo netstat -plantu | grep :22
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 2376/sshd
tcp 0 0 10.13.37.122:22 10.13.37.105:59130 ESTABLISHED 4033/sshd: jtimberm
tcp6 0 0 :::22 :::* LISTEN 2376/sshd
Lsofを使用してオープンポート接続を探すこともできます。
Sudo lsof -i:22
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd 2376 root 3u IPv4 5613 0t0 TCP *:ssh (LISTEN)
sshd 2376 root 4u IPv6 5615 0t0 TCP *:ssh (LISTEN)
sshd 4033 root 3u IPv4 11608 0t0 TCP 10.13.37.122:ssh->10.13.37.105:59130 (ESTABLISHED)
sshd 4086 jtimberman 3u IPv4 11608 0t0 TCP 10.13.37.122:ssh->10.13.37.105:59130 (ESTABLISHED)
-p PIDを使用して、lsofから開いているファイルに関する詳細情報を取得できます。
Sudo lsof -p 2376
(抑制されたものからの多くの出力)
ntop はあなたの友達です。パッケージはLinuxリポジトリとmacportsにあります。
Iftopを使用して帯域幅を使用しているアドレスとポートを識別することに加えて、netstatを使用してプロセスを識別することができます
Sudo netstat -ntp
これにより、すべてのTCP接続が開いており、プロセス名/ IDがそれぞれに接続されていることが表示されます。
nload は、帯域幅をリアルタイムで監視するための優れたツールであり、Sudo apt-get installnloadを使用してUbuntuまたはDebianに簡単にインストールできます。
Device eth0 [10.10.10.5] (1/2):
=====================================================================================
Incoming:
. ...|
# ####|
.. |#| ... #####. .. Curr: 2.07 MBit/s
###.### #### #######|. . ## | Avg: 1.41 MBit/s
########|#########################. ### Min: 1.12 kBit/s
........ ################################### .### Max: 4.49 MBit/s
.##########. |###################################|##### Ttl: 1.94 GByte
Outgoing:
########## ########### ###########################
########## ########### ###########################
##########. ########### .###########################
########### ########### #############################
########### ###########..#############################
############ ##########################################
############ ##########################################
############ ########################################## Curr: 63.88 MBit/s
############ ########################################## Avg: 32.04 MBit/s
############ ########################################## Min: 0.00 Bit/s
############ ########################################## Max: 93.23 MBit/s
############## ########################################## Ttl: 2.49 GByte
もう1つの優れたツールは iftop で、これも簡単にapt-get'ableです。
191Mb 381Mb 572Mb 763Mb 954Mb
└────────────┴──────────┴─────────────────────┴───────────┴──────────────────────
box4.local => box-2.local 91.0Mb 27.0Mb 15.1Mb
<= 1.59Mb 761kb 452kb
box4.local => box.local 560b 26.8kb 27.7kb
<= 880b 31.3kb 32.1kb
box4.local => userify.com 0b 11.4kb 8.01kb
<= 1.17kb 2.39kb 1.75kb
box4.local => b.resolvers.Level3.net 0b 58b 168b
<= 0b 83b 288b
box4.local => stackoverflow.com 0b 42b 21b
<= 0b 42b 21b
box4.local => 224.0.0.251 0b 0b 179b
<= 0b 0b 0b
224.0.0.251 => box-2.local 0b 0b 0b
<= 0b 0b 36b
224.0.0.251 => box.local 0b 0b 0b
<= 0b 0b 35b
─────────────────────────────────────────────────────────────────────────────────
TX: cum: 37.9MB peak: 91.0Mb rates: 91.0Mb 27.1Mb 15.2Mb
RX: 1.19MB 1.89Mb 1.59Mb 795kb 486kb
TOTAL: 39.1MB 92.6Mb 92.6Mb 27.9Mb 15.6Mb
古い* nixのクラシックで強力なsarおよびnetstatユーティリティを忘れないでください!
私の意見では、iftopのユーザーインターフェイスはうまく設計されていません。実際には、IPまたはホスト名をリアルタイムで表示する必要はほとんどありません。現在のすべての接続のリストが必要な場合は、jtimbermanが説明したようにnetstatを使用します。
私の目的では、bmonはiftopよりも適しています。複数のインターフェースと「グラフ」の描画をサポートする非常に単純なユーザーインターフェースを備えています。これがスクリーンショットです:
Bmonが提供するすべての機能が必要ない場合は、 bwm-ng が最適なツールである可能性があります。インターフェイスごとに現在占有されている帯域幅のみが表示されます。これ以上でもそれ以下でもありません。
Wireshark は、ネットワークトラフィックを監視するための非常に優れた(マルチプラットフォーム)アプリでもあります。サイトからの説明は次のとおりです。
Wiresharkは、世界で最も優れたネットワークプロトコルアナライザであり、多くの業界や教育機関で事実上の(そして多くの場合はデジュリ)標準です。
ファームウェアによっては、ルーターレベルでこれを行うことができます。たとえば、 DD-WRT を使用すると、時間の経過とマシンごとに使用状況を追跡できます。
ファイアウォールをインストールし、少なくとも一時的に、すべての発信接続をブロックするようにします。何かが接続を試みたときに通知する必要があります。その時点で、犯人がいるはずです:-)
これは、ubuntuにファイアウォールをインストールするための情報を提供するオンラインの多くの記事の1つです。
http://linux.com/news/enterprise/systems-management/8256-installing-a-firewall-on-ubunt