In diesem Artikel wird hauptsächlich die grundlegende Verwendung des Befehls nc im Linux-System vorgestellt. Der Befehl nc ist sehr leistungsfähig. Hier finden Sie eine kurze Einführung in seine grundlegende Verwendung für das Port-Scannen und die Dateiübertragung.
Funktionsbeschreibung: Ein leistungsstarkes Netzwerktool <( ̄▽ ̄)>, das als „Schweizer Taschenmesser“ unter den Netzwerktools bekannt ist und über Windows- und Linux-Versionen verfügt. Da es kurz, prägnant und praktisch ist, ist es als einfaches und zuverlässiges Netzwerktool konzipiert, das Lese- und Schreibdaten über TCP- oder UDP-Protokolle übertragen kann. Gleichzeitig ist es auch ein Debug-Analysator für Netzwerkanwendungen, da es je nach Bedarf verschiedene Arten von Netzwerkverbindungen erstellen kann.
nc kann die folgenden Netzwerkfunktionen bereitstellen:
1) Hören Sie auf einen bestimmten Port, dann kann nc als Server verwendet werden, aber ich habe festgestellt, dass der durch die Verwendung von nc auf diese Weise generierte Server nur ein Echoserver ist. und es gibt keine andere leistungsfähigere Funktion.
2) Stellen Sie eine Verbindung zu einem bestimmten Port her. Ebenso ist es ein einfacher Client, der nur die Rolle eines Echos spielen kann ) Scannen Sie den Port, der als Abfrage verwendet werden kann, ob ein bestimmter Port auf einem bestimmten Computer geöffnet ist.
Einige spezifische Anwendungsbeispiele
Beispiel 1:
Verwenden Sie nc zum Öffnen ein bestimmter Port unter Linux
nc -lp 23 & (d. h. Telnet)
netstat -an|grep 23 (prüfen Sie, ob der Port normal geöffnet ist)
Beispiel 2:
Verwenden Sie nc für Dateiübertragung, Befehl
ssh root@www.freetstar. com "( nc -l 10003 > Ziel 2>/dev/null & )" && cat source | zum Remote-Host www.freetstar.com über ssh und verwenden Sie den Befehl nc. Öffnen Sie den lokalen 10003-Port und werden Sie ein Hintergrundprozess. Öffnen Sie nach
&& die Quelldatei auf dem lokalen Computer und leiten Sie sie an Port 10003 von www um. freetstar.com, das heißt, lassen Sie die Remote-Website www.freetstar.com die Portnummer 10003 hosten. Quelldatei empfangen
Beispiel 3:
Verwenden Sie nc, um einen bestimmten Port unter Linux zu scannen
nc -v -z host.example.com 70-80
Scan-Port (70 bis 80), der Bereich kann angegeben werden. -v gibt ausführliche Informationen aus.
Beispiel 4:
Festplatte oder Partition klonen
Ähnlich wie in Beispiel 2 müssen Sie nur die Daten der Festplatte oder Partition von dd beziehen und diese dann übertragen.
Der Vorgang des Klonens einer Festplatte oder Partition sollte nicht auf einem gemounteten System durchgeführt werden. Daher müssen Sie zum Booten die Installations-CD verwenden, in den Rettungsmodus wechseln (oder die Knoppix-Tool-CD verwenden), um das System zu starten und dann auf
Server1 auszuführen: # nc -l -p 1234 | /sda
Ausführen auf Server1. Hören Sie auf Port 1234 und speichern Sie die erhaltene Datei in /dev/sda
Ausführen auf Server2: # dd if=/dev/sda | nc server1 1234
Beispiel 5:
Speichern Sie die Webseite
while true; do nc -l -p 80 -q 1 < somepage.html>Beispiel 6:
HTTP-Header simulieren
[root @hatest1 ~]# nc www .huanxiangwu.com 80
GET/HTTP/1.1
Host: ispconfig.org
Referrer: mypage.com
User-Agent: my-browser
Nachher Geben Sie mit dem Befehl nc den Inhalt des roten Teils ein und drücken Sie dann zweimal die Eingabetaste, um den Inhalt der HTTP-Header von der anderen Partei zu erhalten.
Beispiel 7:
Chat
Überwachen Sie Port 1234 auf Server1 [root@hatest2 tmp]# nc -lp 1234
Senden Sie eine Nachricht über Port 1234 auf Server2 an Server1 [root@hatest1 ~] # nc server1 1234
Auf diese Weise können beide Parteien miteinander kommunizieren. Verwenden Sie Strg+D, um den Vorgang normal zu beenden.
Weitere Informationen zur Verwendung finden Sie auf der Manpage
nc example.host port Öffnet eine TCP-Verbindung zum Port auf dem example.host-Host. Wenn die Verbindung fehlschlägt, wird keine Fehlermeldung angezeigt und einfach beendet
nc -p 31337 -w 5 example.host 42 öffnet sich mit Beispiel. Eine TCP-Verbindung auf Port 42 des Host-Hosts. Verwenden Sie 31337 als Quellport und die Timeout-Verbindungszeit beträgt 5 Sekunden
nc -u example.host 53 Geben Sie das Protokoll als UDP-Protokoll an
Syntax: nc [-hlnruz][-g
Parameter:
-g
-G
-h Online-Hilfe.
-i
-l Verwenden Sie den Abhörmodus, um eingehende Daten zu steuern.
-n Verwenden Sie die IP-Adresse direkt, anstatt den Domänennamenserver zu verwenden.
-o
-p
-r Eine Zufallszahl gibt den Kommunikationsport zwischen dem lokalen und dem Remote-Host an.
-s
-u UDP-Transportprotokoll verwenden.
-v Zeigt den Befehlsausführungsprozess an.
-w
-z 0 Eingabe-/Ausgabemodus verwenden, wird nur beim Scannen von Kommunikationsports verwendet.
Werfen wir einen Blick auf die grundlegende Verwendung:
1. Hören Sie auf den lokalen Port
root@10.1.1.43:~# nc -l -p 1234 root@10.1.1.43:~# netstat -tunlp | grep 1234
tcp 0 0 0.0.0.0:1234 0.0. 0.0:* LISTEN 15543/nc
2. Port-Scan
root@10.1.1.43:~# nc -v -w 10 10.1.1.180 80
(UNBEKANNT) [10.1.1.180] 80 (www) offen
root@10.1.1.43:~# nc -v -w 10 10.1.1.180 -z 80-30000
(UNBEKANNT) [10.1.1.180] 22000 (?) offen
(UNBEKANNT) [10.1.1.180] 80 (www) offen
3. Datei ausgehend
Quelle 10.1.1.43 text.txt
Ziel 10.1.1.180
root@10:~# nc -l -p 1234 > test.txt #开10.1.1.180:1234端口监听,并将socket传输过来的数据重定向到test.txt文件 test 43 nc root@10.1.1.43:~#cat test.txt root@10.1.1.43:~# nc 10.1.1.180 1234 < test.txt #连接远程的10.1.1.180,从test.txt的路径从定向到socket,从而将文件传输到远方。 root@10:~# cat test.txt test 43 nc
4. Verzeichnisübertragung
Quelle 10.1.1.43 python_program
Zweck 10.1.1.180
root@10:~# nc -l -p 1234 | tar xzvf - root@10.1.1.43:~# tar czvf - python_program | nc 10.1.1.180 1234
python_program/
python_program/1.py
python_program/4.py
python_program/3.py
5. UDP-Port testen
root@172.16.211.34:web# netstat -tunlp
Aktive Internetverbindungen (nur Server)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Programmname
tcp 0 0 0.0 .0.0 ; 0.0.0.0:* 887/dhclient
root@172.16.211.35:~# nc -vuz 172.16.211.34 68
Das obige ist der detaillierte Inhalt vonWas ist der NC-Befehl im Linux-System? Detaillierte Erläuterung der Verwendung des NC-Befehls. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!