X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=man%2Fsystemd-socket-proxyd.xml;h=ab80a2b4ba17de823b538d037260907fc419d52d;hb=c32acc96ef74d13d0059a680cdede5f05db1981a;hp=87122f5381bac7b7539ba383adda97f52684c0a7;hpb=464b3d64419808b7334563e907d172337cc9d718;p=elogind.git
diff --git a/man/systemd-socket-proxyd.xml b/man/systemd-socket-proxyd.xml
index 87122f538..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-proxydsystemd
@@ -35,23 +37,21 @@
systemd-socket-proxyd
- 1
+ 8systemd-socket-proxyd
- Inherit a socket. Bidirectionally
- proxy.
+ Bidirectionally proxy local sockets to another (possibly remote) socket.systemd-socket-proxyd
- OPTIONS
- HOSTNAME-OR-IP
- PORT-OR-SERVICE
+ OPTIONS
+ HOST:PORTsystemd-socket-proxyd
- OPTIONS
+ OPTIONSUNIX-DOMAIN-SOCKET-PATH
@@ -59,15 +59,22 @@
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.
+ socat1.
The main differences for systemd-socket-proxyd
are support for socket activation with
Accept=false and an event-driven
@@ -78,72 +85,42 @@
OptionsThe 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 if
- invoked indirectly, for
- example with a shell script
- rather than with
-
-
-
-
+
+ Exit status
- On success 0 is returned, a non-zero failure
+ On success, 0 is returned, a non-zero failure
code otherwise.Examples
- Direct-Use Example
+ Simple ExampleUse 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
+
- 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
+