Рейтинг:0

Безопасное подключение к веб-/почтовому серверу не работает в MacOS/iOS

флаг am

Я в отчаянии: Я переместил два домена с одного сервера на другой, который работал без сбоев. Я защитил оба домена (веб и почту) с помощью сертификатов Letsencrypt.Теперь владелец этих доменов пожаловался на неработающий почтовый сервер. Но этого не могло быть, потому что другие домены могли отправлять и получать электронную почту. При устранении неполадок я заметил, что веб-страницы не могут быть получены с моего сервера в macOS или iOS. (Соединение отклонено - Безопасное соединение не может быть установлено). Под Windows/Linux/Android все это без проблем и почтовый трафик тоже работает без нареканий. Итак, что происходит? Похоже, Apple не может работать с созданными сертификатами Letsencrypt. Что я не могу представить.

У кого-нибудь есть идеи по этому поводу? Спасибо за вашу помощь.

Сервер: Ubuntu 20.04, под управлением Plesk

Клиент: macOS Catalina, Apple Mail

---[РЕДАКТИРОВАТЬ]--- я побежал

openssl s_client -подключить maildomain.com:465

на компьютере с Windows И Mac, чтобы проверить, что происходит при соединении с моим почтовым сервером. Результат на ПК:

    ПОДКЛЮЧЕН(00000003)
depth=2 C = США, O = Исследовательская группа по безопасности в Интернете, CN = ISRG Root X1
проверить возврат: 1
depth=1 C = US, O = Let’s Encrypt, CN = R3
проверить возврат: 1
глубина = 0 CN = maildomain.com
проверить возврат: 1
---
Цепочка сертификатов
 0 s:CN = maildomain.com
   i:C = US, O = Let’s Encrypt, CN = R3
 1 s:C = US, O = Let’s Encrypt, CN = R3
   i:C = США, O = Исследовательская группа по безопасности в Интернете, CN = ISRG Root X1
 2 s:C = США, O = Исследовательская группа по безопасности в Интернете, CN = ISRG Root X1
   i:O = Digital Signature Trust Co., CN = DST Root CA X3
---
Сертификат сервера
-----НАЧАТЬ СЕРТИФИКАТ-----
MIIFJzCCBA+gAwIBAgISBBHHETtaspqio7t1ZKYQ36xHMA0GCSqGSIb3DQEBCwUA
MDIxCzAJBgNVBAYTALVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MQswCQYDVQQD
EwJSMzAeFw0yMTEwMDUwNzQyMjVaFw0yMjAx ... и т.д.
-----КОНЕЦ СЕРТИФИКАТА-----
тема = CN = maildomain.com

эмитент = C = США, O = Let's Encrypt, CN = R3

---
Имена ЦС сертификата клиента не отправлены
Дайджест одноранговой подписи: SHA256
Тип одноранговой подписи: RSA-PSS
Временный ключ сервера: X25519, 253 бита
---
SSL-рукопожатие прочитало 4676 байт и записало 395 байт.
Проверка: ОК
---
Новый, TLSv1.2, шифр ECDHE-RSA-AES256-GCM-SHA384.
Открытый ключ сервера 2048 бит.
Поддерживается безопасное повторное согласование IS
Сжатие: НЕТ
Расширение: НЕТ
ALPN не согласован
SSL-сессия:
    Протокол: TLSv1.2
    Шифр: ECDHE-RSA-AES256-GCM-SHA384
    Идентификатор сеанса: DDE8ED4DBF7BD8E8F2D411EDE00C7522C0A15927E3D0C75F58F174B7464270D3
    Идентификатор сеанса-ctx:
    Мастер-ключ: 6D3167E0283ED9BA1F6427841212C8BAF37FF75998B369DE4184618EF9BFBE9F8860809CC9B7xxxxxxxxxxxxxxxxxxxxxx
    Идентификация PSK: нет
    Подсказка идентификации PSK: нет
    Имя пользователя SRP: нет
    Подсказка о сроке действия билета сеанса TLS: 7200 (секунд)
    Билет сеанса TLS:
    0000 - 21 be ab 05 b8 95 30 14-cf c1 ff 7d 98 aa 3c 82 !.....0....}..<. ... и т.д...

    Время начала: 1633683311
    Время ожидания: 7200 (сек)
    Подтвердите код возврата: 0 (хорошо)
    Расширенный главный секрет: да
---
220 my.server.com Постфикс ESMTP (Debian/GNU)
уволиться
221 2.0.0 Пока
закрыто

И вот ответ на Mac:

ПОДКЛЮЧЕН(00000003)
341: ошибка: 1407742E: процедуры SSL: SSL23_GET_SERVER_HELLO: версия протокола предупреждений tlsv1: S23_clnt.c: 596:

Итак, похоже, что Mac не поддерживает TLS1.2/TLS1.3...

Любые предложения, что делать?

