Socat
Socat is a command line based utility that establishes two bidirectional byte streams and transfers data between them.
Platform availability
Available on 1 of 9 platforms
- Unraid
- TrueNAS (not listed)
- Umbrel (not listed)
- ZimaOS (not listed)
- Proxmox (not listed)
- Helm (not listed)
- Mac (not listed)
- Windows (not listed)
- Linux (not listed)
Health score?A 0-100 score computed nightly from four factors: maintained (40%: recent commits and steady activity), popular (25%: GitHub stars, log scale), easy to install (20%: platforms, install notes, setup guides, Docker image) and light to run (15%: minimum RAM, ARM support). When the source code has been checked, a fifth factor, security check (20%: automated scan for committed secrets, unsafe desktop-app settings, known-vulnerable dependencies and project hygiene; any serious finding caps it at 20), is added. Factors without data are left out and the rest are rescaled.
23/100 Low
- Maintained
- 0last commit 2550 days ago
- Popular
- 50331 GitHub stars
- Easy to install
- 351 install platform, install notes, Docker image
- Light to run
- No data
Based on 3 of 4 factors.
Availability: platform listings confirmed today, links checked 15 days ago
- GitHub stars
- 331
- Open issues
- 5
- Last commit
- 2019-10-22
- Latest release
- v1.7.3.3
- License
- GPL-2.0
- Activity
- stale
Checked 7 days ago - source: GitHub (3ndG4me/socat)
Resources & Compatibility
ARM (e.g. Raspberry Pi) is not supported.
Checked 17 days ago - source: Docker Hub image tags and published docs
First-install notes
- Set and open the listening port In the address, the number after TCP-LISTEN is the port (a numbered door for network traffic) socat will listen on, for example TCP-LISTEN:8080. If that port is not open in your firewall, clients on the outside will not be able to connect. source
- Use certificate files for SSL For OPENSSL-LISTEN, add cert= and key= pointing to your certificate and private key, and cafile= with a trusted certificate list when verifying clients. If those files are missing or wrong, encrypted connections will not start. source
- For TUN tunnels, keep the up option If you are running the TUN (virtual network interface) server, use a command that includes the virtual network IP, such as TUN:192.168.255.1/24, and keep the up option. Without up, the tunnel interface may stay down and no traffic will flow. source
- Install Download pre-built Linux, Windows, or macOS binaries from the repository's Releases section. source
Fetched 7 days ago - each note links to its source
Variants
Alternatives (1)
- netcat - Netcat is a featured networking utility which reads and writes data across network connections, using the TCP/IP protocol.
Checked 14 days ago - source: AlternativeTo
Common questions
Why can't outside clients connect to my socat TCP-LISTEN port?
The number after TCP-LISTEN is the port that socat listens on. If that port is not open in the firewall, outside clients cannot connect.
How do I configure certificate files for a socat OPENSSL-LISTEN endpoint?
For OPENSSL-LISTEN, add cert= and key= pointing to your certificate and private key. If you verify clients, also set cafile= with the trusted certificate list; missing or wrong files prevent encrypted connections from starting.
Why does a socat TUN server have no traffic?
Keep the up option on the TUN address and include the virtual network IP, such as TUN:192.168.255.1/24. Without up, the tunnel interface may stay down and no traffic will flow.
Which socat versions fixed the recent SOCKS5 reply parser vulnerability?
Socat 1.8.1.2 fixed a heap buffer overflow in the SOCKS5 reply parser. Socat 1.8.1.3 fixed the test for that issue on platforms with a non-bash default shell.
Can socat forward a network client to a script's standard input and output?
A network client can send data that socat forwards to the script's standard input. The script's standard output can then go back through socat to the client.
Answers sourced from www.dest-unreach.org, github.com, github.com, github.com, stackoverflow.com
Community
- Is socat on a VPS a good idea to hide my home IP? : r/selfhosted - Reddit (reddit)
- Self hosted ngrok alternative : r/selfhosted - Reddit (reddit)
- Help needed with using socat : r/linuxquestions - Reddit (reddit)
- Circumventing Deep Packet Inspection with Socat and rot13 - Reddit (reddit)
- Do you netcat or socat or other rirst? : r/oscp - Reddit (reddit)
Collected 16 days ago - public community threads