Zum Inhalt springen

Socat: Unterschied zwischen den Versionen

Aus Foxwiki
Zeile 33: Zeile 33:


== Anwendung ==
== Anwendung ==
Daten von stdin über TCP an 192.168.0.10:80 senden und Antwort anzeigen
<syntaxhighlight lang="bash" highlight="1" line copy>
<syntaxhighlight lang="bash" highlight="1" line copy>
socat - TCP:192.168.0.10:80
</syntaxhighlight>
</syntaxhighlight>


Send data from stdin to 192.168.0.10:80 over TCP and show response
Auf Port 8080 lauschen und Datenverkehr an 192.168.0.10 auf Port 80 weiterleiten
socat - TCP:192.168.0.10:80
<syntaxhighlight lang="bash" highlight="1" line copy>
socat TCP-LISTEN:8080,fork TCP:192.168.0.10:80
</syntaxhighlight>


Listen on port 8080 and forward traffic to 192.168.0.10 at port 80
Erstellen Sie einen einfachen TCP-Echo-Server auf Port 9000
socat TCP-LISTEN:8080,fork TCP:192.168.0.10:80
<syntaxhighlight lang="bash" highlight="1" line copy>
socat TCP-LISTEN:9000,reuseaddr fork EXEC:/bin/cat
</syntaxhighlight>


Create a simple TCP echo server on port 9000
Leiten Sie den Datenverkehr zwischen den Ports 1234 und 5678 auf localhost weiter u
socat TCP-LISTEN:9000,reuseaddr fork EXEC:/bin/cat
<syntaxhighlight lang="bash" highlight="1" line copy>
socat TCP4-LISTEN:1234 fork TCP4:localhost:5678
</syntaxhighlight>


Relay traffic between ports 1234 and 5678 on localhost u
Lesen Sie die Eingabe vom Terminal und senden Sie sie an den UDP-Server study-notes.org#
socat TCP4-LISTEN:1234 fork TCP4:localhost:5678
<syntaxhighlight lang="bash" highlight="1" line copy>
socat STDIN UDP:192.168.0.10:5678 Dan Nanni
</syntaxhighlight>


Read input from the terminal and send it to UDP server study-notes.org#
Stellen Sie eine Datei über TCP bereit. Verbinden Sie sich mit Port 8081, um die Protokolldatei zu lesen
socat STDIN UDP:192.168.0.10:5678 Dan Nanni
<syntaxhighlight lang="bash" highlight="1" line copy>
socat TCP-LISTEN:8081,fork FILE:/path/to/output.log
</syntaxhighlight>


Serve a file over TCP. Connect to port 8081 to read the log file
Daten über TCP an Port 6000 empfangen und an eine lokale Datei anhängen
socat TCP-LISTEN:8081,fork FILE:/path/to/output.log
<syntaxhighlight lang="bash" highlight="1" line copy>
socat TCP-LISTEN:6000,reuseaddr OPEN:/path/to/file,create,append
</syntaxhighlight>


Receive data over TCP at port 6000 and append it to a local file
Leiten Sie den TCP-Datenverkehr an Port 7000 an ein serielles Gerät mit einer Baudrate von 115200 weiter
socat TCP-LISTEN:6000,reuseaddr OPEN:/path/to/file,create,append
<syntaxhighlight lang="bash" highlight="1" line copy>
socat TCP-LISTEN:7000,fork /dev/ttyUSB0,b115200,raw
</syntaxhighlight>


Forward TCP traffic on port 7000 to a serial device at 115200 baud rate
Auf einem UNIX-Socket lauschen und eingehende Daten wiedergeben
socat TCP-LISTEN:7000,fork /dev/ttyUSB0,b115200,raw
<syntaxhighlight lang="bash" highlight="1" line copy>
socat UNIX-LISTEN:/tmp/mysocket,fork EXEC:/bin/cat
</syntaxhighlight>


Listen on a UNIX socket and echo incoming data
500 ms Verzögerung für weitergeleiteten Datenverkehr zwischen den Ports 12345 und 80 einführen
socat UNIX-LISTEN:/tmp/mysocket,fork EXEC:/bin/cat
<syntaxhighlight lang="bash" highlight="1" line copy>
socat TCP4-LISTEN:12345,fork,delay=500ms TCP4:localhost:80
</syntaxhighlight>


Introduce 500ms delay to forwarded traffic between ports 12345 and 80
Verbindung zu example.com auf Port 443 herstellen und dabei die Zertifikatsüberprüfung deaktivieren
socat TCP4-LISTEN:12345,fork,delay=500ms TCP4:localhost:80
<syntaxhighlight lang="bash" highlight="1" line copy>
socat - OPENSSL:example.com:443,verify=0
</syntaxhighlight>


