Я настроил сервер dovecot, и в настоящее время я использую автономный imap для синхронизации моего gmail с imap dovecot, работающим на локальном хосте.
В настоящее время я использую аутентификацию с использованием обычного текста, но в результате каждый почтовый клиент запрашивает и запоминает пароль моего имени пользователя только для доступа к почте с localhost.
Есть ли способ настроить dovecot так, чтобы он не запрашивал у меня аутентификацию, когда я, например, пытаюсь войти в систему из GNUS с localhost? Или заставить его спрашивать pam / gnomekeyring / что-нибудь, чтобы не спрашивать меня?
пс. нет планов разрешить доступ к серверу dovecot не с localhost. Даже из локальной сети.
На ум приходят три варианта:
Во-первых, если вы находитесь на одном компьютере, вы можете просто напрямую использовать базовое почтовое хранилище, не используя IMAP. Однако в зависимости от используемого магазина и клиента это может привести к некоторым проблемам с отражением изменений в IMAP.
Во-вторых, используйте механизм Dovecot для предварительно аутентифицированные сеансывместе с inetd
или ucspi-tcp's tcpserver
если вам нужно прослушивать TCP-порт для выбранного вами клиента.
Наконец, вы можете настроить проверку подлинности билета Kerberos и использовать ее с Dovecot через GSSAPI. Но это, вероятно, перебор для вашего сценария.
В комментарий от @grawity на другой ответ, хотя теперь он устарел, привел меня к нужному мне решению. Он заслуживает отдельного ответа. Этот ответ к тесно связанный вопрос предоставил недостающее звено.
Сеансы с предварительной аутентификацией могут быть получены путем передачи по конвейеру с помощью команды Dovecot. Последние (> = 2.0) версии Dovecot предоставляют imap
команда, которая в Debian и Ubuntu находится по адресу /usr/lib/dovecot/imap
. В более старых версиях вы бы вместо этого запускали dovecot --exec-mail imap
(находится в /usr/sbin
).
Для меня mutt
, необходимый .muttrc настройка таким образом было бы
tunnel=/usr/lib/dovecot/imap
В настоящее время (2.2.32+) Dovecot позволяет вам создать определение passdb, которое имеет параметры allow_real_nets=127.0.0.1/32
и nopassword
в override_fields
настройка. Это позволит использовать любой пароль, но только из указанной подсети (IE localhost). Вы по-прежнему можете использовать обычное определение passdb, чтобы убедиться, что почтовый ящик правильно существует, но используйте override_fields или что-то подобное, чтобы установить эти два параметра для его ограничения.