Я просмотрел каждый форум, каждую статью, каждое сообщение serverfault.com в поисках этой проблемы. Я использую новую установку Postfix. Управляется Virtualmin. Всякий раз, когда я пытаюсь отправить почту через TLS, я получаю сообщение об ошибке (идентифицирующая информация удалена):
7 сентября, 21:58:37 mail postfix/smtp[220916]: инициализация механизма TLS на стороне клиента
7 сентября, 21:58:37, почта postfix/tlsmgr[220917]: открыть TLS-кеш smtpd btree:/var/lib/postfix/smtpd_scache
7 сентября, 21:58:38, почта postfix/tlsmgr[220917]: открыть кеш smtp TLS btree:/var/lib/postfix/smtp_scache
7 сентября, 21:58:38, почтовый постфикс/tlsmgr[220917]: tlsmgr_cache_run_event: начать очистку кэша сеанса TLS smtpd
7 сентября, 21:58:38, почтовый постфикс/tlsmgr[220917]: tlsmgr_cache_run_event: начать очистку кеша сеанса TLS smtp
7 сентября, 21:58:38 mail postfix/smtp[220918]: инициализация механизма TLS на стороне клиента
7 сентября, 21:58:38 mail postfix/smtp[220918]: 536A837552: TLS требуется, но хост gmail-smtp-in.l.google.com не предлагал его[173.194.219.27]
7 сентября 21:58:38 почтовый постфикс/smtp[220916]: E9C5637920: to=<[email protected]>, relay=ts11-do.checktls.com[165.227.190.238]:25, задержка=3768, delays=3768/0.67/0.11/0, dsn=4.7.4, status=deferred (требуется TLS, но не предлагается хостом ts11-do.checktls.com[165.227.190.238])
7 сентября, 21:58:38, почта postfix/smtp[220918]: 536A837552: TLS требуется, но не предлагается хостом alt1.gmail-smtp-in.l.google.com[172.217.197.27]
7 сентября, 21:58:38, почта postfix/smtp[220918]: 536A837552: TLS требуется, но не предлагается хостом alt2.gmail-smtp-in.l.google.com[108.177.12.27]
7 сентября, 21:58:39, почта postfix/smtp[220918]: 536A837552: TLS требуется, но не предлагается хостом alt3.gmail-smtp-in.l.google.com[64.233.186.27]
7 сентября 21:58:39 почта postfix/smtp[220918]: 536A837552: to=<[email protected]>, relay=alt4.gmail-smtp-in.l.google.com[209.85.202.27]:25, delay=3819, delays=3817/0.67/1.2/0, dsn=4.7.4, status=deferred (требуется TLS, но не предлагается хостом alt4.gmail-smtp-in.l.google.com[209.85. 202.27])
7 сентября 22:00:01 почтовый постфикс/пикап[220911]: A9D8537D1D: uid=33 from=<www-data>
7 сентября 22:00:01 почтовый постфикс/очистка [221006]: A9D8537D1D: message-id=<[email protected]>
Я использую letsencrypt (полученный с помощью Virtualmin) для своего сертификата. Он помещает сертификаты в /home/user/ssl.* Вот мой main.cf (домен заменен на example.com):
alias_database = хэш:/и т.д./псевдонимы
alias_maps = хеш:/и т.д./псевдонимы
allow_percent_hack = нет
append_dot_mydomain = нет
биф = нет
сломанный_sasl_auth_clients = да
home_mailbox = Почтовый каталог/
inet_protocols = ipv4
mailbox_command = /usr/bin/procmail-wrapper -o -a $DOMAIN -d $LOGNAME
почтовый ящик_размер_лимит = 0
milter_default_action = принять
мой домен = EXAMPLE.com
myhostname = mail.EXAMPLE.com
mynetworks_style = подсеть
non_smtpd_milters = инет: локальный: 8891
получатель_разделитель = +
sender_bcc_maps = хэш:/etc/postfix/bcc
sender_dependent_default_transport_maps = хеш:/etc/postfix/зависимый
smtp_dns_support_level = DNSsec
smtp_host_lookup = DNS
smtp_tls_ciphers = высокий
smtp_tls_exclude_ciphers = MD5, DES, ADH, RC4, PSD, SRP, 3DES, eNULL, a NULL
smtp_tls_loglevel = 4
smtp_tls_mandatory_ciphers = высокий
smtp_tls_mandatory_exclude_ciphers = MD5, DES, ADH, RC4, PSD, SRP, 3DES, eNULL, aNULL
smtp_tls_mandatory_protocols = TLSv1.3,TLSv1.2,TLSv1.1,!TLSv1,!SSLv2,!SSLv3
smtp_tls_note_starttls_offer = да
smtp_tls_protocols = TLSv1.3, TLSv1.2, TLSv1.1, !TLSv1, !SSLv2, !SSLv3
smtp_tls_security_level = зашифровать
smtp_tls_session_cache_database = btree:${каталог_данных}/smtp_scache
smtpd_milters = инет: локальный: 8891
smtpd_recipient_restrictions = Permit_MyNetworks Permit_Sasl_Authenticated reject_unauth_destination check_policy_service inet:127.0.0.1:10023
smtpd_relay_restrictions = ${{$compatibility_level} < {1} ? {} : {permit_mynetworks allow_sasl_authenticated defer_unauth_destination}}
smtpd_sasl_auth_enable = да
smtpd_tls_ask_ccert = да
smtpd_tls_cert_file=/home/EXAMPLE/ssl.cert
smtpd_tls_ciphers = высокий
smtpd_tls_exclude_ciphers = MD5, DES, ADH, RC4, PSD, SRP, 3DES, eNULL, a NULL
smtpd_tls_key_file=/home/EXAMPLE/ssl.key
smtpd_tls_loglevel = 4
smtpd_tls_mandatory_ciphers = высокий
smtpd_tls_mandatory_exclude_ciphers = MD5, DES, ADH, RC4, PSD, SRP, 3DES, eNULL, aNULL
smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3, !TLSv1, TLSv1.1, TLSv1.2, TLSv1.3
smtpd_tls_protocols = TLSv1.3, TLSv1.2, TLSv1.1, !TLSv1, !SSLv2, !SSLv3
smtpd_tls_received_header = да
smtpd_tls_security_level = зашифровать
smtpd_tls_session_cache_database = btree:${каталог_данных}/smtpd_scache
tls_preempt_cipherlist = да
tls_random_source = dev:/dev/urandom
tls_server_sni_maps = хеш:/etc/postfix/sni_map
virtual_alias_maps = хеш:/etc/postfix/виртуальный
виртуальный_алиас_домен = $мойдомен
Я знаю, что ENCRYPT принудительно использует TLS - использование MAY откатывается к не-TLS-соединению, это для тестирования.
Вот мой master.cf
smtp инет n - n - - smtpd
пикап unix n - n 60 1 пикап
очистка unix n - n - 0 очистка
qmgr unix n - n 300 1 qmgr
#qmgr unix n - n 300 1 oqmgr
tlsmgr unix --n 1000? 1 тлсмгр
переписать unix - - n - - тривиально-переписать
отказ unix - - n - 0 отказ
отложить unix - - n - 0 отказов
трассировка unix - - n - 0 отказов
проверить unix - - n - 1 проверить
прошить unix n - n 1000? 0 флеш
proxymap unix - - n - - proxymap
proxywrite unix - - n - 1 proxymap
smtp unix - - n - - smtp
реле unix - - n - - smtp
-o syslog_name=postfix/$service_name
# -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
showq unix n - n - - showq
ошибка unix - - n - - ошибка
повторите попытку unix - - n - - ошибка
отбросить unix - - n - - отбросить
локальный unix - n n - - локальный
виртуальный unix - n n - - виртуальный
lmtp unix - - n - - lmtp
наковальня unix - - n - 1 наковальня
архив unix - - n - 1 архив
postlog unix-dgram n - n - 1 postlogd
*** Я восстановил конфигурацию по умолчанию, надеясь, что это поможет, но без изменений.
Когда я подключаюсь по телнету к своему серверу, я получаю опцию starttls:
Пытаюсь 127.0.0.1...
Подключен к 127.0.0.1.
Экранирующий символ '^]'.
220 mail.EXAMPLE.com Постфикс ESMTP
EHLO example.com
250-mail.EXAMPLE.com
250-ТРУБОПРОВОД
250-РАЗМЕР 10240000
250-ВРФЯ
250-ЭТРН
250-STARTTLS
250 РАСШИРЕННЫХ КОДОВ СОСТОЯНИЯ
250-8БИТИМИМ
250-ДСН
250 РАЗБИВКА
Я использую opnsense для своего брандмауэра.Я не думаю, что это блокирует TLS с проверкой SMTP.
С настройками, установленными на МОЖЕТ вместо ШИФРОВАТЬ, я могу нормально отправлять и получать электронные письма. Если для него установлено значение МОЖЕТ, Google и checktls.com сообщают, что TLS не используется.
Все тесты на dmarc, spf и т.д. Это постфикс (последний), работающий на сервере Ubuntu 20.
Моя среда:
- Совместный сервер в центре обработки данных (без ограничений на их стороне)
- Proxmox, обновлено по состоянию на 08.09.21
- Контейнер работает в LXC, Ubuntu 20
- Контейнер находится за брандмауэром OPNSense.
- Веб-тесты показывают, что сервер предлагает starttls
- Запуск telnet с сервера> другой сервер показывает starttls как вариант
Любая помощь очень ценится, спасибо.