mirror of
https://github.com/hoernschen/dendrite.git
synced 2025-08-01 22:02:46 +00:00
New documentation: https://matrix-org.github.io/dendrite/
This commit is contained in:
parent
9599b3686e
commit
19a9166eb0
39 changed files with 1483 additions and 944 deletions
53
docs/administration/1_createusers.md
Normal file
53
docs/administration/1_createusers.md
Normal file
|
@ -0,0 +1,53 @@
|
|||
---
|
||||
title: Creating user accounts
|
||||
parent: Administration
|
||||
permalink: /administration/createusers
|
||||
nav_order: 1
|
||||
---
|
||||
|
||||
# Creating user accounts
|
||||
|
||||
User accounts can be created on a Dendrite instance in a number of ways.
|
||||
|
||||
## From the command line
|
||||
|
||||
The `create-account` tool is built in the `bin` folder when building Dendrite with
|
||||
the `build.sh` script.
|
||||
|
||||
It uses the `dendrite.yaml` configuration file to connect to the Dendrite user database
|
||||
and create the account entries directly. It can therefore be used even if Dendrite is not
|
||||
running yet, as long as the database is up.
|
||||
|
||||
An example of using `create-account` to create a **normal account**:
|
||||
|
||||
```bash
|
||||
./bin/create-account -config /path/to/dendrite.yaml -username USERNAME
|
||||
```
|
||||
|
||||
You will be prompted to enter a new password for the new account.
|
||||
|
||||
To create a new **admin account**, add the `-admin` flag:
|
||||
|
||||
```bash
|
||||
./bin/create-account -config /path/to/dendrite.yaml -username USERNAME -admin
|
||||
```
|
||||
|
||||
## Using shared secret registration
|
||||
|
||||
Dendrite supports the Synapse-compatible shared secret registration endpoint.
|
||||
|
||||
To enable shared secret registration, you must first enable it in the `dendrite.yaml`
|
||||
configuration file by specifying a shared secret. In the `client_api` section of the config,
|
||||
enter a new secret into the `registration_shared_secret` field:
|
||||
|
||||
```yaml
|
||||
client_api:
|
||||
# ...
|
||||
registration_shared_secret: ""
|
||||
```
|
||||
|
||||
You can then use the `/_synapse/admin/v1/register` endpoint as per the
|
||||
[Synapse documentation](https://matrix-org.github.io/synapse/latest/admin_api/register_api.html).
|
||||
|
||||
Shared secret registration is only enabled once a secret is configured. To disable shared
|
||||
secret registration again, remove the secret from the configuration file.
|
53
docs/administration/2_registration.md
Normal file
53
docs/administration/2_registration.md
Normal file
|
@ -0,0 +1,53 @@
|
|||
---
|
||||
title: Enabling registration
|
||||
parent: Administration
|
||||
permalink: /administration/registration
|
||||
nav_order: 2
|
||||
---
|
||||
|
||||
# Enabling registration
|
||||
|
||||
Enabling registration allows users to register their own user accounts on your
|
||||
Dendrite server using their Matrix client. They will be able to choose their own
|
||||
username and password and log in.
|
||||
|
||||
Registration is controlled by the `registration_disabled` field in the `client_api`
|
||||
section of the configuration. By default, `registration_disabled` is set to `true`,
|
||||
disabling registration. If you want to enable registration, you should change this
|
||||
setting to `false`.
|
||||
|
||||
Currently Dendrite supports secondary verification using [reCAPTCHA](https://www.google.com/recaptcha/about/).
|
||||
Other methods will be supported in the future.
|
||||
|
||||
## reCAPTCHA verification
|
||||
|
||||
Dendrite supports reCAPTCHA as a secondary verification method. If you want to enable
|
||||
registration, it is **highly recommended** to configure reCAPTCHA. This will make it
|
||||
much more difficult for automated spam systems from registering accounts on your
|
||||
homeserver automatically.
|
||||
|
||||
You will need an API key from the [reCAPTCHA Admin Panel](https://www.google.com/recaptcha/admin).
|
||||
Then configure the relevant details in the `client_api` section of the configuration:
|
||||
|
||||
```yaml
|
||||
client_api:
|
||||
# ...
|
||||
registration_disabled: false
|
||||
recaptcha_public_key: "PUBLIC_KEY_HERE"
|
||||
recaptcha_private_key: "PRIVATE_KEY_HERE"
|
||||
enable_registration_captcha: true
|
||||
captcha_bypass_secret: ""
|
||||
recaptcha_siteverify_api: "https://www.google.com/recaptcha/api/siteverify"
|
||||
```
|
||||
|
||||
## Open registration
|
||||
|
||||
Dendrite does support open registration — that is, allowing users to create their own
|
||||
user accounts without any verification or secondary authentication. However, it
|
||||
is **not recommended** to enable open registration, as this leaves your homeserver
|
||||
vulnerable to abuse by spammers or attackers, who create large numbers of user
|
||||
accounts on Matrix homeservers in order to send spam or abuse into the network.
|
||||
|
||||
It isn't possible to enable open registration in Dendrite in a single step. If you
|
||||
try to disable the `registration_disabled` option without any secondary verification
|
||||
methods enabled (such as reCAPTCHA), Dendrite will log an error and fail to start.
|
39
docs/administration/3_presence.md
Normal file
39
docs/administration/3_presence.md
Normal file
|
@ -0,0 +1,39 @@
|
|||
---
|
||||
title: Enabling presence
|
||||
parent: Administration
|
||||
permalink: /administration/presence
|
||||
nav_order: 3
|
||||
---
|
||||
|
||||
# Enabling presence
|
||||
|
||||
Dendrite supports presence, which allows you to send your online/offline status
|
||||
to other users, and to receive their statuses automatically. They will be displayed
|
||||
by supported clients.
|
||||
|
||||
Note that enabling presence **can negatively impact** the performance of your Dendrite
|
||||
server — it will require more CPU time and will increase the "chattiness" of your server
|
||||
over federation. It is disabled by default for this reason.
|
||||
|
||||
Dendrite has two options for controlling presence:
|
||||
|
||||
* **Enable inbound presence**: Dendrite will handle presence updates for remote users
|
||||
and distribute them to local users on your homeserver;
|
||||
* **Enable outbound presence**: Dendrite will generate presence notifications for your
|
||||
local users and distribute them to remote users over the federation.
|
||||
|
||||
This means that you can configure only one or other direction if you prefer, i.e. to
|
||||
receive presence from other servers without revealing the presence of your own users.
|
||||
|
||||
## Configuring presence
|
||||
|
||||
Presence is controlled by the `presence` block in the `global` section of the
|
||||
configuration file:
|
||||
|
||||
```yaml
|
||||
global:
|
||||
# ...
|
||||
presence:
|
||||
enable_inbound: false
|
||||
enable_outbound: false
|
||||
```
|
25
docs/administration/4_adminapi.md
Normal file
25
docs/administration/4_adminapi.md
Normal file
|
@ -0,0 +1,25 @@
|
|||
---
|
||||
title: Supported admin APIs
|
||||
parent: Administration
|
||||
permalink: /administration/adminapi
|
||||
---
|
||||
|
||||
# Supported admin APIs
|
||||
|
||||
Dendrite supports, at present, a very small number of endpoints that allow
|
||||
admin users to perform administrative functions. Please note that there is no
|
||||
API stability guarantee on these endpoints at present — they may change shape
|
||||
without warning.
|
||||
|
||||
More endpoints will be added in the future.
|
||||
|
||||
## `/_dendrite/admin/evacuateRoom/{roomID}`
|
||||
|
||||
This endpoint will instruct Dendrite to part all local users from the given `roomID`
|
||||
in the URL. It may take some time to complete. A JSON body will be returned containing
|
||||
the user IDs of all affected users.
|
||||
|
||||
## `/_synapse/admin/v1/register`
|
||||
|
||||
Shared secret registration — please see the [user creation page](createusers) for
|
||||
guidance on configuring and using this endpoint.
|
Loading…
Add table
Add a link
Reference in a new issue