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=9d8822bbd294c787edcc43ff4afcb7cc39dbed02;hb=848e3e24b00a61130f20226ef5f051433d478c69;hpb=2af29c881ae910da2d0ea2cceed5bb27355bb7d2 diff --git a/man/systemd-socket-proxyd.xml b/man/systemd-socket-proxyd.xml index 9d8822bbd..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 @@ -31,17 +33,11 @@ Strauss david@davidstrauss.net - - Developer - Lennart - Poettering - lennart@poettering.net - systemd-socket-proxyd - 1 + 8 systemd-socket-proxyd @@ -65,7 +61,7 @@ systemd-socket-proxyd is a generic socket-activated network socket forwarder proxy daemon - for IPV4, IPv6 and UNIX stream sockets. It may be used + 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. @@ -89,32 +85,8 @@ Options The following options are understood: - - - - - Restricts listening to a - single inherited socket, specified - as a file descriptor. By default, - the proxy listens on all inherited - sockets. - - - - - - - Prints a short help - text and exits. - - - - - - Prints a version - string and exits. - - + + @@ -125,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 + - +ExecStart=/usr/lib/systemd/systemd-socket-proxyd 127.0.0.1:8080 +PrivateTmp=yes +PrivateNetwork=yes]]> - - - /usr/bin/socket-proxyd-nginx.sh - - - - Make it executable: - - - - - - - /etc/nginx/nginx.conf - - + nginx.conf + - - - - - - - - - - - Multiple Listeners with Multiple Destinations - When using namespaces, it may be useful to - have multiple listeners with each going to a unique - destination. systemd always passes sockets into - services in the order specified in the socket - unit, beginning with file descriptor 3. - In this example, port 80 - will proxy to localhost:8080, - and port 443 will proxy to - localhost:8443. - - /etc/systemd/system/multi-destination.socket - - - - - - /etc/systemd/system/multi-destination.service - - - + [...]]]> - - - - /usr/bin/socket-proxyd-multi-destination.sh - - - - Make it executable: - - - - - - - - - + + Enabling the proxy + @@ -304,7 +187,9 @@ $ curl https://localhost/]]> systemd.socket5, systemd.service5, systemctl1, - socat1 + socat1, + nginx1, + curl1