У меня есть сайт, опубликованный с Forefront TMG в качестве HTTPS-сайта. Имеет действующий сертификат SSL (EV). Сайт корректно отображается во всех браузерах, кроме Safari, Midori и Dolphin.
Проблема в том, что в Safari нет связи с сайтом. Как будто сайт вообще не отвечает на запрос. Файл не передается. Связь совсем мертвая. Хотя бы на долгое время (от 30 секунд до пары минут).
У меня есть несколько разных сайтов, настроенных по HTTPS. Разные домены, разные IP-адреса и разные сертификаты. Сертификаты от разных эмитентов.
Проблема существует со всеми моими веб-сайтами HTTPS, ТОЛЬКО с браузерами Safari, Midori и Dolphin, все 3 сайта корректно работают в любом другом браузере. Ни лагов, ни проблем не сообщалось.
Я попытался отключить перенаправление HTTP на HTTPS в прослушивателе TMG, чтобы исключить проблему с сертификатом. Я тоже не могу получить доступ к своим сайтам через http. Однако они прекрасно доступны из браузеров Firefox, Opera, Chrome, IE, Vivaldi, Slimjet и Edge.
Иногда я могу отобразить одну страницу в Safari, но это занимает более 30 секунд, но при этом отсутствуют некоторые изображения (и / или CSS). Затем - веб-сайт выходит из строя, потому что AJAX на странице не работает, хотя заголовки CORS правильно настроены, и URL-адреса, на которые есть ссылки, могут даже отвечать (с огромными задержками).
Выглядит это так: вы вводите URL и получаете сообщение о том, что сайт недоступен. Затем, если вы обновите страницу несколько раз, она, наконец, появится, но сильно сломана (например, многие файлы были недоступны).
На других браузерах лагов нет. Все файлы доступны сразу.
На вкладке «Политика веб-доступа» у меня отключены все параметры проверки и прокси.
Что самое странное - у меня есть другой сайт (HTTP) на том же сервере, но опубликованный на другом IP. Сайт без проблем работает во ВСЕХ браузерах. Кажется, что все IP-адреса и маршрутизация настроены правильно, и если бы это было не так, как бы другие браузеры отображали сайты?
Кстати, это 100% не на самих сайтах. Даже если я попытаюсь открыть один HTML-файл или изображение с сайта, его нельзя будет загрузить с помощью Safari.
ВАЖНО: информация о сертификате SSL сайта отображается правильно, это единственное, что загружается с этих сайтов. Итак, я вижу значок замка, информацию о сайте, но не вижу содержимого. После разрешения HTTP-соединений он не работает ни через HTTP. Работает через HTTP в некоторых браузерах.
ВАЖНО: все упомянутые сайты доступны во всех браузерах, когда TMG опущен (через VPN, когда я напрямую ссылаюсь на мой NLB IP).
Проблема началась, когда мы переместили наши виртуальные серверы на новые хосты в новой сети. На старой сети все заработало. Но опять же - какова конфигурация внутренней сети, чтобы сайты были недоступны только в определенных браузерах?
Обновить
Я пробовал много вещей, например, изменение MTU на брандмауэре CISCO ASA, но это не помогло. Я попытался обновить свою конфигурацию SSL в TMG, используя этот учебник:
Повышение безопасности SSL в Forefront TMG
Я закончил тест даже не до конца. Плюс я получаю предупреждение о «несогласованной конфигурации сервера». И он останавливается с сообщением «Обходной путь длинного рукопожатия: hanshake не длиннее 0x200 байт: 132». Ну, у меня домены www.example.com и example.com установлены на разные адреса. Это специально. И между двумя из них есть пара перенаправлений. Кстати, сайт www имеет собственный сертификат на случай, если кто-то набрал его URL с https. Но в основном не используется. И да, я заменил сертификат сервера без www, но www остается без обновления. Это ошибка, но она должна затронуть только сайт www. Но тот, кто плохо себя ведет, https://example.comне https://www.example.com.
Что случилось? Поскольку в прошлый раз все работало хорошо, у меня была одна и та же виртуальная машина TMG на другом хосте. Мои сайты были на разных (старых) серверах IIS. У меня были разные внешние IP-адреса и не было DMZ. И сертификат был другим, более старым, с ключом 128 бит вместо 256. Не было межсетевого экрана CISCO ASA. Это случилось после того, как мы переместили все сайты на новые машины. Они работают в любом браузере, кроме Safari, Midori и Dolphin.
Обновить
Я подключаюсь к внутренней сети через VPN, через ASA. Если я установил IP-адрес своего домена прямо на внутренний адрес NLB - он работает. Если я выставлю DMZ IP - этого не произойдет. И, конечно же, на внешнем IP - нет. Конечно, все 3 пути отлично работают в большинстве браузеров, затронуты только Safari, Midori и Dolphin.
Кстати, тот же самый ASA CISCO направляет мои веб-запросы в общедоступную сеть.
BTW2: чистый HTTP-сайт (без сертификата) из того же IIS-> NLB-> TMG-> DMZ-> ASA - работает с Safari без задержек или других проблем. Единственное, что я не тестировал, - это удаление сертификата и установка только HTTP-доступа. Это производственный веб-сайт, если бы я пошел на это, я бы сделал это ночью и в большой спешке.
Это похоже на простую проблему с сетевым подключением. Симптомы обычно возникают при неверно настроенном MTU. В качестве альтернативы TGM может что-то отбрасывать, но я недостаточно знаю об этом, чтобы сказать.
Я бы порекомендовал сначала протестировать с уменьшенным MTU - установка MTU для сервера или клиента или обоих на 1200 было бы хорошим местом для начала. В качестве альтернативы вы можете использовать проводное соединение, чтобы увидеть, какие параметры TCP согласовываются, и перейти оттуда.
[Edit] Изменение MTU в Windows немного зависит от того, какую версию Windows вы используете, так как это не указано, я только что предоставил общий результат Google: