Linux

So verwenden Sie Netcat zum schnellen Übertragen von Dateien zwischen Linux-Computern

Es gibt keinen Mangel an Softwarelösungen, mit denen Sie Dateien zwischen Computern übertragen können. Wenn Sie dies jedoch sehr selten tun, können die typischen Lösungen wie NFS und SFTP (über OpenSSH) übertrieben sein. Darüber hinaus sind diese Dienste permanent offen für den Empfang und die Bearbeitung eingehender Verbindungen. Bei einer falschen Konfiguration kann dies Ihr Gerät für bestimmte Angriffe anfällig machen.

netcat, das sogenannte „TCP/IP Schweizer Taschenmesser“, kann als Ad-hoc-Lösung für die Übertragung von Dateien über lokale Netzwerke oder das Internet verwendet werden. Es ist auch nützlich, um Daten zu/von Ihren virtuellen Maschinen oder Containern zu übertragen, wenn diese die Funktion nicht standardmäßig enthalten. Sie können es sogar als Copy-Paste-Mechanismus zwischen zwei Geräten verwenden.

Verwandt: So übertragen Sie Dateien sicher mit SCP unter Linux

So installieren Sie netcat auf verschiedenen Linux-Distributionen

Bei den meisten Linux-basierten Betriebssystemen ist dies vorinstalliert. Öffnen Sie ein Terminal und geben Sie Folgendes ein:

instagram story viewer
netcat

Wenn der Befehl nicht gefunden wird, installieren Sie das Paket, das netcat enthält, eine BSD-Variante. Es gibt auch die GNU-Version von netcat, die weniger Funktionen enthält. Sie benötigen netcat sowohl auf dem Computer, der die Datei empfängt, als auch auf dem, der sie sendet.

Installieren Sie das Dienstprogramm auf Debian-basierten Distributionen wie Ubuntu oder Linux Mint mit:

sudogeeignetInstallieren netcat-openbsd

Mit openSUSE, Folgen Sie den Anweisungen auf dieser Seite, spezifisch für Ihre genaue Verteilung.

Geben Sie unter Arch Linux den folgenden Befehl ein:

sudo pacman -S openbsd-netcat

Leider enthält die RedHat-Familie nicht die BSD- oder GNU-Varianten von netcat. Aus irgendeinem seltsamen Grund haben sie sich für nmap-ncat entschieden. Obwohl ähnlich, sind einige Befehlszeilenoptionen nicht verfügbar, zum Beispiel -N. Dies bedeutet, dass Sie eine Zeile wie z. B. ersetzen müssen nc -vlN 1234 > nc mit nc -vl 1234 > nc damit es auf RedHat/Fedora funktioniert.

So installieren Sie ncat auf RedHat:

sudolecker installieren nmap-ncat

Und auf Fedora:

sudodnfInstallieren nmap-ncat

So verwenden Sie netcat zum Übertragen von Dateien zwischen Linux-Computern

Suchen Sie auf dem Computer, der die Datei empfängt, die in Ihrem internen Netzwerk verwendete IP-Adresse.

IP-Route Holen Sie sich 8.8.8.8

Nach „src“ sehen Sie die interne Netzwerk-IP-Adresse des Geräts. Wenn die Ergebnisse aus irgendeinem Grund irrelevant sind, können Sie auch Folgendes versuchen:

ip die Anschrift

In dem als Beispiel angebotenen Screenshot ist die IP 10.11.12.10.

Geben Sie auf demselben Computer, der die Datei empfängt, diesen Befehl ein:

nc -vl44444> pick_desired_name_for_received_file

Geben Sie auf dem Computer, der die Datei sendet, Folgendes ein und ersetzen Sie 10.11.12.10 durch die IP, die Sie zuvor entdeckt haben:

nc -N 10.11.12.10 44444/Weg/zu/Datei/Sie/will/zu/senden

Verzeichnis- und Dateipfade können absolut oder relativ sein. Ein absoluter Pfad ist „/home/user/Pictures/file.png“. Wenn Sie sich jedoch bereits in „/home/user“ befinden, können Sie den relativen Pfad „Pictures/file.png“ verwenden, wie im obigen Screenshot zu sehen.

Im ersten Befehl wurden zwei Parameter verwendet: -v und -l. -v macht die Ausgabe ausführlich und gibt mehr Details aus, damit Sie sehen können, was vor sich geht. -l lässt das Dienstprogramm auf Port 44444 „lauschen“ und öffnet im Wesentlichen einen Kommunikationskanal auf dem empfangenden Gerät. Wenn Firewall-Regeln aktiv sind, stellen Sie sicher, dass diese die Verbindung nicht blockieren.

Im zweiten Befehl, -N lässt netcat schließen, wenn die Übertragung abgeschlossen ist.

Normalerweise würde netcat alles, was es empfängt, im Terminal ausgeben. > erstellt eine Weiterleitung für diese Ausgabe. Anstatt es auf dem Bildschirm zu drucken, sendet es die gesamte Ausgabe an die nachfolgend angegebene Datei >. funktioniert umgekehrt und nimmt Eingaben aus der angegebenen Datei entgegen, anstatt auf Eingaben von der Tastatur zu warten.

Wenn Sie die obigen Befehle ohne Umleitungen verwenden, z. nc -vl 44444 und Öffner -N 10.11.12.10 44444, erstellen Sie einen rudimentären „Chat“ zwischen den beiden Geräten. Wenn Sie etwas in ein Terminal schreiben und die Eingabetaste drücken, wird es auf dem anderen Computer angezeigt. So können Sie Text von einem Gerät auf das andere kopieren und einfügen. Drücken Sie Strg + D (auf dem Absender) oder Strg + C (überall), um die Verbindung zu schließen.

Dateiübertragungen optimieren

Wenn Sie große Dateien senden, können Sie diese im Handumdrehen komprimieren, um die Übertragung zu beschleunigen.

Geben Sie auf der Empfangsseite ein:

nc -vl44444|gunzip> pick_desired_name_for_file

Geben Sie auf dem Absender Folgendes ein und ersetzen Sie 10.11.12.10 durch die IP-Adresse Ihres empfangenden Geräts:

gzip-C/Weg/zu/Datei/Sie/will/zu/senden | nc -N 10.11.12.10 44444

Verzeichnisse senden und empfangen

Natürlich möchten Sie manchmal mehrere Dateien gleichzeitig senden, beispielsweise ein ganzes Verzeichnis. Im Folgenden werden sie auch komprimiert, bevor sie über das Netzwerk gesendet werden.

Verwenden Sie auf der Empfangsseite diesen Befehl:

nc -vl44444|Teer zxv

Verwenden Sie auf dem sendenden Gerät:

Teer czp /Weg/zu/Verzeichnis/zu/senden | nc -N 10.11.12.10 44444

Abschluss

Vorzugsweise würden Sie dies nur in Ihrem lokalen Netzwerk verwenden. Der Hauptgrund ist, dass der Netzwerkverkehr unverschlüsselt ist. Wenn Sie dies über das Internet an einen Server senden würden, könnten Ihre Datenpakete entlang des Netzwerkpfads abgefangen werden. Wenn die von Ihnen übertragenen Dateien jedoch keine sensiblen Daten enthalten, ist dies kein echtes Problem. Auf Servern ist jedoch normalerweise SSH so vorkonfiguriert, dass sichere FTP-Verbindungen akzeptiert werden, und Sie können stattdessen SFTP für Dateiübertragungen verwenden.

Offenlegung von Partnern: Make Tech Easier kann Provisionen für Produkte verdienen, die über unsere Links gekauft wurden, was die Arbeit unterstützt, die wir für unsere Leser leisten.

insta viewer

Lies jetzt

  • Es besteht nach wie vor ein anhaltendes Interesse an Facebook und der Verwendung unserer Daten sowie deren ethischen Grundsätzen. Es scheint, dass es egal ist, ob Sie ein Facebook-Benutzer sind. Si...
  • HEIC ist ein Dateiformat, das Apple verwendet, um Bilder auf seinen Geräten zu komprimieren, damit die Bilder kleiner sind, aber ihre ursprüngliche Qualität behalten. Während das für Apple-Benutzer...
  • Microsoft hat beschlossen, die Benutzeroberfläche von Windows 8 mit dem Namen Windows 8 Blue zu aktualisieren. Nach einem Blick auf das Update scheint es, als ob sich Windows weniger in Richtung ei...
Teachs.ru