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 は、IPv4IPv6 の両方を処理し、接続を開き、パケットを送信し、ポートスキャンを実行し、SSL、接続ブローカーなどの高レベルの機能をサポートします。
同じオプションを使用して、nc コマンドを ncat として入力することもできます。ncat オプションの詳細は、移行計画ガイドの新しいネットワーキングユーティリティー(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 ポートを確認するには、-u オプションを指定して同じ nc コマンドを使用します。以下に例を示します。
~]$ 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 ページを参照してください。