dataset/seed/mailman/README.md

150 lines
13 KiB
Markdown
Raw Normal View History

2022-12-24 13:01:51 +01:00
---
gitea: none
include_toc: true
---
2023-08-11 09:38:05 +02:00
[Return to the list of application services.](../README.md)
2022-12-24 13:01:51 +01:00
# mailman
2023-08-02 09:26:54 +02:00
## Synopsis
2022-12-24 13:01:51 +01:00
2023-08-11 09:38:05 +02:00
[GNU Mailman, managing electronic mail discussion and e-newsletter lists.](https://www.list.org)
## Example
Zone names are provided as examples. Think about adapting with the value of provider_zone in configuration file.
```
mailman:
applicationservice: mailman
zones_name:
- localdns
- oauth2
- postgresql
- reverseproxy
- smtp
values:
general.revprox.revprox_client.revprox_client_external_domainnames:
- service.example.net
general.mailman.mailman_mail_owner: admin@example.net
general.mailman.mailman_domains:
- list.example.net
```
2022-12-24 13:01:51 +01:00
2023-08-02 09:26:54 +02:00
## Basic variables
2023-08-01 15:13:17 +02:00
2023-08-11 09:38:05 +02:00
### General
2023-08-01 15:13:17 +02:00
2023-08-02 09:26:54 +02:00
#### Reverse proxy
2023-08-01 15:13:17 +02:00
2023-08-11 09:38:05 +02:00
##### Clients configuration
2023-08-02 09:26:54 +02:00
2023-08-10 21:55:46 +02:00
This family is a leadership.
2023-08-02 09:26:54 +02:00
2023-08-11 09:38:05 +02:00
| Parameter | Comment |
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------|
| **[general.revprox.revprox_client.revprox_client_external_domainnames](dictionaries/21_revprox_client.xml)**<br/>mandatory, multiple<br/>**Type:** [`domainname`](https://forge.cloud.silique.fr/risotto/rougail/src/branch/main/doc/variable/README.md#le-type-de-la-variable) | Service external domain name.<br/>**Example:** service.example.net |
| **[general.revprox.revprox_client.revprox_client_location](dictionaries/21_revprox_client.xml)**<br/>mandatory<br/>**Type:** [`filename`](https://forge.cloud.silique.fr/risotto/rougail/src/branch/main/doc/variable/README.md#le-type-de-la-variable) | URI to route request to the correct service.<br/>**Default:** / |
2023-08-02 09:26:54 +02:00
#### Gestionnaire de liste
2023-08-11 09:38:05 +02:00
| Parameter | Comment |
2023-08-02 09:26:54 +02:00
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------|
| **[general.mailman.mailman_mail_owner](dictionaries/31_mailman.xml)**<br/>mandatory<br/>**Type:** [`mail`](https://forge.cloud.silique.fr/risotto/rougail/src/branch/main/doc/variable/README.md#le-type-de-la-variable) | Courriel du gestionnaire de liste du site.<br/>**Example:** admin@example.net |
| **[general.mailman.mailman_domains](dictionaries/31_mailman.xml)**<br/>mandatory, multiple<br/>**Type:** [`domainname`](https://forge.cloud.silique.fr/risotto/rougail/src/branch/main/doc/variable/README.md#le-type-de-la-variable) | Nom de domaine des listes.<br/>**Example:** list.example.net |
### Mailman
2023-08-10 21:55:46 +02:00
#### Listes du domaine *suffix value*
2023-08-02 09:26:54 +02:00
This a dynamic family generated from the variable "general.mailman.mailman_domains".
2023-08-11 09:38:05 +02:00
| Parameter | Comments |
|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------|
| **[mailman.list_*suffix value*.name_*suffix value*](extras/mailman/20_mailman.xml)**<br/>mandatory, multiple<br/>**Type:** [`unix_user`](https://forge.cloud.silique.fr/risotto/rougail/src/branch/main/doc/variable/README.md#le-type-de-la-variable) | Nom des listes *suffix value*. |
2023-08-02 09:26:54 +02:00
2023-08-11 09:38:05 +02:00
## Variables
2023-08-02 09:26:54 +02:00
2023-08-11 09:38:05 +02:00
### General
2023-08-02 09:26:54 +02:00
#### Reverse proxy
2023-08-11 09:38:05 +02:00
##### Clients configuration
2023-08-02 09:26:54 +02:00
2023-08-10 21:55:46 +02:00
This family is a leadership.
2023-08-02 09:26:54 +02:00
2023-08-11 09:38:05 +02:00
| Parameter | Comment |
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------|
| **[general.revprox.revprox_client.revprox_client_max_body_size](dictionaries/21_revprox_client.xml)**<br/>**Type:** [`string`](https://forge.cloud.silique.fr/risotto/rougail/src/branch/main/doc/variable/README.md#le-type-de-la-variable) | The maximum allowed size of the client request body. |
2023-08-01 15:13:17 +02:00
2023-08-02 09:26:54 +02:00
#### OAuth2 client
2023-08-11 09:38:05 +02:00
| Parameter | Comment |
2023-08-02 09:26:54 +02:00
|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------|
| **[general.oauth2_client.oauth2_client_name](dictionaries/31_mailman.xml)**<br/>mandatory<br/>**Type:** [`string`](https://forge.cloud.silique.fr/risotto/rougail/src/branch/main/doc/variable/README.md#le-type-de-la-variable) | OAuth2 client name.<br/>**Default:** Liste de distribution<br/>**Example:** example |
| **[general.oauth2_client.oauth2_client_description](dictionaries/31_mailman.xml)**<br/>mandatory<br/>**Type:** [`string`](https://forge.cloud.silique.fr/risotto/rougail/src/branch/main/doc/variable/README.md#le-type-de-la-variable) | OAuth2 client description.<br/>**Default:** Liste de distribution Mailman<br/>**Example:** Example description |
| **[general.oauth2_client.oauth2_client_login](dictionaries/30_oauth2_client.xml)**<br/>**Type:** [`web_address`](https://forge.cloud.silique.fr/risotto/rougail/src/branch/main/doc/variable/README.md#le-type-de-la-variable) | OAuth2 URL to valid login. |
##### external
| Parameter | Comments |
|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------|
| **[general.oauth2_client.external.oauth2_client_external](dictionaries/31_mailman.xml)**<br/>mandatory, multiple<br/>**Type:** [`web_address`](https://forge.cloud.silique.fr/risotto/rougail/src/branch/main/doc/variable/README.md#le-type-de-la-variable) | OAuth2 client external.<br/>**Default:** *calculated* |
| **[general.oauth2_client.external.oauth2_client_family](dictionaries/30_oauth2_client.xml)**<br/>mandatory<br/>**Type:** [`string`](https://forge.cloud.silique.fr/risotto/rougail/src/branch/main/doc/variable/README.md#le-type-de-la-variable) | OAuth2 family.<br/>**Default:** users |
2023-08-11 09:38:05 +02:00
| Parameter | Comment |
2023-08-02 09:26:54 +02:00
|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------|
| **[general.oauth2_client.oauth2_client_category](dictionaries/31_mailman.xml)**<br/>mandatory<br/>**Type:** [`string`](https://forge.cloud.silique.fr/risotto/rougail/src/branch/main/doc/variable/README.md#le-type-de-la-variable) | OAuth2 category.<br/>**Default:** Développement |
| **[general.oauth2_client.oauth2_client_logo](dictionaries/31_mailman.xml)**<br/>mandatory<br/>**Type:** [`string`](https://forge.cloud.silique.fr/risotto/rougail/src/branch/main/doc/variable/README.md#le-type-de-la-variable) | OAuth2 logo.<br/>**Default:** silique_email.png |
2023-08-11 09:38:05 +02:00
## Variables for expert
2023-08-02 09:26:54 +02:00
2023-08-11 09:38:05 +02:00
### General
2023-08-02 09:26:54 +02:00
2023-08-11 09:38:05 +02:00
#### NGINX
2023-08-02 09:26:54 +02:00
2023-08-11 09:38:05 +02:00
| Parameter | Comment |
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------|
| **[general.nginx.nginx_hash_bucket_size](dictionaries/21_nginx.xml)**<br/>mandatory<br/>**Type:** [`choice`](https://forge.cloud.silique.fr/risotto/rougail/src/branch/main/doc/variable/README.md#le-type-de-la-variable) | The bucket size for the server names hash tables.<br/>**Choices:**<br/>- `128` ← default<br/>- `64`<br/>- `32` |
| **[general.nginx.nginx_post_max_size](dictionaries/21_nginx.xml)**<br/>mandatory<br/>**Type:** [`number`](https://forge.cloud.silique.fr/risotto/rougail/src/branch/main/doc/variable/README.md#le-type-de-la-variable) | The maximum allowed size of the client request body.<br/>This value is in Mb.<br/>**Default:** 32 |
2023-08-02 09:26:54 +02:00
2023-08-01 15:13:17 +02:00
2023-08-11 09:38:05 +02:00
## Requirements services
### Mandatories
- [LocalDNS](../README.LocalDNS.md): DNS forwarder for local domain name.
- [SMTP](../README.SMTP.md): Create a SMTP relay account and authorize sending email.
- [ReverseProxy](../README.ReverseProxy.md): Register to service to a reverse proxy server.
- [Postgresql](../README.Postgresql.md): Create account and connexion to a PostgreSQL server.
- [OAuth2](../README.OAuth2.md): Remote clients needing to verify OAuth2 account.
### Optionals
- [Journald](../README.Journald.md): Concentrate journal messages on one host.
2023-08-01 15:13:17 +02:00
2022-12-24 13:01:51 +01:00
## Dependances
2023-08-11 09:38:05 +02:00
- [base-debian-bullseye](../base-debian-bullseye/README.md): Base information of a Debian Bulleye server.
- [base-debian](../base-debian/README.md): Base information of a Debian server.
- [systemd](../systemd/README.md): Systemd, a system and service manager.
- [base-machine](../base-machine/README.md): Base information for a machine.
- [base](../base/README.md): Base of all application services.
- [dns-local](../dns-local/README.md): DNS client with access to local zones.
- [pki-tls](../pki-tls/README.md): Autosign PKI or Let's encrypt support for TLS certificates.
- [journald](../journald/README.md): Journald.
- [resolved](../resolved/README.md): Resolved.
- [postgresql-client](../postgresql-client/README.md): Application service needs interact with a Postgresql server.
- [relay-lmtp-client](../relay-lmtp-client/README.md): Application service needs interact with a Postfix server with LMTP protocol.
- [relay-mail-client](../relay-mail-client/README.md): Client SMTP.
- [reverse-proxy-client](../reverse-proxy-client/README.md): Application service needs interact with a a reverse proxy server.
- [nginx-https](../nginx-https/README.md): Nginx as HTTPS web site.
- [nginx-common](../nginx-common/README.md): Nginx common configuration.
- [reverse-proxy-client](../reverse-proxy-client/README.md): Application service needs interact with a a reverse proxy server.
- [oauth2-client](../oauth2-client/README.md): Application service needs interact with a Oauth2 server.