GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So verwenden Sie den Netcat-Befehl zum Lesen und Schreiben von Daten über das Netzwerk

Lesen und Schreiben sind die grundlegenden Operationen, die auf Daten in jedem System angewendet werden können. TCP wird als Transmission Control Protocol abgekürzt und ist ein verbindungsorientiertes Kommunikationsprotokoll, das Computern in einem Netzwerk das Senden und Empfangen von Nachrichten erleichtert. Es ist das am weitesten verbreitete Protokoll in Netzwerken, die das Internet Protocol (IP) verwenden. es wird manchmal als TCP/IP bezeichnet, wenn es gemeinsam verwendet wird. UDP, abgekürzt als User Datagram Protocol, ist ein Kommunikationsprotokoll, das verwendet wird, um Verbindungen mit niedriger Latenz und verlusttoleranten Verbindungen zwischen Anwendungen im Internet aufzubauen. In diesem Artikel besprechen wir den Befehl „Netcat“, der zum Lesen und Beschreiben von Festplatten über Netzwerke mit TCP- und UDP-Protokollen unter Ubuntu 20.04 (Linux OS) verwendet wird.

Die Netcat-Dienstprogrammanwendung enthält mehrere Anweisungen zum Verwalten von Netzwerken und zum Überwachen des Datenniveaus zwischen Systemen. Die TCP- und UDP-Protokolle sind die Grundlage von Computernetzwerken wie dem Internet. Es gilt als das Schweizer Taschenmesser unter den Netzwerktools und gehört zu den effektivsten Tools im Arsenal von Netzwerk- und Systemadministratoren. Netcat ist ein plattformübergreifendes Programm, das unter Linux, Windows, Mac OS X und BSD läuft. Netcat kann zum Debuggen und Analysieren von Verbindungsproblemen sowie zum Scannen nach offenen Ports, zum Übertragen von Daten und zum Agieren als Proxy verwendet werden.

Verwenden von Netcat zum Lesen und Schreiben von Daten im gesamten Netzwerk

Auf macOS und gängigen Linux-Distributionen wie Ubuntu und Debian ist das Netcat-Paket vorinstalliert. Einige der „Netcat“-Dienstprogramme werden unten erwähnt.

  • Port-Scanning über Netcat durchführen
  • Dateien über Netcat senden
  • Erstellen Sie einen Webserver über Netcat

Syntax:

$ nc [options] host port

Auf Ubuntu-Systemen wird entweder „nc“ oder „netcat“ verwendet.

Es wird eine TCP-Verbindung hergestellt, um standardmäßig Host/Hosts und Port/Ports von Netcat bereitzustellen. Verwenden Sie die Option -u, wenn Sie eine UDP-Verbindung erstellen möchten.

$ nc -u host port

Port-Scanning über Netcat durchführen

Eine der am weitesten verbreiteten Netcat-Anwendungen ist das Scannen von Ports. Sie haben die Möglichkeit, einen einzelnen Port oder eine Reihe von Ports zu scannen.

TCP:

Nach offenen Ports suchen:

Um die offenen Ports im Bereich von 30-60 mit Netcat zu scannen, führen Sie den unten genannten Befehl aus:

$ nc -z -v 10.0.2.15 30-60

-z weist NC an, nur nach offenen Ports zu suchen und keine Daten an sie zu senden.

-v sagt die Info über verbose.

Filtern Sie das Ergebnis mit dem grep-Befehl:

$ nc -z -v 10.0.2.15 2>&1 | grep succeeded

In diesem Bereich war keine Verbindung erfolgreich.

UDP:

Fügen Sie dem Skript einfach den Parameter -u hinzu, um im unten genannten Befehl nach UDP-Ports zu suchen:

$ nc -z -v -u 10.0.2.15 30-60

Es gibt keinen UDP-Port in diesem Bereich.

Senden von Dateien über Netcat

Durch die Einrichtung eines grundlegenden Client- oder Servermodells kann Netcat verwendet werden, um Daten von einem Host zu einem anderen zu transportieren. Dies wird erreicht, indem die Option -l auf dem empfangenden Host verwendet wird, um Netcat so einzustellen, dass es einen bestimmten Port überwacht, dann eine Standard-TCP-Verbindung von mehreren Computern herstellt und die Datei darüber überträgt.

Führen Sie den unten genannten Befehl auf der Empfängerseite aus, der Port 6666 für eingehende Verbindungen öffnet und das Ausgabeergebnis in die Datei umleitet:

$ nc -l 6666 > linux1.txt

Linux1.txt ist der Dateiname, der zum Schreiben geöffnet werden soll, und Sie können den Dateinamen Ihren Anforderungen entsprechend ändern.

Jetzt wird der empfangende Host mit dem sendenden Host verbunden und sendet die Datei:

$ nc google.com 6666 < linux2.txt

Erstellen eines Webservers über Netcat

Erstellen Sie zunächst eine einfache HTML-„linux, html“-Datei mit dem nano-Befehl:

$ nano linux.html

Geben Sie den unten aufgeführten Inhalt ein oder fügen Sie Inhalte gemäß Ihren Anforderungen gemäß den HTML-Dateiregeln hinzu.

<html>

 <head>

 <title> Linux<title>

 <head>

<html>

Speichern Sie mit „Strg+S“ und schließen Sie die Datei mit „Strg+X“.

$ printf 'HTTP/1.1 200 OK\n\n%s' "$(cat linux.html)" | netcat -l 8888

Jetzt können Sie im Browser über den unten angegebenen Link auf die Datei zugreifen:

http://server-ip:8888

Schlussfolgerung:

Netcat ist ein grundlegendes Linux-Dienstprogramm, das die TCP/UDP-Protokolle zum Lesen und Schreiben von Daten über Netzwerkverbindungen verwendet. Es soll ein zuverlässiges Backend-Tool sein, das direkt oder einfach von anderen Anwendungen und Programmen betrieben werden kann. Dieser Artikel enthält Informationen über die Verwendung von Netcat mit TCP- und UDP-Protokoll und einige andere Anwendungen wie das Scannen von Ports, das Senden von Dateien und das Erstellen eines Webservers.


Ubuntu
  1. So verwenden Sie den Befehl zum Herunterfahren von Linux in Ubuntu 18.04 und CentOS 7

  2. So erstellen Sie einen Alias ​​und verwenden den Alias-Befehl in Linux

  3. So verwenden Sie den Linux-Befehl mtr

  4. So installieren und verwenden Sie den Ping-Befehl unter Linux

  5. Verwendung des netplan-Befehls unter Ubuntu

So verwenden Sie Sudo und die Sudoers-Datei

So verwenden Sie den Befehl tcpdump in Ubuntu 20.04

So verwenden Sie den Linux Top-Befehl

So installieren und verwenden Sie den Exa-Befehl unter Ubuntu 20.04

So verwenden Sie den netstat-Befehl unter Linux

Linux perf:So verwenden Sie den Befehl und den Profiler