2024-12-07 10:46:15 +01:00
<!--
SPDX-FileCopyrightText: 2024 MDAD Team and contributors
SPDX-License-Identifier: AGPL-3.0-or-later
-->
2024-01-17 06:58:01 +01:00
(Adapted from the [upstream project ](https://github.com/element-hq/synapse/blob/develop/docs/CAPTCHA_SETUP.md ))
2020-07-04 01:33:25 +02:00
# Overview
2024-12-01 03:57:41 +01:00
2020-07-04 01:33:25 +02:00
Captcha can be enabled for this home server. This file explains how to do that.
2024-10-18 19:32:11 +02:00
2022-11-26 08:27:43 +01:00
The captcha mechanism used is Google's [ReCaptcha ](https://www.google.com/recaptcha/ ). This requires API keys from Google. If your homeserver is Dendrite then [hCapcha ](https://www.hcaptcha.com ) can be used instead.
2020-07-04 01:33:25 +02:00
2022-11-26 08:27:43 +01:00
## ReCaptcha
### Getting keys
2020-07-04 01:33:25 +02:00
Requires a site/secret key pair from:
2020-07-04 02:10:00 +02:00
< http: / / www . google . com / recaptcha / admin >
2020-07-04 01:33:25 +02:00
2020-07-04 08:35:20 +02:00
Must be a reCAPTCHA **v2** key using the "I'm not a robot" Checkbox option
2020-07-04 01:33:25 +02:00
2022-11-26 08:27:43 +01:00
### Setting ReCaptcha keys
2020-07-04 01:33:25 +02:00
2024-10-17 15:17:56 +02:00
Once registered as above, add the following configuration to your `inventory/host_vars/matrix.example.com/vars.yml` file:
2020-07-04 01:33:25 +02:00
2020-07-04 08:35:20 +02:00
```yaml
2022-11-26 08:27:43 +01:00
# for Synapse
2020-07-04 08:35:20 +02:00
matrix_synapse_enable_registration_captcha: true
matrix_synapse_recaptcha_public_key: 'YOUR_SITE_KEY'
matrix_synapse_recaptcha_private_key: 'YOUR_SECRET_KEY'
2022-11-26 08:27:43 +01:00
# for Dendrite
matrix_dendrite_client_api_enable_registration_captcha: true
matrix_dendrite_client_api_recaptcha_public_key: 'YOUR_SITE_KEY'
matrix_dendrite_client_api_recaptcha_private_key: 'YOUR_SECRET_KEY'
```
## hCaptcha
### Getting keys
Requires a site/secret key pair from:
< https: / / dashboard . hcaptcha . com / sites / new >
### Setting hCaptcha keys
```yaml
matrix_dendrite_client_api_enable_registration_captcha: true
matrix_dendrite_client_api_recaptcha_public_key: 'YOUR_SITE_KEY'
matrix_dendrite_client_api_recaptcha_private_key: 'YOUR_SECRET_KEY'
matrix_dendrite_client_api_recaptcha_siteverify_api: 'https://hcaptcha.com/siteverify'
matrix_dendrite_client_api_recaptcha_api_js_url: 'https://js.hcaptcha.com/1/api.js'
matrix_dendrite_client_api_recaptcha_form_field: 'h-captcha-response'
matrix_dendrite_client_api_recaptcha_sitekey_class: 'h-captcha'
2020-07-04 08:35:20 +02:00
```