Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente | |||
technique:adminsys:mail:config:ldap:sasl-mta [2021/11/22 22:29] – ↷ Page déplacée de technique:internal_serv:mail:config:ldap:sasl-mta à technique:adminsys:mail:config:ldap:sasl-mta qduchemi | technique:adminsys:mail:config:ldap:sasl-mta [2021/11/24 23:39] (Version actuelle) – ↷ Liens modifiés en raison d'un déplacement. qduchemi | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | {{indexmenu_n> | ||
+ | # Envoyer des mails depuis une adresse Picasoft | ||
+ | SASL est un ensemble de normes permettant de s' | ||
+ | |||
+ | Dans cette page, nous allons détailler comment Postfix vérifie si des noms d' | ||
+ | |||
+ | Postfix peut avoir plusieurs // | ||
+ | |||
+ | ===== Les fichiers de config de saslauthd ===== | ||
+ | Le remplissage des fichiers de config est automatisé avec les dockerfiles, | ||
+ | |||
+ | Sous debian, le fichier de config saslauthd pour postfix est dans < | ||
+ | |||
+ | On indique dans le main de Postfix un lien vers ce fichier de config de Cyrus: | ||
+ | < | ||
+ | #/ | ||
+ | smtpd_sasl_path = smtpd | ||
+ | </ | ||
+ | Il est important que smtpd porte le même nom que le fichier de config Cyrus (sans le .conf). | ||
+ | |||
+ | ===== Le démon saslauthd ===== | ||
+ | Ce démon crée un socket UNIX et attend qu'on lui demande de valider des authentifications. La config par défaut de saslauthd veut que ce démon soit dans : | ||
+ | < | ||
+ | Cependant, Postfix est // | ||
+ | Debian recommande de créer des processus saslauthd séparés et spécifiques (nous en créons donc un pour postfix). Pour plus de détails, [[https:// | ||
+ | Le socket de saslauthd-post sera finalement dans < | ||
+ | |||
+ | Pour donner à Postfix l' | ||
+ | < | ||
+ | pwcheck_method: | ||
+ | mech_list: PLAIN LOGIN | ||
+ | </ | ||
+ | On voit que le login est transmis en PLAIN, c'est dû au protocole SMTP. Il faut rajouter une couche de chiffrement pour que ce soit sécurisé. Sur une prod, il faut interdire l'auth PLAIN sur du SMTP non sécurisé. (En revanche, une connexion sans authentification peut se faire en SMTP non sécurisé (typiquement pour de la réception de mails du reste du monde)). | ||
+ | ==== Le processus saslauthd-postf ==== | ||
+ | On crée un processus saslauthd spécifique qui ne sera accessible qu'à Postfix. | ||
+ | Pour cela, on copie le processus par défaut et on l' | ||
+ | < | ||
+ | < | ||
+ | DESC=" | ||
+ | NAME=" | ||
+ | # Option -m sets working dir for saslauthd (contains socket) | ||
+ | OPTIONS=" | ||
+ | (repris du [[https:// | ||
+ | Il faut faire d' | ||
+ | === PAM === | ||
+ | Rien de plus simple, la config par défaut de saslauthd sous debian le fait. Il suffit d'un: | ||
+ | < | ||
+ | MECHANISMS=" | ||
+ | </ | ||
+ | Éventuellement, | ||
+ | === LDAP === | ||
+ | < | ||
+ | MECHANISMS=" | ||
+ | </ | ||
+ | Il faut également modifier / | ||
+ | < | ||
+ | ldap_servers: | ||
+ | ldap_search_base: | ||
+ | ldap_filter: | ||
+ | etc... | ||
+ | </ | ||
+ | Pour la configuration du bind LDAP, voir plus bas. | ||
+ | === IMAP === | ||
+ | < | ||
+ | MECHANISMS=" | ||
+ | MECH_OPTIONS=" | ||
+ | </ | ||
+ | Le nom d' | ||
+ | saslauthd tentera de faire un AUTH IMAP standard, et dès qu'il a une réponse il se déconnecte. | ||
+ | ===== Les binds LDAP ===== | ||
+ | Si on choisit la solution LDAP, il faut configurer des binds au niveau du serveur. Ces binds sont préalables au challenge SASL: d' | ||
+ | Cette configuration se fait dans / | ||
+ | < | ||
+ | ldap_servers: | ||
+ | ldap_bind_dn: | ||
+ | ldap_bind_pw: | ||
+ | ldap_search_base: | ||
+ | ldap_filter: | ||
+ | </ | ||
+ | |||
+ | * `ldap_servers` : On peut en mettre plusieurs, séparés par des virgules. Le SSL est supporté. | ||
+ | * `ldap_bind_dn` et `ldap_bind_pw` : Configure les modalités de la connexion entre saslauthd et le serveur ldap. Ici, on ne peut faire que du readonly (voir la [[technique: | ||
+ | * `ldap_search_base` : permet de spécifier un étage de l' | ||
+ | * `ldap_filter` : Permet de mettre certains critères, aussi bien sur l' | ||
+ | |||
+ | Si LDAPS est utilisé, on veillera à ce : | ||
+ | |||
+ | * Le certificat soit signé par une autorité de certification installée sur le système (pour Let's Encrypt, installer `ca-certificates` suffit) | ||
+ | * Ou que `ldap_tls_cacert_file` point vers le certificat du serveur LDAP. | ||
+ | |||
+ | Ceci parce que `saslauthd`, |