42 lines
1.6 KiB
Markdown
42 lines
1.6 KiB
Markdown
|
# Custom Telebit Server Setup Guide
|
||
|
|
||
|
There are three components to a telebit configuration:
|
||
|
|
||
|
1. the telebit relay
|
||
|
2. the management (authentication) server
|
||
|
3. (optional) DNS-01 and/or HTTP-01 ACME relay
|
||
|
|
||
|
# DNS
|
||
|
|
||
|
- `devices.example.com` and `*.devices.example.com` should have A (and AAAA) records pointing to the tunnel server
|
||
|
- `https://devices.example.com/` is `TUNNEL_RELAY_URL`
|
||
|
- `devices.example.com` is the _primary_ or _base_ domain for the devices `telebit-mgmt --domain devices.example.com`
|
||
|
|
||
|
All of the devices need to be under the same domain. You are limited by Let's Encrypt to 10-20 certificates per week. We can solve for this in the future if needed - either by adding more domains or by adding devices.example.com to the PSL (the stated reason would be for browser security, NOT for Let's Encrypt limits).
|
||
|
|
||
|
- Other domains can be pointed to the same server. For example:
|
||
|
- It would be OKAY to use `tunnel.example.com` as `TUNNEL_RELAY_URL`.
|
||
|
- It would be OKAY to use `auth.example.com` as `AUTH_URL`
|
||
|
- It is fine to have the `AUTH_URL` on a different server.
|
||
|
- having multiple tunnel server URLs is NOT supported, but this is a relatively small change to the `telebit-mgmt` in the future
|
||
|
|
||
|
## White Label Builds
|
||
|
|
||
|
```bash
|
||
|
go generate ./...
|
||
|
|
||
|
VENDOR_ID="example.com"
|
||
|
|
||
|
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build \
|
||
|
-mod=vendor \
|
||
|
-ldflags="-X 'main.VendorID=$VENDOR_ID'" \
|
||
|
-o telebit-debug.exe \
|
||
|
./cmd/telebit/telebit.go
|
||
|
|
||
|
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build \
|
||
|
-mod=vendor \
|
||
|
-ldflags "-H windowsgui -X 'main.VendorID=$VENDOR_ID'" \
|
||
|
-o telebit-windows.exe \
|
||
|
./cmd/telebit/telebit.go
|
||
|
```
|