Skip to content

Commit a8e9d46

Browse files
committed
docs: bind Signal API example to loopback
1 parent 986bba5 commit a8e9d46

1 file changed

Lines changed: 10 additions & 2 deletions

File tree

docs/channels/signal.md

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -130,16 +130,24 @@ silently dropped at the auth boundary.
130130

131131
## Step 3: Run signal-cli-rest-api
132132

133-
The standard deployment is the upstream Docker image:
133+
The standard deployment is the upstream Docker image. Bind the published
134+
port to loopback so the unauthenticated Signal session API is reachable only
135+
from the host running Calciforge:
134136

135137
```bash
136138
docker run -d --name signal-api \
137-
-p 8080:8080 \
139+
-p 127.0.0.1:8080:8080 \
138140
-v signal-cli-config:/home/.local/share/signal-cli \
139141
-e MODE=json-rpc \
140142
bbernhard/signal-cli-rest-api
141143
```
142144

145+
Do not publish `signal-cli-rest-api` on a routable interface unless you put it
146+
behind a trusted reverse proxy, firewall, or authentication layer. Calciforge's
147+
`allowed_numbers`, identity routing, and message-scanning controls apply after
148+
Calciforge receives events; they do not protect clients that can talk directly
149+
to the Signal backend.
150+
143151
`MODE=json-rpc` is required — Calciforge talks JSON-RPC + SSE, not the
144152
older REST endpoints.
145153

0 commit comments

Comments
 (0)