Назад | Перейти на главную страницу

Dovecot требует сертификата клиента только для удаленных подключений

После небольшой борьбы мне удалось настроить Dovecot на требование клиентских сертификатов для пользователей, выполняющих вход в систему, и это работает хорошо.

Однако я также хочу настроить решение для веб-почты (Roundcube), которое должно иметь возможность подключаться через IMAP, но, похоже, не способно отправлять сертификат клиента. Я настраиваю его на использование порта 143 (незашифрованный), поскольку соединение происходит через надежную сеть, и с учетом этого я добавил свою локальную сеть в Dovecot. login_trusted_networks так что аутентификация с открытым текстом также работает.

К сожалению, когда Roundcube подключается, он все еще запрашивает сертификат клиента, даже если для подключения не включен SSL.

Я уже ограничил требование для клиентских сертификатов, чтобы избежать проблем с postfix, используя следующее:

protocol !smtp {
    ssl_ca = </etc/dovecot/ca/dovecot-ca.pem
    ssl_verify_client_cert = yes
    ssl_cert_username_field = commonName

    auth_ssl_require_client_cert = yes
    auth_ssl_username_from_cert = yes
}

Однако я не знаю, как я могу ограничить это только зашифрованными соединениями? Я не разрешаю удаленный доступ к незашифрованным протоколам, за исключением порта 25, необходимого для отправки электронной почты между серверами.

В качестве примечания по безопасности тот же сертификат, защищающий соединения IMAPS, также используется для аутентификации клиента. nginx, поэтому веб-почта уже ограничена сертификатом, хотя я могу переключиться на другой второй уровень аутентификации для мобильности (например, какой-то двухфакторный API).