dataset/seed/dovecot/README.md

115 lines
7.3 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
# dovecot
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
[Postfix and Dovecot as mail servers (IMAP and submission).](https://www.dovecot.org/)
This application service provides email server. Two servers are used: Dovecot as IMAP server and Postfix as submission server. In addition, an auto-detection file of the email configuration is set up.
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
#### Mail configuration
2023-08-11 09:38:05 +02:00
Configure IMAP servers and submission to access email accounts and send emails.
2023-08-02 09:26:54 +02:00
##### Mail domain
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 | Comments |
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **[general.mail.domain.mail_domains](dictionaries/31_dovecot.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) | Final destination email address.<br/>These domain names are the domain names for emails (user@*example.net*) and for auto configuration of email clients (https://*example.net*/.well-known/autoconfig/mail/config-v1.1.xml).<br/>**Example:** example.net |
| **[general.mail.domain.imap_domainname](dictionaries/31_dovecot.xml)**<br/>mandatory<br/>**Type:** [`domainname`](https://forge.cloud.silique.fr/risotto/rougail/src/branch/main/doc/variable/README.md#le-type-de-la-variable) | External IMAP server address.<br/>Matches TLS connections SNI name, if its sent by the client. For some email clients, use in DNS configuration a line like "_submissions._tcp IN SRV 1 587 *imap.example.net*.".<br/>**Example:** imap.example.net |
| **[general.mail.domain.submission_domainname](dictionaries/31_dovecot.xml)**<br/>mandatory<br/>**Type:** [`domainname`](https://forge.cloud.silique.fr/risotto/rougail/src/branch/main/doc/variable/README.md#le-type-de-la-variable) | External submission server address.<br/>Matches TLS connections SNI name, if its sent by the client. For some email clients, add in DNS configuration a line like "_imaps._tcp IN SRV 0 1 993 *submission.example.net*.".<br/>**Example:** submission.example.net |
2023-08-02 09:26:54 +02:00
2023-08-11 09:38:05 +02:00
| Parameter | Comments |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **[general.mail.mail_crt_provider](dictionaries/31_dovecot.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) | Type of certificate autority signing external IMAP and submission domain certificates.<br/>The certificate can be self-signed (therefore invalid by default for the client) or obtained via the Let's Encrypt service (generally valid for the client).<br/>**Choices:**<br/>- `self-signed` ← default<br/>- `letsencrypt` |
2023-08-02 09:26:54 +02:00
## Variables for expert
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
#### OpenLDAP directory
2023-08-02 09:26:54 +02:00
##### Client
2023-08-11 09:38:05 +02:00
| Parameter | Comments |
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------|
| **[general.ldap.client.ldapclient_family](dictionaries/31_dovecot.xml)**<br/>mandatory<br/>**Type:** [`unix_user`](https://forge.cloud.silique.fr/risotto/rougail/src/branch/main/doc/variable/README.md#le-type-de-la-variable) | Restrict service configuration for a LDAP family.<br/>"all" for all families.<br/>**Default:** all |
2023-08-01 15:13:17 +02:00
2023-08-02 09:26:54 +02:00
## Requirements services
2023-08-11 09:38:05 +02:00
### Mandatories
- LocalDNS: [nsd-local](../nsd-local/README.md)
- SMTP: [postfix-relay](../postfix-relay/README.md)
- LDAP: [openldap](../openldap/README.md)
- ReverseProxy: [nginx-reverse-proxy](../nginx-reverse-proxy/README.md)
- OAuth2: [lemonldap](../lemonldap/README.md)
### Optionals
- Journald: [vector](../vector/README.md)
2023-08-02 09:26:54 +02:00
**bold**: provider is mandatory
## Example
Zone names are provided as examples. Think about adapting with the value of provider_zone in configuration file.
2023-08-01 15:13:17 +02:00
```
dovecot:
applicationservice: dovecot
provider_zone: imap
zones_name:
- ldap
- localdns
2023-08-11 09:38:05 +02:00
- oauth2
2023-08-01 15:13:17 +02:00
- reverseproxy
- smtp
2023-08-02 09:26:54 +02:00
values:
general.mail.domain.mail_domains:
- example.net
general.mail.domain.imap_domainname:
'0': imap.example.net
general.mail.domain.submission_domainname:
'0': submission.example.net
2023-08-01 15:13:17 +02:00
```
2022-12-24 13:01:51 +01:00
## Dependances
- [base-fedora-36](../base-fedora-36/README.md)
- [base-fedora](../base-fedora/README.md)
- [systemd](../systemd/README.md)
- [base-machine](../base-machine/README.md)
- [base](../base/README.md)
- [dns-local](../dns-local/README.md)
2023-02-14 14:24:16 +01:00
- [pki-tls](../pki-tls/README.md)
2023-06-29 18:56:46 +02:00
- [journald](../journald/README.md)
2023-07-31 18:41:59 +02:00
- [resolved](../resolved/README.md)
2022-12-24 13:01:51 +01:00
- [relay-lmtp-client](../relay-lmtp-client/README.md)
- [relay-mail-client](../relay-mail-client/README.md)
- [ldap-client](../ldap-client/README.md)
2022-12-24 13:01:51 +01:00
- [oauth2-client](../oauth2-client/README.md)
- [nginx-https](../nginx-https/README.md)
- [nginx-common](../nginx-common/README.md)
- [reverse-proxy-client](../reverse-proxy-client/README.md)
2023-08-11 09:38:05 +02:00
## Useful for service
2023-02-14 14:43:41 +01:00
2023-08-11 09:38:05 +02:00
[roundcube](../roundcube/README.md): Roundcube, a webmail.