Answer only to the host names of Bindery
Without a login, a web page that the user visits could reach Bindery under a name of its own that points at the address of Bindery, and read and change everything. The "none" mode now answers only to addresses and to names of a private network. ALLOWED_HOSTS sets the names for each mode.
This commit is contained in:
@@ -67,6 +67,7 @@ Environment variables set the configuration. **Restart the container after a cha
|
||||
| `PROXY_AUTH_TRUSTED_IPS` | The addresses and networks that can send the user header. See "Logins". | Loopback and private addresses |
|
||||
| `PROXY_AUTH_LOGOUT_URL` | Where the Log out button goes in proxy mode | None |
|
||||
| `BINDERY_API_KEY` | A key for scripts. See "Scripts". | None |
|
||||
| `ALLOWED_HOSTS` | The host names that Bindery answers to. See "Host names". | None |
|
||||
| `SESSION_COOKIE_SECURE` | `true` if users reach Bindery only over HTTPS | `false` |
|
||||
| `TRUST_PROXY` | `true` if a reverse proxy sends the client address. See "Lockouts and sessions". | `false` |
|
||||
| `URL_BASE` | A path prefix, such as `/bindery`. See "Reverse proxy". | None |
|
||||
@@ -209,6 +210,28 @@ open session until that session ends. To stop a CWA user at once, remove the use
|
||||
`CWA_ALLOWED_USERS` and restart Bindery. To end all sessions, delete `/config/.flask_secret` and
|
||||
restart Bindery.
|
||||
|
||||
### Host names
|
||||
|
||||
Without a login, a web page that you visit can try to reach Bindery from your browser, under a host
|
||||
name of its own that points at the address of Bindery. To stop this, the `none` login mode answers
|
||||
only to these host names:
|
||||
|
||||
- An address, such as `192.168.1.5`.
|
||||
- `localhost`, and a name without a dot, such as `nas` or the name of a container.
|
||||
- A name of a private network. These end in `.local`, `.lan`, `.home`, `.home.arpa`, `.internal`,
|
||||
`.localhost` or `.localdomain`.
|
||||
|
||||
For each other name, Bindery answers with an error that shows the name. If you use such a name, for
|
||||
example behind a reverse proxy, list it in `ALLOWED_HOSTS`:
|
||||
|
||||
- `ALLOWED_HOSTS=bindery.example.com` allows that name. Bindery then answers only to the names in
|
||||
the list, in each login mode. Write the names without a port.
|
||||
- A leading dot, as in `.example.com`, also allows the subdomains.
|
||||
- `ALLOWED_HOSTS=*` allows each name.
|
||||
|
||||
The other login modes answer to each name, unless you set a list. The health check at `/api/health`
|
||||
works under each name.
|
||||
|
||||
### Scripts
|
||||
|
||||
Scripts can use the JSON API of the web interface.
|
||||
|
||||
Reference in New Issue
Block a user