From e08f7273e48b25a910dc9c55a72fe230e401f5b5 Mon Sep 17 00:00:00 2001 From: Filip Wandzio Date: Fri, 3 Oct 2025 00:05:56 +0200 Subject: Implement automatic tuwunel pipeline Fix the path in coturn server configuration file Update manual with actual information Implement cli parameters instead of reading user input Signed-off-by: Filip Wandzio --- wh.1 | 89 +++++++++++++++++++++++++++++++++++++------------------------------- 1 file changed, 48 insertions(+), 41 deletions(-) (limited to 'wh.1') diff --git a/wh.1 b/wh.1 index 8a6230f..53ffeb6 100644 --- a/wh.1 +++ b/wh.1 @@ -1,67 +1,74 @@ .\" Manpage for whiterabbit -.TH WHITERABBIT 1 "2025-09-25" "1.0.0" "whiterabbit manual" +.TH WHITERABBIT 1 "2025-10-02" "1.1.0" "whiterabbit manual" .SH NAME -whiterabbit \- auto-configure Matrix homeservers (Dendrite or Synapse) +whiterabbit \- auto-configure Matrix homeservers (Dendrite, Synapse, or Tuwunel) .SH SYNOPSIS .B whiterabbit -[\fIturn\fR|\fIdendrite\fR|\fIsynapse\fR|\fIlist\fR|\fIremove \fR| -\fI-t\fR|\fI-d\fR|\fI-s\fR|\fI-l\fR|\fI-r \fR] +[\fIturn \fR| + \fIdendrite \fR| + \fIsynapse \fR| + \fItuwunel \fR| + \fIlist\fR| + \fIremove ...\fR] .SH DESCRIPTION -whiterabbit sets up Matrix homeservers with a global Coturn server and Nginx/Let's Encrypt support. +whiterabbit sets up Matrix homeservers (Dendrite, Synapse, or Tuwunel) with a global Coturn server and Nginx/Let's Encrypt proxying. -Main commands and their short flag equivalents: +Main subcommands: .TP -.B turn, -t +.B turn Install or configure the global Coturn server. .TP -.B dendrite, -d -Add a new Matrix Dendrite server. +.B dendrite +Add a new Matrix Dendrite server with automatic TLS and Nginx reverse proxy. .TP -.B synapse, -s -Add a new Matrix Synapse server. +.B synapse +Add a new Matrix Synapse server with automatic TLS and Nginx reverse proxy. .TP -.B list, -l -List all configured Matrix servers. +.B tuwunel +Add a Tuwunel homeserver with automatic TLS and Nginx reverse proxy. .TP -.B remove , -r -Remove a Matrix server by domain. +.B list +List all configured Matrix servers and their container status. +.TP +.B remove [domain2 ...] +Remove one or more Matrix servers by domain name. .SH EXAMPLES .TP -whiterabbit turn -Set up the global Coturn server. -.TP -whiterabbit -t -Same as above using flag. -.TP -whiterabbit dendrite -Add a Dendrite server with TLS and Nginx. +whiterabbit turn turn.example.com 192.168.1.10 eth0 myturnsecret +Set up the global Coturn server bound to eth0 on IP 192.168.1.10. .TP -whiterabbit -d -Same as above using flag. +whiterabbit dendrite matrix.example.com admin@example.com 192.168.1.20 +Add a Dendrite server. .TP -whiterabbit synapse -Add a Synapse server with TLS and Nginx. +whiterabbit synapse matrix.example.com admin@example.com 192.168.1.21 +Add a Synapse server. .TP -whiterabbit -s -Same as above using flag. +whiterabbit tuwunel tuw.example.com admin@example.com 192.168.1.22 +Add a Tuwunel server. .TP whiterabbit list -Show all servers. -.TP -whiterabbit -l -Same as above using flag. -.TP -whiterabbit remove matrix.example.com -Remove a server. +Show all installed servers and their status. .TP -whiterabbit -r matrix.example.com -Same as above using flag. +whiterabbit remove matrix.example.com another.example.org +Remove one or more servers. .SH NOTES -All Matrix servers share the same Coturn instance. +All Matrix homeservers share the same Coturn instance. TLS certificates are issued automatically via Let's Encrypt. Requires docker, docker-compose, nginx, certbot, and coturn. -.SH AUTHOR -Filip Wandzio +.SH COMMAND DISPATCH +The script internally dispatches commands as follows: +.nf +CMD="${1:-}" +case "$CMD" in + turn) shift; install_turn "$@" ;; + dendrite) shift; install_dendrite "$@" ;; + # synapse) shift; install_synapse "$@" ;; + tuwunel) shift; install_tuwunel "$@" ;; + list) list_servers ;; + remove) shift; remove_server "$@" ;; + *) usage ;; +esac +.fi -- cgit v1.2.3