systemd-socket-proxyd systemd Developer David Strauss david@davidstrauss.net systemd-socket-proxyd 1 systemd-socket-proxyd Inherit a socket. Bidirectionally proxy. systemd-socket-proxyd OPTIONS HOSTNAME-OR-IPADDR PORT-OR-SERVICE systemd-socket-proxyd OPTIONS UNIX-DOMAIN-SOCKET-PATH Description systemd-socket-proxyd provides a proxy to socket-activate services that do not yet support native socket activation. On behalf of the daemon, the proxy inherits the socket from systemd, accepts each client connection, opens a connection to the server for each client, and then bidirectionally forwards data between the two. This utility's behavior is similar to socat1. The main differences for systemd-socket-proxyd are support for socket activation with Accept=false and an event-driven design that scales better with the number of connections. Options The following options are understood: Prints a short help text and exits. Prints a version string and exits. Skips verification of the expected PID and file descriptor numbers. Use this if invoked indirectly, for example, with a shell script rather than with Exit status On success, 0 is returned, a non-zero failure code otherwise. Examples Direct-Use Example Use two services with a dependency and no namespace isolation. /etc/systemd/system/proxy-to-nginx.socket /etc/systemd/system/proxy-to-nginx.service /etc/nginx/nginx.conf Indirect-Use Example Use a shell script to isolate the service and proxy into the same namespace. This is particularly useful for running TCP-only daemons without the daemon affecting ports on regular interfaces. /etc/systemd/system/proxy-with-nginx.socket /etc/systemd/system/proxy-with-nginx.service /usr/bin/socket-proxyd-nginx.sh /etc/nginx/nginx.conf See Also systemd.service 5 , systemd.socket 5 , systemctl 1 , socat 1