Linuxでssコマンドを使用してネットワーク接続を監視する方法
Linuxを使用している場合は、ネットワークについてもっと知る必要がある時期が来るでしょう。これを行うのに役立つツールがいくつかあり、一部のツールは他のツールよりも複雑です。 ss
コマンドは多くのマシンにインストールされていると信頼できるものなので、知っておくと便利です。
ssコマンドとは何ですか?
2文字のコマンドの名前は難解に見えるかもしれませんが、実際には非常に単純です。多くのLinux/Unixコマンドと同様に、名前はコマンドの機能の省略形です。ここで、ssはSocketStatisticsの略です。
Socket Statisticsは、古いnetstat
に代わるものです。 使いやすく理解しやすいことを目的としたツール。ソケットに関する情報を表示するだけです。これには、最も一般的に使用されるタイプであるTCPおよびUDPソケットだけでなく、DCCP、RAW、およびUnixドメインソケットも含まれます。
ssコマンドを使用する最も簡単な方法は、引数なしで実行することです。これにより、かなりの量のデータが表示されるため、less
を介してパイプすることをお勧めします。 読みやすくするため。
ss | less
現状では、これは特に有用ではありません。たくさんの情報が表示されますが、読みにくいほどたくさんあります。簡単にするために、特定のタイプのソケットをフィルタリングできます。
たとえば、TCPソケットのみを一覧表示できます。
ss -t
または、代わりにUDPソケットを一覧表示することもできます。
ss -u
デフォルトでは、これらのオプションは接続を確立したソケットのみを一覧表示します。リッスンまたは接続されているすべてのTCPソケットを一覧表示するには、次のコマンドを実行できます。
ss -t -a
これまでのところ、これはすべて非常に単純なようです。詳細を学びましょう。
ssコマンドでできる便利なこと
基本に慣れてきたので、次はssコマンドを使用してネットワークを監視します。できることはたくさんありますが、始めるためのアイデアをいくつか紹介します。
TCP状態の監視
ネットワークに精通している場合は、これをすでに知っていますが、TCP接続にはさまざまな段階があります。これらは、接続の全寿命を詳しく説明します。 ss
を使用して、特定のタイプのステージにドリルダウンできます。 コマンド。
「確立された」や「閉じられた」などの標準のTCP状態に加えて、ssコマンドはいくつかのカスタムフィルターをサポートします。たとえば、「接続済み」状態は、「リスニング」と「クローズ」を除くすべてのTCP状態です。これを使用するには、次を実行します。
ss state connected
IPv4およびIPv6
ネットワークでIPv6アドレスとIPv4アドレスの組み合わせを使用している場合は、ssコマンドを使用してそれらをフィルタリングできます。 -4
を使用するだけです または-6
フラグ。すべてのIPv4接続を表示する場合は、TCP状態で接続できます。
ss -4 state connected
すべてのIPv6ソケットを表示したい場合は、次を実行するだけです。
ss -6
このソケットを使用しているプロセスは何ですか?
ソケットがリッスンしていることはわかっているが、その理由がわからない場合は、これを簡単に追跡できます。以下を実行すると、接続されているすべてのIPv4TCPソケットの名前とプロセスIDが表示されます。
ss -4p state connected
概要の表示
特定のマシンのソケットの簡単な概要が必要な場合があります。これは、完全に文字「s」と1つのダッシュで構成されているため、実行が簡単なコマンドの1つでもあります。
ss -s
これにより、マシン上のすべてのソケットの概要が表示され、それらがIPv4かIPv6かが表示されます。
ネットワークについてもっと知りたいですか?
これは、ssコマンドで実行できることのほんの始まりにすぎません。これは強力なツールであり、学ぶ価値のあるツールです。さらに深く掘り下げるには、ターミナルを開き、ツールのマニュアルページにあるドキュメントを確認します。 man ss
を実行するだけです 開始するには。
マシンを保護する場合は、ssが便利ですが、使用できるツールはssだけではありません。詳細については、Linuxで開いているポートを確認するためのガイドをご覧ください。
-
LinuxでTeeコマンドを使用する方法
Linuxシェルでパイプとリダイレクトを使用したことがある場合は、teeを使用する必要がある場合もあります。 ユーティリティ。 ティーは何をしますか? などのコマンド ls 現在のディレクトリの内容が表示されます。つまり、これらのコンテンツをstdout(標準出力)(通常は画面)、より正確には仮想端末ディスプレイに表示します。 のようなコマンド ls > file123 画面には何も表示されません。 signは、すべての出力をstdoutに表示するのではなく、ファイルにリダイレクトします。 file123には、以前に画面に表示されていたコンテンツが入力されます。 ディレクトリ
-
Linuxでwatchコマンドを使用する方法と例
Linuxのwatchコマンドは1つのことを行います。コマンドを繰り返し、結果を繰り返し出力して、変更を監視できるようにします。使用方法は次のとおりです。 watchコマンド構文 watchコマンドの構文は次のとおりです。 watch OPTIONS COMMAND 注: オプション 以下の表のオプションのリストである必要があります。これにより、ウォッチのデフォルトの動作が変更されます。 コマンド コマンド 監視するコマンドです 繰り返し実行する必要があります。これは、出力を監視します 見る 中断されるまで実行されます(したがって、 CTRL+Cを押して終了します ) オプション 時