技術共有

Netcat: - ネットワークのスイス アーミー ナイフ

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Netcat: ネットワークのスイス アーミー ナイフ

概要

Netcat (nc とも呼ばれます) は、ネットワークのテストとデバッグに広く使用されている強力なネットワーク ツールです。ネットワーク データの読み書きが可能で、TCP および UDP プロトコルをサポートし、ポート スキャン、ポート モニタリング、ファイル転送などの目的に使用できます。

主目的

  • サーバー情報の取得: コマンド ライン ツールを使用して、リモート サーバーの詳細なステータス情報を取得します。
  • リモート制御と通信: コンピュータ間の通信を実現し、リモート接続の確立と維持、データ送信と命令の実行をサポートします。
  • ファイル転送: システム管理とデータ移行に適した安全なファイルのアップロードとダウンロードには Netcat を使用します。
  • リモート ホストに接続する: Netcat を介してリモート サーバーとの通信を確立します。
  • ローカル接続のリッスン: Netcat を使用してローカル ポートを開き、他のデバイスからのデータをリッスンして受け入れることができます。

共通パラメータ

• -l: サービスを開始して接続を待機するために使用されるリスニング モード。
• -p: ポートを指定し、Netcat が使用するポート番号を設定します。
• -n: IP のみを使用し、DNS 解決は行いません。
• -v:詳細情報を表示し、接続処理中の詳細ステータスを出力します。
• -z: スキャン モード。ポート スキャンに使用されます。接続は確立されません。
• -u: UDP モード。デフォルトの TCP の代わりに UDP プロトコルを使用します。
• -c:コマンドを実行します。接続確立後に指定したコマンドが自動的に実行されます。
• -e: プログラムのリダイレクト。標準入出力を指定されたプログラムにリダイレクトします。

使用例

  • TCP接続を確立する
 nc [hostname] [port]
  • 1

たとえば、xxx.com のポート 80 に接続します。

nc xxx.com 80
  • 1
  • TCPポートでリッスンする
nc -l [port]
  • 1

たとえば、ローカル ポート 5555 をリッスンします。

nc -l 5555
  • 1
  • データ送信
nc -l [port] > [output_file]
nc [hostname] [port] < [input_file]
  • 1
  • 2

たとえば、ローカル ファイルをリモート サーバーに転送するには、次のようにします。

nc -l 1234 > received_file
nc localhost 1234 < file_to_send
  • 1
  • 2
  • ポートスキャン
nc -zv [hostname] [port]
  • 1

たとえば、xxx.com のポート 80 をスキャンします。

nc -zv xxx.com 80
  • 1
  • リモート サーバーへの TCP 接続を確立します。
nc xxx.com 80
  • 1
  • ローカル ポートでリッスンし、接続を待ちます。
nc -l 1234
  • 1
  • ローカル ファイルをリモート サーバーに転送します。
nc -l 1234 > received_file
nc localhost 1234 < file_to_send
  • 1
  • 2
  • リモート ホストのポートをスキャンします。
nc -zv xxx.com 80
  • 1