X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=man%2Fsystemd-socket-proxyd.xml;h=ab80a2b4ba17de823b538d037260907fc419d52d;hp=d17c86e479612c9e0aaf5ad0d5e4a2de8f4c87ce;hb=849958d1ba3533c953fad46d4d41c0ec6e48316d;hpb=202e6abb3d0959d8051d514ae48a140934a30f47 diff --git a/man/systemd-socket-proxyd.xml b/man/systemd-socket-proxyd.xml index d17c86e47..ab80a2b4b 100644 --- a/man/systemd-socket-proxyd.xml +++ b/man/systemd-socket-proxyd.xml @@ -20,7 +20,9 @@ You should have received a copy of the GNU Lesser General Public License along with systemd; If not, see . --> - + + systemd-socket-proxyd systemd @@ -35,23 +37,21 @@ systemd-socket-proxyd - 1 + 8 systemd-socket-proxyd - Inherit a socket. Bidirectionally - proxy. + Bidirectionally proxy local sockets to another (possibly remote) socket. systemd-socket-proxyd - OPTIONS - HOSTNAME-OR-IPADDR - PORT-OR-SERVICE + OPTIONS + HOST:PORT systemd-socket-proxyd - OPTIONS + OPTIONS UNIX-DOMAIN-SOCKET-PATH @@ -59,13 +59,20 @@ 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. + systemd-socket-proxyd is a generic + socket-activated network socket forwarder proxy daemon + for IPv4, IPv6 and UNIX stream sockets. It may be used + to bi-directionally forward traffic from a local listening socket to a + local or remote destination socket. + + One use of this tool is to provide + socket activation support for services that do not + natively support socket activation. On behalf of the + service to activate, the proxy inherits the socket + from systemd, accepts each client connection, opens a + connection to a configured 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 @@ -78,34 +85,8 @@ 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 - - - - + + @@ -116,34 +97,30 @@ Examples - Direct-Use Example + Simple Example Use two services with a dependency and no namespace isolation. - - /etc/systemd/system/proxy-to-nginx.socket - - + proxy-to-nginx.socket + - +WantedBy=sockets.target]]> - - /etc/systemd/system/proxy-to-nginx.service - - + proxy-to-nginx.service + - +ExecStart=/usr/lib/systemd/systemd-socket-proxyd /tmp/nginx.sock +PrivateTmp=yes +PrivateNetwork=yes]]> - - /etc/nginx/nginx.conf + + nginx.conf - - - + Enabling the proxy + - +$ curl http://localhost:80/]]> - 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 - -Namespace Example + Similar as above, but runs the socket + proxy and the main service in the same private + namespace, assuming that + nginx.service has + PrivateTmp= and + PrivateNetwork= set, + too. + + proxy-to-nginx.socket + - +WantedBy=sockets.target]]> - - - - /etc/systemd/system/proxy-with-nginx.service - - + proxy-to-nginx.service + - - - - - /usr/bin/socket-proxyd-nginx.sh - - - +ExecStart=/usr/lib/systemd/systemd-socket-proxyd 127.0.0.1:8080 +PrivateTmp=yes +PrivateNetwork=yes]]> - - - /etc/nginx/nginx.conf - - + nginx.conf + - + [...]]]> - - - - + + Enabling the proxy + See Also - - - systemd.service - 5 - , - - - systemd.socket - 5 - , - - systemctl - 1 - , - - socat - 1 - + systemd1, + systemd.socket5, + systemd.service5, + systemctl1, + socat1, + nginx1, + curl1 +