May 26, 2018
Multipurpose relay and more
socat is a relay for bidirectional data transfer between two independent data channels. Each of these data channels may be a file, pipe, device terminal or modem etc., socket UNIX, IP4, IP6 - raw, UDP, TCP, a file descriptor stdin etc., a program, or an arbitrary combination of two of these.
socat can be used, e.g., as TCP relay one-shot or daemon, as an external socksifier, for attacking weak firewalls, as a shell interface to UNIX sockets, IP6 relay, for redirecting TCP oriented programs like brutus to a serial line, or to establish a relatively secure environment su and chroot for running client or server shell scripts with network connections.