Connect to example.com on port 443 while disabling certificate verification
Auf Port 8443 über SSL/TLS als einfacher SSL-Echo-Server lauschen
socat - OPENSSL:example.com:443,verify=0
<syntaxhighlight lang="bash" highlight="1" line copy>
socat OPENSSL-LISTEN:8443,cert=server.pem,verify=0,fork EXEC:/bin/cat
</syntaxhighlight>


Listen on port 8443 over SSL/TLS as a simple SSL echo server
Auf lokalem Port 8080 lauschen und Datenverkehr über SSL/TLS an example.com weiterleiten
socat OPENSSL-LISTEN:8443,cert=server.pem,verify=0,fork EXEC:/bin/cat
<syntaxhighlight lang="bash" highlight="1" line copy>
socat TCP-LISTEN:8080,fork OPENSSL:www.example.com:443,verify=0
</syntaxhighlight>


Listen on local port 8080 and forward traffic to example.com over SSL/TLS
SSL-Verbindungen auf 8443 akzeptieren und an Nicht-SSL 8080 weiterleiten
socat TCP-LISTEN:8080,fork OPENSSL:www.example.com:443,verify=0
<syntaxhighlight lang="bash" highlight="1" line copy>
 
socat OPENSSL-LISTEN:8443,cert=test.pem,verify=0,fork TCP:localhost:8080
Accept SSL connections on 8443 and forward them to non-SSL 8080
</syntaxhighlight>
socat OPENSSL-LISTEN:8443,cert=test.pem,verify=0,fork TCP:localhost:8080


=== Problembehebung ===
=== Fehlerbehebung ===


== Konfiguration ==
== Konfiguration ==

Version vom 14. Oktober 2025, 12:09 Uhr

Socat - Beschreibung

Beschreibung

Installation

Aufruf

Optionen

Unix GNU Parameter Beschreibung

Parameter

Umgebungsvariablen

Exit-Status

Wert Beschreibung
0 Erfolg
>0 Fehler

Anwendung

Daten von stdin über TCP an 192.168.0.10:80 senden und Antwort anzeigen

socat - TCP:192.168.0.10:80

Auf Port 8080 lauschen und Datenverkehr an 192.168.0.10 auf Port 80 weiterleiten

socat TCP-LISTEN:8080,fork TCP:192.168.0.10:80

Erstellen Sie einen einfachen TCP-Echo-Server auf Port 9000

socat TCP-LISTEN:9000,reuseaddr fork EXEC:/bin/cat

Leiten Sie den Datenverkehr zwischen den Ports 1234 und 5678 auf localhost weiter u

socat TCP4-LISTEN:1234 fork TCP4:localhost:5678

Lesen Sie die Eingabe vom Terminal und senden Sie sie an den UDP-Server study-notes.org#

socat STDIN UDP:192.168.0.10:5678 Dan Nanni

Stellen Sie eine Datei über TCP bereit. Verbinden Sie sich mit Port 8081, um die Protokolldatei zu lesen

socat TCP-LISTEN:8081,fork FILE:/path/to/output.log

Daten über TCP an Port 6000 empfangen und an eine lokale Datei anhängen

socat TCP-LISTEN:6000,reuseaddr OPEN:/path/to/file,create,append

Leiten Sie den TCP-Datenverkehr an Port 7000 an ein serielles Gerät mit einer Baudrate von 115200 weiter

socat TCP-LISTEN:7000,fork /dev/ttyUSB0,b115200,raw

Auf einem UNIX-Socket lauschen und eingehende Daten wiedergeben

socat UNIX-LISTEN:/tmp/mysocket,fork EXEC:/bin/cat

500 ms Verzögerung für weitergeleiteten Datenverkehr zwischen den Ports 12345 und 80 einführen

socat TCP4-LISTEN:12345,fork,delay=500ms TCP4:localhost:80

Verbindung zu example.com auf Port 443 herstellen und dabei die Zertifikatsüberprüfung deaktivieren

socat - OPENSSL:example.com:443,verify=0

Auf Port 8443 über SSL/TLS als einfacher SSL-Echo-Server lauschen

socat OPENSSL-LISTEN:8443,cert=server.pem,verify=0,fork EXEC:/bin/cat

Auf lokalem Port 8080 lauschen und Datenverkehr über SSL/TLS an example.com weiterleiten

socat TCP-LISTEN:8080,fork OPENSSL:www.example.com:443,verify=0

SSL-Verbindungen auf 8443 akzeptieren und an Nicht-SSL 8080 weiterleiten

socat OPENSSL-LISTEN:8443,cert=test.pem,verify=0,fork TCP:localhost:8080

Fehlerbehebung

Konfiguration

Dateien

Datei Beschreibung


Anhang

Siehe auch



Dokumentation

Man-Page
  1. prep(1)


Links

Projekt

Weblinks