Ist es möglich, einen Port zum Abhören ohne Netcat zu öffnen?

Ist es möglich, einen Port zum Abhören ohne Netcat zu öffnen?

Ich brauche ein Linux-System, das auf einem TCP-Port lauscht und die empfangenen Daten in eine Datei und/oder auf Standardausgabe überträgt. Auf dem System ist Netcat nicht installiert. Ich habe Root-Berechtigungen, darf dem System aber aus Compliance-Gründen keine neuen Anwendungen hinzufügen. Ist dies mit einem einfachen Bash-, Perl- oder Python-Skript möglich? Je einfacher, desto besser.

Antwort1

So öffnen Sie einen zufälligen Port mit Python:

import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((socket.gethostname(), 0))

So finden Sie heraus, welchen Port Sie geöffnet haben:

s.getsockname()[1]

So schließen Sie den Port:

s.close()

Weitere Informationen finden Sie unterdie Dokumentation zum Sockelmodul,die Steckdosen-Anleitung, oderein Socket-Tutorial.

verwandte Informationen