1
0
mirror of https://blitiri.com.ar/repos/chasquid synced 2025-12-17 14:37:02 +00:00
Files
go-chasquid-smtp/docs/dovecot.md
Alberto Bertogli fcbd20cd74 docs: Add a section on dovecot auth troubleshooting
This patch adds a section on dovecot authentication troubleshooting,
with common suggestions that can help identify what is going on when
the chasquid-dovecot interaction isn't working as expected.
2020-03-21 16:54:39 +00:00

74 lines
1.8 KiB
Markdown

# Dovecot integration
As of version 0.04 (2018-02), [chasquid] has integration with [dovecot] for
authenticating users.
This means that chasquid can ask dovecot to authenticate users, instead/in
addition to having its own per-domain user databases.
## Configuring dovecot
The following needs to be added to the Dovecot configuration, usually in
`/etc/dovecot/conf.d/10-master.conf`:
```
service auth {
unix_listener auth-chasquid-userdb {
mode = 0660
user = chasquid
}
unix_listener auth-chasquid-client {
mode = 0660
user = chasquid
}
}
```
If chasquid is running under a different user, adjust the `user = ` lines
accordingly.
This lets chasquid issue authentication requests to dovecot.
Authentication requests sent by chasquid to dovecot will use the
fully-qualified user form, `user@domain`.
## Configuring chasquid
Add the following line to `/etc/chasquid/chasquid.conf`:
```
dovecot_auth: true
```
That should be it, because chasquid will "autodetect" the full path to the
dovecot sockets, by looking in the usual places (tested in Debian, Ubuntu, and
CentOS).
If chasquid can't find them, the paths can be set with the
`dovecot_userdb_path` and `dovecot_client_path` options.
## Troubleshooting
Dovecot authentication can be tricky to troubleshoot.
If you think it is not working as it should, or chasquid isn't correctly
talking with it, the easiest way to check is to [increase dovecot auth logging
verbosity](https://doc.dovecot.org/admin_manual/logging/?highlight=logging#logging-verbosity):
```
auth_verbose = yes
auth_debug = yes
```
One common gotcha is when dovecot is set up to use `user` instead of
`user@domain`. In that case you can try setting `auth_username_format = %n` to
make it ignore the domain if present.
[dovecot]: https://dovecot.org
[chasquid]: https://blitiri.com.ar/p/chasquid