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.