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 オプションの詳細は、『移行計画ガイドの新しいネットワーキングユーティリティー(ncat)および 『ncat(1)』 の 』 man ページを参照してください。
ncat のインストール
ncat パッケージをインストールするには、
root
で以下のコマンドを実行します。
~]# yum install ncat
ncat ユースケースの簡単な例
例1.1 クライアントとサーバーとの間の通信の有効化
- TCP ポート 8080 で接続をリッスンするように、クライアントマシンを設定します。
~]$ ncat -l 8080
- サーバーマシンで、クライアントの IP アドレスを指定し、同じポート番号を使用します。
~]$ ncat 10.0.11.60 8080
接続のいずれの側でもメッセージを送信でき、ローカルマシンとリモートマシンの両方に表示されます。 Ctrl+D
を押して、TCP 接続を閉じます。
注記
UDP ポートを確認するには、
-u
オプションを指定して同じ nc コマンドを使用します。以下に例を示します。
~]$ ncat -u -l 8080
例1.2 ファイルの送信
前の例で説明したように情報を画面に表示するのではなく、すべての情報をファイルに送信できます。たとえば、TCP ポート 8080 を介してクライアントからサーバーにファイルを送信するには、次の手順を実行します。
- クライアントマシンで、ファイルをサーバーマシンに転送する特定のポートをリッスンするには、次のコマンドを実行します。
~]$ ncat -l 8080 > outputfile
- サーバーマシンで、クライアントの 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 ページを参照してください。