Что видит Firefox
Сообщение «Получена запись SSL, превышающая максимально допустимую длину» звучит странно, но объяснение простое. Firefox отправил на порт запрос по защищённому протоколу, а в ответ пришло нечто, не похожее на TLS. Первые байты ответа он интерпретировал как заголовок записи и получил невозможную длину. Отсюда и формулировка.
В большинстве случаев в ответ пришла обычная текстовая страница по HTTP. Это значит: вы обращаетесь по https, а на другом конце порт работает без шифрования.
Типичные причины: Firefox SSL_ERROR_RX_RECORD_TOO_LONG
На первом месте неверная конфигурация сервера: HTTPS включён, но виртуальный хост слушает порт 443 без директивы включения TLS. На втором — использование в адресе схемы https с нестандартным портом, где сервис на самом деле открытый. Например, панель управления на отдельном порту, которая отвечает только по HTTP.
Третья причина — прокси или переадресация портов, направившие защищённый трафик не туда. Четвёртая — сбой конфигурации на роутере, когда порт 443 проброшен на устройство без TLS. Реже встречаются ошибки в промежуточных устройствах и странные настройки браузера.
Быстрая проверка
Замените в адресе https на http и посмотрите, откроется ли страница. Если да, сервис на этом порту не использует шифрование, и всё объясняется. Проверьте, нет ли в адресе лишнего или неправильного номера порта.
Если вы администрируете сервер, посмотрите, какой процесс слушает нужный порт. На Linux для этого подходит команда ss с ключами прослушивающих сокетов, на Windows — netstat. Затем убедитесь, что в конфигурации для этого порта указаны сертификат и ключ, а директива включения TLS присутствует.
Если вы пробрасываете порты на роутере, сверьте адрес получателя и порт назначения.
Исправление на стороне сервера
Включите TLS для нужного сайта или порта в конфигурации веб-сервера, укажите путь к сертификату и закрытому ключу, проверьте синтаксис конфигурации и перезапустите службу. Если для порта 80 нужна отдельная обработка, настройте переадресацию на защищённый адрес.
В случае панели управления или сервиса с нестандартным портом лучше найти в его документации параметр включения HTTPS. Не выключайте шифрование для панели, доступной из интернета: пароль администратора не должен передаваться открытым текстом.
После изменений проверьте страницу в обычном и приватном окнах, чтобы кеш не показал старый результат.
Если вы просто посетитель
Как посетитель вы мало что можете исправить. Попробуйте адрес без указания порта, откройте сайт с другого устройства, очистите кеш. Если сайт известный, вероятно, идёт сбой конфигурации, и лучше подождать.
Если адрес вам дали вручную, попросите проверить схему и порт. Ошибка зачастую в том, что автор ссылки написал https вместо http или наоборот. В таких случаях уместно просто использовать правильный вариант адреса.
Родственные ошибки в других браузерах
Та же ситуация в Chrome выглядит как ERR_SSL_PROTOCOL_ERROR, в Safari — как неудача безопасного соединения, а при проверке утилитой curl — как ошибка о неверном номере версии или неизвестном протоколе. Названия отличаются, но причина одна: на другом конце не TLS.
Это помогает при поиске решения. Если вы видите такие сообщения в разных программах при обращении к одному порту, проверьте именно порт и схему адреса. Полезный приём на стороне администратора: сделать запрос по открытому HTTP к тому же порту. Если сервер ответил обычной страницей или заголовками, значит, TLS на этом порту не включён, и остальное расследование можно не проводить.
Проверка через командную строку: Быстро проверить порт можно утилитой curl: запрос по http и по https к одному порту сразу покажет, что отвечает сервер. Если на защищённый запрос возвращается ошибка о неверной версии или неизвестном протоколе, а на обычный — нормальный ответ, порт работает без шифрования. Эта проверка занимает секунды и однозначно направляет исправление в конфигурацию сервера, а не в браузер.