Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

1.7. ncat ユーティリティーを使用したデータの管理

ncat ネットワークユーティリティーは、Red Hat Enterprise Linux 7 の netcat に代わるものです。ncat は、信頼できるバックエンドツールで、他のアプリケーションやユーザーとネットワーク接続できるようにします。これはコマンドラインからデータを読み取り、書き込みを行い、通信に Transmission Control Protocol (TCP)、User Datagram Protocol (UDP)、Stream Control Transmission Protocol (SCTP)、Unix ソケットを使用します。ncat は、IPv4 および IPv6 の両方を処理し、オープン接続の作成、ポートスキャンの実行、SSL などの高度な機能、接続ブローカーをサポートします。
同じオプションを使用して、nc コマンドも ncat として入力できます。ncat オプションの詳細は、Migration Planning Guide の New networking utility (ncat) セクションおよび『ncat(1)』man ページを参照してください。

ncat のインストール

ncat パッケージをインストールするには、root で以下のコマンドを実行します。
~]# yum install ncat

ncat ユースケースの簡単な例

例1.1 クライアントとサーバーとの間の通信の有効化

  1. TCP ポート 8080 で接続をリッスンするように、クライアントマシンを設定します。
    ~]$ ncat -l 8080
  2. サーバーマシンで、クライアントの IP アドレスを指定し、同じポート番号を使用します。
    ~]$ ncat 10.0.11.60 8080
    接続のいずれの側でもメッセージを送信でき、ローカルマシンとリモートマシンの両方に表示されます。
  3. Ctrl+D を押して、TCP 接続を閉じます。
注記
UDP ポートを確認するには、同じ nc コマンドに –u オプションを使用します。以下に例を示します。
~]$ ncat -u -l 8080

例1.2 ファイルの送信

前の例で説明したように情報を画面に表示するのではなく、すべての情報をファイルに送信できます。たとえば、TCP ポート 8080 を介してクライアントからサーバーにファイルを送信するには、次の手順を実行します。
  1. クライアントマシンで、ファイルをサーバーマシンに転送する特定のポートをリッスンするには、次のコマンドを実行します。
    ~]$  ncat -l 8080 > outputfile
  2. サーバーマシンで、クライアントの IP アドレス、ポート、および転送するファイルを指定します。
    ~]$  ncat -l 10.0.11.60 8080 < inputfile
ファイルが転送されると、接続は自動的に閉じます。
注記
他の対象にファイルを転送することもできます。
~]$  ncat -l 8080 < inputfile
~]$  ncat -l 10.0.11.60 8080 > outputfile

例1.3 HTTP プロキシーサーバーの作成

localhost ポート 8080 に HTTP プロキシーサーバーを作成するには、以下を実行します。
~]$  ncat -l --proxy-type http localhost 8080

例1.4 ポートのスキャン

開いているポートを確認するには、–z オプションを使用して、スキャンするポートの範囲を指定します。
~]$  ncat -z 10.0.11.60 80-90
    Connection to 192.168.0.1 80 port [tcp/http] succeeded!

例1.5 SSL を使用した安全なクライアントサーバー通信の設定

サーバーに SSL を設定します。
~]$ ncat -e /bin/bash -k -l 8080 --ssl
クライアントマシンで、次のコマンドを実行します。
~]$ ncat --ssl 10.0.11.60 8080
注記
SSL 接続で真の機密性を保証するには、サーバーでは --ssl-cert オプションおよび --ssl-key オプションが、またクライアントでは --ssl-verify オプションおよび --ssl-trustfile オプションが必要となります。OpenSSL の詳細は、『セキュリティーガイド』の 「OpenSSL の使用」を参照してください。
その他の例は、『ncat(1)』の man ページを参照してください。