флаг ph
macOS Catalina должна поддерживать как TLS v1.2, так и 1.3 (по крайней мере, используя системную библиотеку TLS; не уверен насчет команды `openssl`). Я бы попробовал удалить сертификат «ISRG Root X1» из пакета, который использует сервер — это сертификат с перекрестной подписью от «DST Root CA X3», срок действия которого только что истек, и это может сбивать с толку клиентов.
флаг am
Привет, @Гордон Дэвиссон! Спасибо за Ваш ответ. Как узнать, что срок действия этих сертификатов истек?
флаг ph
См. [это сообщение на LetsEncrypt](https://letsencrypt.org/2021/10/01/cert-chaining-help.html) и [это от Скотта Хелма](https://scotthelme.co.uk/lets -encrypt-root-expiration-post-mortem/). Обратите внимание, что срок действия промежуточного продукта, который вы обслуживаете, не истек, но есть корень, которым он подписан. Это немного странно, но это было сделано для поддержки старых клиентов Android (старее 7.1.1). Вам нужна поддержка старых версий Android? Если да, то промежуточное звено будет необходимо. Но я бы все равно попробовал этот тест, чтобы, по крайней мере, вы могли сказать, не является ли это промежуточным звеном, который сбивает с толку клиентов Mac.
флаг ph
Кстати, еще одна вещь, которую можно попробовать, это добавить фактический «ISRG Root X1» (самоподписанный, а не промежуточный с тем же именем), доступный [здесь] (https://letsencrypt.org/certificates/), в цепь. Как правило, нет необходимости включать корневые сертификаты в комплект сервера, но в этом случае стоит попробовать проверить, не запутает ли это клиентов Mac.
флаг am
Привет, @Гордон. Извините за задержку с ответом. Я удалил сертификат через dpkg, но, похоже, он все еще там. При подключении к моему почтовому серверу я все еще вижу первую строку после CONNECT. (Исходный пост, первый лог).Что я делаю неправильно? Спасибо и привет.
флаг ph
Версия TLS вызывает у меня все больше подозрений — попробуйте `openssl s_client -connect github.com:443
флаг am
Привет @Гордон. Большое спасибо за ваш совет. Я дам ему попробовать. Я предполагаю, что это больше проблема с сервером, поскольку с этого сервера также нельзя получить доступ к зашифрованным SSL-сайтам. Но, как я уже сказал, только с устройств iOS и компьютеров Mac. У тебя есть другие идеи?
флаг ph
Net, на данный момент я просто ищу дополнительную информацию, чтобы определить причину проблемы.
флаг am
Хорошо. Github ответил: «Новый, TLSv1/SSLv3, Cipher is…». Сертификат DigCert High Assurance Cert.
флаг am
@ Гордон, с тех пор я могу использовать iPhone и iPad моих детей для доступа к веб-сайтам, размещенным на этом сервере. Так что, похоже, все-таки есть проблема с компьютерами Mac пользователя. Есть ли вероятность, что его компьютеры чем-то заражены? Я не фанат Apple... извините.
флаг am
@GordonDavisson: Даже после обновления программного обеспечения Mac это невозможно заставить работать. Я думаю о поддержке старой версии TLS/SSL. Как я могу это сделать?
флаг am
Мне нужно спросить, правильно ли я удалил просроченный сертификат с сервера. Потому что еще: ```depth=2 C = США, O = Исследовательская группа по безопасности в Интернете, CN = ISRG Root X1 проверить возврат: 1 depth=1 C = US, O = Let’s Encrypt, CN = R3 проверить возврат: 1 глубина = 0 CN = maildomain.com проверить возврат: 1 ```
флаг am
Цепь: `Цепочка сертификатов 0 s:CN = maildomain.com i:C = US, O = Let’s Encrypt, CN = R3 1 s:C = US, O = Let’s Encrypt, CN = R3 i:C = США, O = Исследовательская группа по безопасности в Интернете, CN = ISRG Root X1 2 s:C = США, O = Исследовательская группа по безопасности в Интернете, CN = ISRG Root X1 i:O = Digital Signature Trust Co., CN = DST Root CA X3` я не понимаю...
флаг ph
Хорошо, теперь я действительно смущен. Этот последний результат OpenSSL в вашем комментарии (это из Windows?) показывает, что он все еще обслуживает промежуточное звено с перекрестной подписью. Я совсем не знаком с Plesk, поэтому у меня нет никаких предложений по его удалению. Но что касается теста github, часть «Новый, TLSv1/SSLv3» кажется совершенно неправильной, поскольку, насколько я вижу, ни один из их серверов не поддерживает TLSv1 или SSLv3 (см. [этот результат теста SSL Labs] (https://www .ssllabs.com/ssltest/analyze.html?d=github.com).Так что, может быть, происходит какое-то вредоносное ПО/перехват SSL/что-то в этом роде?
флаг am
Неа. я побежал ```òpenssl s_client -connect maildomain.com:465 ```
флаг ph
Не могли бы вы поделиться настоящим доменным именем, чтобы я мог проводить тесты напрямую?
флаг am
Конечно, если вы дадите мне свой адрес электронной почты.... ;)
флаг am
Эта ошибка сохраняется даже после перехода на новый сервер. SSLLabs показывает зеленый цвет на защищенном домене, но я не могу вызвать веб-страницу. Только с Edge можно получить контент. Firefox и Chrome: Нет! И Safari жалуется на то, что не может установить безопасное соединение. Втф происходит?

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.