[GH-ISSUE #1374] [FEATURE REQUEST] Improving Docker MailServer configuration : add missing Dovecot environnement variables #476

Open
opened 2026-02-27 08:17:28 +03:00 by kerem · 2 comments
Owner

Originally created by @maitreyorene on GitHub (Dec 29, 2025).
Original GitHub issue: https://github.com/lldap/lldap/issues/1374

Motivation
I want this feature because the current mailserver.md configuration example does not include the DOVECOT_PASS_FILTER and DOVECOT_PASS_ATTRS environment variables, which are required for a fully functional Dovecot authentication setup with LLDAP. Without these variables, Dovecot cannot correctly retrieve user credentials or match users by either UID or email address, leading to authentication failures or inconsistent behavior.

This addition is especially important when using a configuration such as =home=/var/mail/%d/%n in the DOVECOT_USER_ATTRS environment variable, because Dovecot must be able to resolve both the user’s email and password attributes from LDAP in order to correctly map users to their mailbox paths.

Adding these missing variables would enable reliable Dovecot integration out of the box and help users configure Docker MailServer or similar setups without guesswork or trial‑and‑error.

The solution I'd like
Adding the two missing environment variables in example_configs/mailserver.md

DOVECOT_PASS_FILTER=(&(objectClass=inetOrgPerson)(|(uid=%u)(mail=%u)))

DOVECOT_PASS_ATTRS==user=%{ldap:mail},=password=%{ldap:userPassword}
Originally created by @maitreyorene on GitHub (Dec 29, 2025). Original GitHub issue: https://github.com/lldap/lldap/issues/1374 **Motivation** I want this feature because the current `mailserver.md` configuration example does not include the DOVECOT_PASS_FILTER and DOVECOT_PASS_ATTRS environment variables, which are required for a fully functional Dovecot authentication setup with LLDAP. Without these variables, Dovecot cannot correctly retrieve user credentials or match users by either UID or email address, leading to authentication failures or inconsistent behavior. This addition is especially important when using a configuration such as `=home=/var/mail/%d/%n` in the `DOVECOT_USER_ATTRS` environment variable, because Dovecot must be able to resolve both the user’s email and password attributes from LDAP in order to correctly map users to their mailbox paths. Adding these missing variables would enable reliable Dovecot integration out of the box and help users configure Docker MailServer or similar setups without guesswork or trial‑and‑error. **The solution I'd like** Adding the two missing environment variables in `example_configs/mailserver.md` ```.env DOVECOT_PASS_FILTER=(&(objectClass=inetOrgPerson)(|(uid=%u)(mail=%u))) DOVECOT_PASS_ATTRS==user=%{ldap:mail},=password=%{ldap:userPassword} ````
Author
Owner

@coderabbitai[bot] commented on GitHub (Dec 29, 2025):

📝 CodeRabbit Plan Mode

Generate an implementation plan and prompts that you can use with your favorite coding agent.

  • Create Plan
Examples

🔗 Similar Issues

Related Issues

🔗 Related PRs

lldap/lldap#1266 - document: Simple LDAPS:// configuration for Open WebUI [merged]
lldap/lldap#1331 - docs: lldap password in docker install corrected [merged]

👤 Suggested Assignees

🧪 Issue enrichment is currently in open beta.

You can configure auto-planning by selecting labels in the issue_enrichment configuration.

To disable automatic issue enrichment, add the following to your .coderabbit.yaml:

issue_enrichment:
  auto_enrich:
    enabled: false

💬 Have feedback or questions? Drop into our discord!

<!-- gh-comment-id:3697505363 --> @coderabbitai[bot] commented on GitHub (Dec 29, 2025): <!-- This is an auto-generated issue plan by CodeRabbit --> ### 📝 CodeRabbit Plan Mode Generate an implementation plan and prompts that you can use with your favorite coding agent. - [ ] <!-- {"checkboxId": "8d4f2b9c-3e1a-4f7c-a9b2-d5e8f1c4a7b9"} --> Create Plan <details> <summary>Examples</summary> - [Example 1](https://github.com/coderabbitai/git-worktree-runner/issues/29#issuecomment-3589134556) - [Example 2](https://github.com/coderabbitai/git-worktree-runner/issues/12#issuecomment-3606665167) </details> --- <details> <summary><b>🔗 Similar Issues</b></summary> **Related Issues** - https://github.com/lldap/lldap/issues/1151 - https://github.com/lldap/lldap/issues/1214 - https://github.com/lldap/lldap/issues/1176 - https://github.com/lldap/lldap/issues/1128 </details> <details> <summary><b>🔗 Related PRs</b></summary> lldap/lldap#1266 - document: Simple `LDAPS://` configuration for Open WebUI [merged] lldap/lldap#1331 - docs: lldap password in docker install corrected [merged] </details> <details> <summary><b>👤 Suggested Assignees</b></summary> - [6C656C65](https://github.com/6C656C65) - [MahdiBaghbani](https://github.com/MahdiBaghbani) - [jochemvangrondelle](https://github.com/jochemvangrondelle) - [garylavayou](https://github.com/garylavayou) - [thchha](https://github.com/thchha) </details> --- <details> <summary> 🧪 Issue enrichment is currently in open beta.</summary> You can configure auto-planning by selecting labels in the issue_enrichment configuration. To disable automatic issue enrichment, add the following to your `.coderabbit.yaml`: ```yaml issue_enrichment: auto_enrich: enabled: false ``` </details> 💬 Have feedback or questions? Drop into our [discord](https://discord.gg/coderabbit)!
Author
Owner

@nitnelave commented on GitHub (Dec 29, 2025):

Feel free to contribute to the current guide and improve it! We're open to PRs.

However, a word of warning: LLDAP doesn't expose anything like userPassword, and is unable to do so. We don't have a password hash to share, we only store enough information for a zero knowledge proof.

<!-- gh-comment-id:3697641907 --> @nitnelave commented on GitHub (Dec 29, 2025): Feel free to contribute to the current guide and improve it! We're open to PRs. However, a word of warning: LLDAP doesn't expose anything like userPassword, and is unable to do so. We don't have a password hash to share, we only store enough information for a zero knowledge proof.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/lldap-lldap#476
No description provided.