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

TCP-Proxying mit socat

Einführung:
In letzter Zeit musste ich für ein Projekt einen reinen bidirektionalen TCP-Proxy erstellen. Dafür gibt es viele Alternativen wie Haproxy, Nginx, Cat und Socat und andere. Wegen der Einfachheit des Befehls habe ich mich für socat entschieden, werde aber auch den Befehl für cat zeigen.

Die NCAT-Methode:
Der folgende Befehl verwendet eine Pipe, um die Daten in beide Richtungen zu transportieren. Es kann immer nur ein Client verbunden sein.
cd /var/tmp
mkfifo fifo &>/dev/null
/bin/nc -l -p $frontend_port -s $frontend_addr <fifo | /bin/nc $backend_addr $backend_port >fifo

Die SOCAT-Methode (am besten!):
Hinweis:Diese Methode führt den Befehl in einer Bildschirmsitzung aus, muss dies aber nicht, wenn der Prozess nur vorübergehend ausgeführt werden muss.
/usr/bin/screen -d -m /usr/bin/socat -d -d -lmlocal2 \
TCP4-LISTEN:$frontend_port,bind=$frontend_addr,reuseaddr,fork,su=daemon \
TCP4:$backend_addr:$backend_port,bind=$backend_iface_addr


Linux
  1. Verwendung von –exclude mit dem Du-Befehl?

  2. Schlafbefehl mit Bildschirmbefehl wird in Ps nicht angezeigt?

  3. So starten Sie Linux über die Befehlszeile neu

  4. Verwenden des Befehls ripgrep (rg) unter Linux

  5. Wie beendet man einen Prozess unter Linux mit dem Befehl?

Verwenden des kostenlosen Linux-Befehls

Tutorial zur Verwendung des Timeout-Befehls unter Linux

Planen Sie Jobs in Linux mit dem Befehl 'at'

Verwenden des Watch-Befehls unter Linux

So erstellen Sie eine Partition mit dem Befehl „parted“

Cut auf Linux Terminal verwenden