{ email im@fruw.org acme_dns google_domains {$API_KEY} } vault.fruw.org { handle_path / { reverse_proxy localhost:50000 } handle_path /* { @allow { remote_ip forwarded {$WHITE_LIST} } handle @allow { reverse_proxy localhost:50000 } respond 403 } } mail.fruw.org { @allow { remote_ip forwarded {$WHITE_LIST} } handle @allow { reverse_proxy localhost:50001 } respond 403 } matrix.fruw.org, matrix.fruw.org:8448 { rewrite / /_matrix/static/ reverse_proxy /_matrix/* localhost:50003 } git.fruw.org { rewrite / /fruworg reverse_proxy localhost:50005 } turn.fruw.org { respond "whoa! eturnal server is runnig" 200 } rclone.fruw.org { @allow { remote_ip forwarded {$WHITE_LIST} } handle @allow { reverse_proxy 127.0.0.1:53682 respond "nothing to auth" 404 } respond 403 } cs.fruw.org { respond "whoa! cstrike server is runnig" 200 } doom.fruw.org { respond "oops! doom2 server is not running" 503 } fs.fruw.org, http://fs.fruw.org { root * /var/caddy file_server browse } ip.fruw.org, http://ip.fruw.org { templates respond "{{.RemoteIP}}" } fruw.org, *.fruw.org { respond "hello there" }