Packages and Binaries:
sslh
sslh lets one accept HTTPS, SSH, OpenVPN, tinc and XMPP connections on the same port. This makes it possible to connect to any of these servers on port 443 (e.g. from inside a corporate firewall, which almost never block port 443) while still serving HTTPS on that port.
Installed size: 351 KB
How to install: sudo apt install sslh
Dependencies:
- adduser
- debconf
- init-system-helpers
- libc6
- libcap2
- libconfig9
- libpcre2-8-0
- libwrap0
- update-inetd
sslh
Protocol demultiplexer
root@kali:~# sslh -h
sslhcfg: invalid option "-h"
[-Vfin] [-F <file>] [--verbose-config=<n>] [--verbose-config-error=<n>] [--verbose-connections=<n>] [--verbose-connections-try=<n>] [--verbose-connections-error=<n>] [--verbose-fd=<n>] [--verbose-packets=<n>] [--verbose-probe-info=<n>] [--verbose-probe-error=<n>] [--verbose-system-error=<n>] [--verbose-int-error=<n>] [--transparent] [-t <n>] [--udp-max-connections=<n>] [-u <str>] [-P <file>] [-C <path>] [--syslog-facility=<str>] [--logfile=<str>] [--on-timeout=<str>] [--prefix=<str>] [-p <host:port>]... [--ssh=<host:port>]... [--tls=<host:port>]... [--ssl=<host:port>]... [--openvpn=<host:port>]... [--tinc=<host:port>]... [--wireguard=<host:port>]... [--xmpp=<host:port>]... [--http=<host:port>]... [--adb=<host:port>]... [--socks5=<host:port>]... [--syslog=<host:port>]... [--msrdp=<host:port>]... [--anyprot=<host:port>]...
-F, --config=<file> Specify configuration file
--verbose-config=<n> Print configuration at startup
--verbose-config-error=<n> Print configuration errors
--verbose-connections=<n> Trace established incoming address to forward address
--verbose-connections-try=<n> Connection errors
--verbose-connections-error=<n> Connection attempts towards targets
--verbose-fd=<n> File descriptor activity, open/close/whatnot
--verbose-packets=<n> Hexdump packets on which probing is done
--verbose-probe-info=<n> Trace the probe process
--verbose-probe-error=<n> Failures and problems during probing
--verbose-system-error=<n> System call failures
--verbose-int-error=<n> Internal errors that should never happen
-V, --version Print version information and exit
-f, --foreground Run in foreground instead of as a daemon
-i, --inetd Run in inetd mode: use stdin/stdout instead of network listen
-n, --numeric Print IP addresses and ports as numbers
--transparent Set up as a transparent proxy
-t, --timeout=<n> Set up timeout before connecting to default target
--udp-max-connections=<n> Number of concurrent UDP connections
-u, --user=<str> Username to change to after set-up
-P, --pidfile=<file> Path to file to store PID of current instance
-C, --chroot=<path> Root to change to after set-up
--syslog-facility=<str> Facility to syslog to
--logfile=<str> Log messages to a file
--on-timeout=<str> Target to connect to when timing out
--prefix=<str> Reserved for testing
-p, --listen=<host:port> Listen on host:port
--ssh=<host:port> Set up ssh target
--tls=<host:port> Set up TLS/SSL target
--ssl=<host:port> Set up TLS/SSL target
--openvpn=<host:port> Set up OpenVPN target
--tinc=<host:port> Set up tinc target
--wireguard=<host:port> Set up WireGuard target
--xmpp=<host:port> Set up XMPP target
--http=<host:port> Set up HTTP (plain) target
--adb=<host:port> Set up ADB (Android Debug) target
--socks5=<host:port> Set up socks5 target
--syslog=<host:port> Set up syslog target
--msrdp=<host:port> Set up msrdp target
--anyprot=<host:port> Set up default target
sslh-select
Protocol demultiplexer
root@kali:~# sslh-select -h
sslhcfg: invalid option "-h"
[-Vfin] [-F <file>] [--verbose-config=<n>] [--verbose-config-error=<n>] [--verbose-connections=<n>] [--verbose-connections-try=<n>] [--verbose-connections-error=<n>] [--verbose-fd=<n>] [--verbose-packets=<n>] [--verbose-probe-info=<n>] [--verbose-probe-error=<n>] [--verbose-system-error=<n>] [--verbose-int-error=<n>] [--transparent] [-t <n>] [--udp-max-connections=<n>] [-u <str>] [-P <file>] [-C <path>] [--syslog-facility=<str>] [--logfile=<str>] [--on-timeout=<str>] [--prefix=<str>] [-p <host:port>]... [--ssh=<host:port>]... [--tls=<host:port>]... [--ssl=<host:port>]... [--openvpn=<host:port>]... [--tinc=<host:port>]... [--wireguard=<host:port>]... [--xmpp=<host:port>]... [--http=<host:port>]... [--adb=<host:port>]... [--socks5=<host:port>]... [--syslog=<host:port>]... [--msrdp=<host:port>]... [--anyprot=<host:port>]...
-F, --config=<file> Specify configuration file
--verbose-config=<n> Print configuration at startup
--verbose-config-error=<n> Print configuration errors
--verbose-connections=<n> Trace established incoming address to forward address
--verbose-connections-try=<n> Connection errors
--verbose-connections-error=<n> Connection attempts towards targets
--verbose-fd=<n> File descriptor activity, open/close/whatnot
--verbose-packets=<n> Hexdump packets on which probing is done
--verbose-probe-info=<n> Trace the probe process
--verbose-probe-error=<n> Failures and problems during probing
--verbose-system-error=<n> System call failures
--verbose-int-error=<n> Internal errors that should never happen
-V, --version Print version information and exit
-f, --foreground Run in foreground instead of as a daemon
-i, --inetd Run in inetd mode: use stdin/stdout instead of network listen
-n, --numeric Print IP addresses and ports as numbers
--transparent Set up as a transparent proxy
-t, --timeout=<n> Set up timeout before connecting to default target
--udp-max-connections=<n> Number of concurrent UDP connections
-u, --user=<str> Username to change to after set-up
-P, --pidfile=<file> Path to file to store PID of current instance
-C, --chroot=<path> Root to change to after set-up
--syslog-facility=<str> Facility to syslog to
--logfile=<str> Log messages to a file
--on-timeout=<str> Target to connect to when timing out
--prefix=<str> Reserved for testing
-p, --listen=<host:port> Listen on host:port
--ssh=<host:port> Set up ssh target
--tls=<host:port> Set up TLS/SSL target
--ssl=<host:port> Set up TLS/SSL target
--openvpn=<host:port> Set up OpenVPN target
--tinc=<host:port> Set up tinc target
--wireguard=<host:port> Set up WireGuard target
--xmpp=<host:port> Set up XMPP target
--http=<host:port> Set up HTTP (plain) target
--adb=<host:port> Set up ADB (Android Debug) target
--socks5=<host:port> Set up socks5 target
--syslog=<host:port> Set up syslog target
--msrdp=<host:port> Set up msrdp target
--anyprot=<host:port> Set up default target
Updated on: 2024-Nov-17