Windows system >> Windowsの知識 >  >> Linuxシステムチュートリアル >> Linuxチュートリアル >> 基本チュートリアルを使用したLinux Netcatコマンド

基本チュートリアルを使用したLinux Netcatコマンド

  

netcatは、TCPおよびUDPを介してネットワーク経由でデータの読み取りと書き込みを行うネットワークツールのスイスアーミーナイフです。他のツールと組み合わせてリダイレクトすることで、スクリプト内でさまざまな方法で使用できます。 netcatコマンドでできることは素晴らしいことです。

netcatが行うことは、2台のコンピュータ間にリンクを作成して2つのデータストリームを返すことです。その後、できることは想像力によって異なります。サーバーの設定、ファイルの転送、友人とのチャット、メディアのストリーミング、または他のプロトコルのスタンドアロンクライアントとしての使用が可能です。

以下はnetcatの使用例です。

[A(172.31.100.7)B(172.31.100.23)]

Linuxのnetcatコマンドの例:

1.ポートスキャンポートスキャンは、システム管理者やハッカーが、マシンのオープンポートを発見してシステムの脆弱性を特定するのに役立つことが多いためによく使用されます。

$ nc -z -v -n 172.31.100.7 21-25

はTCPまたはUDPモードで動作します。デフォルトはTCPです。-uパラメータはudp.zパラメータに調整されてnetcatに使用されます。 0 IOは、接続が閉じられるとデータ交換が行われないことを意味します(翻訳者注:ここでの翻訳は許可されていません。他にもある場合は、明記してください)。

vパラメーターは冗長オプションの使用を意味します注:つまり、冗長出力)

nこのパラメーターは、netcatにDNSを使用してIPアドレスのドメイン名を逆に照会しないように指示します。

このコマンドは、21から25のすべてのオープンポートを表示します。バナーはテキストであり、バナーはあなたが接続しているサービスによってあなたに送られるテキストメッセージです。バナー情報は、脆弱性やサービスの種類やバージョンを特定しようとしているときに非常に役立ちます。ただし、すべてのサービスがバナーを送信するわけではありません。

開いているポートを見つけたら、netcat接続サービスを使って簡単にバナーをクロールできます。

$ nc -v 172.31.100.7 21

netcatコマンドは、開いているポート21を接続し、このポートで実行されているサービスのバナー情報を表示します。

2.Chat Serverもしあなたがあなたの友達と話をしたいのなら、あなたが利用できるたくさんのソフトウェアと情報サービスがあります。ただし、コンピュータラボのように贅沢な設定がされていない場合は、すべての外部接続が制限されます。意気消沈してはいけません、netcatはそのような方法を提供します、あなたは彼があなたに連絡することができるようにあなたがチャットサーバー、あらかじめ決められたポートを作る必要があるだけです。

サーバー

$ nc -l 1567

netcatコマンドは、ポート1567でTCPサーバーを起動し、すべての標準出力と入力がそのポートに出力されます。出力と入力の両方がこのシェルに表示されています。

クライアント

$ nc 172.31.100.7 1567

Bマシンに何を入力しても、Aマシンに表示されます。

3.ファイル転送ほとんどの場合、ネットワークや他のツールを介してファイルを転送しようとしています。 FTP、SCP、SMBなど、さまざまな方法がありますが、一時的にまたは1回だけファイルを転送する必要がある場合は、ソフトウェアを自分のマシンにインストールして構成するには本当に価値があります。ファイルfile.txtをAからBに渡したいとします。 AまたはBをサーバーまたはクライアントとして使用することができます以下では、Aをサーバー、Bをクライアントとします。

サーバー

$ nc -l 1567< file.txt

クライアント$ nc -n 172.31.100.7 1567> file.txt

こちらAでサーバーを作成し、netcat入力をファイルfile.txtにリダイレクトし、netcatはポートへの接続が成功するとファイルのファイル内容を送信します。クライアント側では、BがAに接続され、Aがファイルの内容を送信し、Bがファイルの内容をfile.txtに保存するときに、出力をfile.txtにリダイレクトします。

サーバーとしてファイルソースを作成する必要はありません。使用した方法次のように、ファイルをBからAに送信しますが、サーバーはA上に作成されます。今回は、netcatの出力をリダイレクトし、Bの入力ファイルをリダイレクトするだけです。
サーバーとしての

サーバー

サーバー

$ nc -l 1567> file.txt

Clientnc 172.31.100.23 1567< file.txt

4.ディレクトリ転送ファイルの送信は簡単ですが、複数のファイルまたはディレクトリ全体を送信する場合は、圧縮ツールtarを使用してアーカイブを圧縮して送信するのと同じくらい簡単です。

ネットワークを介してディレクトリをAからBに転送する場合。

サーバー

$ tar -cvf– dir_name |  Nc -l 1567

クライアント$ nc -n 172.31.100.7 1567 |  Tar -xvf -

ここで、Aサーバー上で、tarアーカイブを作成して渡します - コンソールでリダイレクトしてから、パイプラインを使用してネットワーク経由で送信できるnetcatにリダイレクトします。クライアントサイドでは、netcatパイプライン経由でzipパッケージをダウンロードしてからファイルを開きます。

圧縮パッケージを転送するために帯域幅を節約したい場合は、bzip2または他のツールを使用して圧縮できます。

サーバー

$ tar -cvf– dir_name |  Bzip2 -z |  Nc -l 1567

bzip2で圧縮されたクライアント

クライアント

$ nc -n 172.31.100.7 1567 |  Bzip2-d | Tar -xvf -

bzip2による抽出

5.ネットワーク経由で送信するデータの暗号化ネットワーク経由でデータを送信する際のセキュリティが心配な場合は、データを送信する前にそれを使用できます。 Mcryptのツール暗号化

サーバー

$ nc localhost 1567 |  Mcrypt– flush– bare -F -q -d -m ecb> file.txt

データを暗号化するには、mcryptツールを使用します。クライアント$ mcrypt–フラッシュ– bare -F -q -m ecb< file.txt |  Nc -l 1567

mcryptツールを使用してデータを復号化します。上記の2つのコマンドはパスワードの入力を促し、両端が同じパスワードを使用するようにします。

ここでは暗号化にmcryptを使用していますが、他の暗号化ツールも使用できます。

6.ストリーミングビデオを生成するにはストリーミングビデオは最適な方法ではありませんが、netcatを使用してサーバーに特定のツールがない場合でも、それを行うことを望みます。

サーバー

Copyright © Windowsの知識 All Rights Reserved