This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
сервер_dovecot [2020/08/28 07:57] val |
сервер_dovecot [2024/02/05 12:06] val [Настройка dovecot на использование OAuth2] |
||
---|---|---|---|
Line 4: | Line 4: | ||
* [[http://ru.wikipedia.org/wiki/IMAP]] | * [[http://ru.wikipedia.org/wiki/IMAP]] | ||
* [[http://ru.wikipedia.org/wiki/Dovecot]] | * [[http://ru.wikipedia.org/wiki/Dovecot]] | ||
- | * [[http://lehan604.blogspot.com/2008/12/dovecot-imaps-pop3s.html]] | ||
- | * [[http://tuupic.org.ru/perenos-pochty-s-mbox-na-maildirsendmaildovecot/]] | ||
- | |||
===== Установка ===== | ===== Установка ===== | ||
==== Debian/Ubuntu ==== | ==== Debian/Ubuntu ==== | ||
- | === Без поддержки GSSAPI === | + | * [[https://help.ubuntu.com/community/Dovecot]] |
- | [[https://help.ubuntu.com/community/Dovecot]] | ||
<code> | <code> | ||
root@server:~# apt install dovecot-imapd | root@server:~# apt install dovecot-imapd | ||
- | |||
- | root@server:~# cd /etc/dovecot/conf.d/ | ||
</code> | </code> | ||
- | === C поддержкой GSSAPI === | ||
- | <code> | ||
- | root@gate:~# apt install dovecot-imapd dovecot-gssapi | ||
- | root@gate:~# cd /etc/dovecot/conf.d/ | ||
- | </code> | ||
===== Настройка с использованием стандартных mailboxes и аутентификации открытым текстом ===== | ===== Настройка с использованием стандартных mailboxes и аутентификации открытым текстом ===== | ||
+ | |||
+ | !!! Можно не делать, если удастся "уговорить" Thunderbird использовать самоподписанные сертификаты (не удалось под Linux) | ||
<code> | <code> | ||
- | server# cat 10-auth.conf | + | server# cat /etc/dovecot/conf.d/10-auth.conf |
</code><code> | </code><code> | ||
... | ... | ||
Line 38: | Line 29: | ||
... | ... | ||
</code><code> | </code><code> | ||
- | server# cat 10-ssl.conf | + | server# cat /etc/dovecot/conf.d/10-ssl.conf |
</code><code> | </code><code> | ||
... | ... | ||
ssl = no | ssl = no | ||
- | ... | ||
- | #ssl_cert = ... | ||
- | #ssl_key = ... | ||
... | ... | ||
</code><code> | </code><code> | ||
- | server# cat 10-mail.conf | + | server# less /etc/dovecot/conf.d/10-mail.conf |
</code><code> | </code><code> | ||
... | ... | ||
Line 70: | Line 58: | ||
===== Kerberos GSSAPI аутентификация ===== | ===== Kerberos GSSAPI аутентификация ===== | ||
+ | <code> | ||
+ | # apt install dovecot-imapd dovecot-gssapi | ||
+ | </code> | ||
==== Создаем ключи сервиса и копируем иx на сервер ==== | ==== Создаем ключи сервиса и копируем иx на сервер ==== | ||
+ | |||
+ | === При использовании Winbind === | ||
+ | |||
+ | * [[Сервис WINBIND#Управление ключами KERBEROS в режиме ADS]] | ||
=== Если в роли KDC выступает Active Directory === | === Если в роли KDC выступает Active Directory === | ||
Line 78: | Line 73: | ||
Добавляем пользователя в AD | Добавляем пользователя в AD | ||
<code> | <code> | ||
+ | Login: gatesmtp | ||
Login: gateimap | Login: gateimap | ||
Password: Pa$$w0rd | Password: Pa$$w0rd | ||
- | </code> | ||
Пароль не меняется и не устаревает | Пароль не меняется и не устаревает | ||
+ | </code> | ||
== Создаем ключ сервиса http связывая его с фиктивным пользователем AD == | == Создаем ключ сервиса http связывая его с фиктивным пользователем AD == | ||
- | Устанавливаем Microsoft Windows Support Tools | ||
<code> | <code> | ||
C:\>ktpass -princ imap/gate.corpX.un@CORPX.UN -mapuser gateimap -pass 'Pa$$w0rd' -out gateimap.keytab | C:\>ktpass -princ imap/gate.corpX.un@CORPX.UN -mapuser gateimap -pass 'Pa$$w0rd' -out gateimap.keytab | ||
+ | |||
+ | C:\>ktpass -princ smtp/gate.corpX.un@CORPX.UN -mapuser gatesmtp -pass 'Pa$$w0rd' -out gatesmtp.keytab | ||
</code> | </code> | ||
Line 93: | Line 90: | ||
<code> | <code> | ||
C:\>pscp gateimap.keytab root@gate: | C:\>pscp gateimap.keytab root@gate: | ||
+ | |||
+ | C:\>pscp gatesmtp.keytab root@gate: | ||
</code> | </code> | ||
Line 116: | Line 115: | ||
kadmin.local: ktadd -k gateimap.keytab imap/gate.CORPX.UN | kadmin.local: ktadd -k gateimap.keytab imap/gate.CORPX.UN | ||
+ | kadmin.local: addprinc -randkey smtp/gate.corpX.un | ||
+ | kadmin.local: addprinc -e rc4-hmac:normal -randkey smtp/gate.CORPX.UN | ||
+ | |||
+ | kadmin.local: ktadd -k gatesmtp.keytab smtp/gate.corpX.un | ||
+ | kadmin.local: ktadd -k gatesmtp.keytab smtp/gate.CORPX.UN | ||
kadmin.local: exit | kadmin.local: exit | ||
+ | </code> | ||
+ | |||
+ | === Samba4 === | ||
+ | <code> | ||
+ | server# samba-tool user create gatemail | ||
+ | |||
+ | server# samba-tool user setexpiry gatemail --noexpiry | ||
+ | |||
+ | server# samba-tool spn add imap/gate.corpX.un gatemail | ||
+ | server# samba-tool spn add smtp/gate.corpX.un gatemail | ||
+ | |||
+ | server# samba-tool spn list gatemail | ||
+ | |||
+ | server# samba-tool domain exportkeytab gateimap.keytab --principal=imap/gate.corpX.un | ||
+ | server# samba-tool domain exportkeytab gatesmtp.keytab --principal=smtp/gate.corpX.un | ||
</code> | </code> | ||
Line 122: | Line 141: | ||
<code> | <code> | ||
server# scp gateimap.keytab gate: | server# scp gateimap.keytab gate: | ||
+ | |||
+ | server# scp gatesmtp.keytab gate: | ||
</code> | </code> | ||
Line 137: | Line 158: | ||
root@gate:~# ktutil | root@gate:~# ktutil | ||
ktutil: rkt /root/gateimap.keytab | ktutil: rkt /root/gateimap.keytab | ||
+ | ktutil: rkt /root/gatesmtp.keytab | ||
ktutil: wkt /etc/krb5.keytab | ktutil: wkt /etc/krb5.keytab | ||
ktutil: quit | ktutil: quit | ||
Line 147: | Line 169: | ||
<code> | <code> | ||
- | # cat 10-auth.conf | + | # cat /etc/dovecot/conf.d/10-auth.conf |
</code><code> | </code><code> | ||
... | ... | ||
+ | #периодически нужно :) | ||
auth_gssapi_hostname = "$ALL" | auth_gssapi_hostname = "$ALL" | ||
... | ... | ||
- | auth_mechanisms = gssapi | + | auth_mechanisms = gssapi plain |
... | ... | ||
- | </code> | + | </code><code> |
+ | debian10/11/12# chmod +r /etc/krb5.keytab | ||
- | ==== Настройка клиента Thunderbird на использование GSSAPI ==== | ||
- | <code> | ||
gate# mail user1 | gate# mail user1 | ||
</code> | </code> | ||
- | Email адрес: user1@gate.corpX.un | + | * Thunderbird - [[Thunderbird#Настройка на использование GSSAPI]] |
- | При первом запуске Thunderbird отмените получение почты с указанием пароля | ||
- | |||
- | Откройте свойства папки user1@gate.corpX.un -> Параметры сервера->Использовать аутентификацию GSSAPI | ||
===== Аутентификация для postfix ===== | ===== Аутентификация для postfix ===== | ||
+ | |||
+ | * [[Сервис MTA#Настройка MTA на релеинг почты на основе аутентификации]] | ||
+ | |||
<code> | <code> | ||
# cat /etc/dovecot/conf.d/10-master.conf | # cat /etc/dovecot/conf.d/10-master.conf | ||
Line 187: | Line 209: | ||
==== Debian/Ubuntu/FreeBSD ==== | ==== Debian/Ubuntu/FreeBSD ==== | ||
<code> | <code> | ||
- | server# cat 10-auth.conf | + | server# cat /etc/dovecot/conf.d/10-auth.conf |
</code><code> | </code><code> | ||
... | ... | ||
Line 193: | Line 215: | ||
... | ... | ||
</code><code> | </code><code> | ||
- | server# cat 10-ssl.conf | + | server# cat /etc/dovecot/conf.d/10-ssl.conf |
</code><code> | </code><code> | ||
... | ... | ||
Line 236: | Line 258: | ||
auth_mechanisms = EXTERNAL | auth_mechanisms = EXTERNAL | ||
... | ... | ||
- | </code><code> | + | </code> |
+ | |||
+ | ===== OAuth аутентификация ===== | ||
+ | <code> | ||
+ | # cat /etc/dovecot/conf.d/10-auth.conf | ||
+ | ... | ||
+ | auth_mechanisms = xoauth2 oauthbearer | ||
+ | ... | ||
+ | </code> | ||
+ | |||
+ | ===== Авторизация без пароля, на основе аутентификации ===== | ||
+ | <code> | ||
# cat /etc/dovecot/conf.d/auth-system.conf.ext | # cat /etc/dovecot/conf.d/auth-system.conf.ext | ||
... | ... | ||
Line 291: | Line 324: | ||
</code> | </code> | ||
- | ===== NTLM аутентификация и авторизация ===== | + | ==== NTLM аутентификация и авторизация ==== |
* [[Сервис WINBIND#Регистрация unix системы в домене в режиме DOMAIN]] | * [[Сервис WINBIND#Регистрация unix системы в домене в режиме DOMAIN]] | ||
* [[Сервис WINBIND#Авторизация в режиме DOMAIN]] | * [[Сервис WINBIND#Авторизация в режиме DOMAIN]] | ||
- | ==== Настройка dovecot на использование NTLM ==== | + | === Настройка dovecot на использование NTLM === |
<code> | <code> | ||
# cat 10-auth.conf | # cat 10-auth.conf | ||
Line 315: | Line 348: | ||
</code> | </code> | ||
- | ==== Настройка клиента Outlook Express на использование NTLM ==== | + | === Настройка клиента Outlook Express на использование NTLM === |
... | ... | ||
Использовать безопасную проверку пароля (SPA) | Использовать безопасную проверку пароля (SPA) | ||
... | ... |