Я пытаюсь настроить postifx smtp_tls_policy_maps, чтобы я мог установить для каждого пользователя исходящие электронные письма, которые должны быть зашифрованы.
Одним из примеров является почтовый провайдер mailbox.org. Как можно заключить из предложений о работе, компания также полагается на компоненты с открытым исходным кодом dovecot и postfix.
Если «простые» соединения SSL / TLS недостаточно безопасны для вас, вы можете выбрать более высокие уровни безопасности здесь:
зашифровать: Обычное безопасное шифрование электронной почты через SSL / TLS, но использование незащищенного открытого текста запрещено. только датчанин: Электронные письма отправляются только провайдерам, чей сертификат SSL подтвержден действительными записями DANE.
проверить: Электронные письма отправляются только поставщикам, чьи сертификаты SSL были вручную добавлены в нашу базу данных.
https://kb.mailbox.org/display/BMBOKBEN/Ensuring+E-Mails+are+Sent+Securely
Какое может быть возможное решение? Из TLS инструкция postfix Я к сожалению не могу понять
Получил сам! Это моя конфигурация, в данном случае специфичная для LDAP, но ее можно легко переписать для бэкэндов mysql.
Поскольку для параметров клиента SMTP Postfix не существует версии "карты отправителя", мне потребовалось "обходное решение" с использованием транспортных карт.
/etc/postfix/main.cf
sender_dependent_default_transport_maps = ldap:/etc/postfix/ldap/transport_maps.cf
Я создал службу forceenc с определенными параметрами для обеспечения соблюдения tls. Кроме того, я добавил smtp_delivery_status_filter для перезаписи программных сбоев при сбое установления связи TLS с жесткими сбоями. Таким образом, пользователь получает Недоставленная почта возвратилась отправителю мгновенно.
/etc/postfix/master.cf
forceenc unix - - y - - smtp
-o smtp_tls_loglevel=1
-o smtp_tls_security_level=encrypt
-o syslog_name=forceenc
-o smtp_delivery_status_filter=pcre:/etc/postfix/smtp_dsn_filter
/ и т.д. / постфикс / smtp_dsn_filter
/^4(\.\d+\.\d+ TLS is required, but host \S+ refused to start TLS: .+)/
5$1
/^4(\.\d+\.\d+ TLS is required, but was not offered by host .+)/
5$1
/^4.7.5(.*)/
5.7.5$1
Это моя специфическая конфигурация ldap для поиска по транспортной карте.
/etc/postfix/ldap/transport_maps.cf
server_host = ldaps://ldap.example.com
bind = yes
start_tls = no
version = 3
bind_dn = cn=root,dc=ldap,dc=example,dc=com
bind_pw = THE_LDAP_ROOT_PASS
search_base = ou=people,dc=ldap,dc=example,dc=com
scope = sub
# simple user select filter
query_filter = (&(mail=%s)(mailEnabled=TRUE)(objectClass=person))
# an custom schema which returns "forceenc:"
result_attribute = transportMap
debuglevel = 0
Для дальнейшего чтения рекомендую этот нить.