ошибка ssl RX запись слишком долго и Apache SSL [закрыто]

У меня есть клиент, пытающийся получить доступ к одному из моих сайтов, и они продолжают получать эту ошибку > ssl_error_rx_record_too_long

Они получают эту ошибку на всех браузерах, на всех платформах. Я вообще не могу воспроизвести проблему.

мой сервер и я расположены в США, клиент расположен в Индии.

я погуглил по проблеме, и основным источником, похоже, является то, что порт SSL говорит в HTTP. Я проверил свой сервер, и это не событие. Я пытался!--7-->решение упомянутых здесь, но клиент заявил, что он не исправил проблему.

может ли кто-нибудь сказать мне, как я могу это исправить или как я могу это воспроизвести???

РЕШЕНИЕ

оказывается, у клиента был неправильно сконфигурированный локальный прокси!

надеюсь, что это поможет любому найти этот вопрос, пытаясь отладить его в будущем.

15 ответов


на ссылка, упомянутая Subimage был прав на деньги для меня. Он предложил изменить тег виртуального хоста, т. е. с <VirtualHost myserver.example.com:443> to <VirtualHost _default_:443>

код ошибки: ssl_error_rx_record_too_long

это обычно означает, что реализация SSL на вашем сервере не является правильной. Ошибка обычно вызвана проблемой на стороне сервера, которую администратор сервера должен будет исследовать.

Ниже приведены некоторые вещи, которые мы рекомендуем попробовать.

  • убедитесь, что порт 443 открыт и включен на вашем сервере. Это стандартный порт для HTTPS-соединений.

  • если SSL использует нестандартный порт, то FireFox 3 иногда может дать эту ошибку. Убедитесь, что SSL работает на порту 443.

  • при использовании Apache2 проверьте, что вы используете порт 443 для SSL. Это можно сделать, установив порты.файл conf следующим образом

    Listen 80
    Listen 443 https
    
  • убедитесь, что у вас нет более одного сертификата SSL с одним и тем же IP-адресом. Убедитесь, что все SSL-сертификаты используют собственный выделенный IP-адрес.

  • при использовании Apache2 проверьте конфигурацию vhost. Некоторые пользователи сообщили об изменении <VirtualHost> до _default_ устранена ошибка.

это исправило мою проблему. Редко, что я google сообщение об ошибке и получить первый удар с правильным ответом! :-)

в дополнение к выше, это некоторые другие решения, которые другие люди нашли были причиной проблемы:

  • убедитесь, что ваш SSL-сертификат не истек

  • попробуйте указать шифр:

    SSLCipherSuite ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM:+SSLv3


решение для меня было то, что default-ssl не был включен в Apache 2.... просто ставлю SSLEngine On

Я должен был выполнить a2ensite default-ssl и все работало.


в моем случае мне пришлось изменить обратно на (что является значением по умолчанию для Ubuntu). В противном случае порт 443 не использовал SSL и отправлял обычный HTML обратно в браузер.

вы можете проверить, является ли это ваш случай довольно легко: просто подключиться к серверуhttp://www.example.com:443. Если вы видите простой HTML, ваш Apache вообще не использует SSL на порту 443, скорее всего, из-за VirtualHost неправильная настройка.

Ура!


в моем случае я забыл поставить SSLEngine On в конфигурации. Вот так,

<VirtualHost _default_:443>
  SSLEngine On
  ...
</VirtualHost>

http://httpd.apache.org/docs/2.2/mod/mod_ssl.html#sslengine


Если у вас есть ошибка после установки нового https vhost и конфигурация кажется правильной, не забудьте связать в sites-enabled тоже.


старый вопрос, но первый результат в Google для меня, так что вот что я должен был сделать.

Ubuntu 12.04 Desktop с установленным Apache

вся конфигурация и mod_ssl были установлены, когда я установил Apache, но он просто еще не был связан в нужных местах. Примечание: все пути ниже относятся к / etc / apache2/

mod_ssl хранящийся в ./mods-available, и конфигурация сайта SSL находится в ./sites-available, вы просто должны связать эти на свои правильные места в ./mods-enabled и ./sites-enabled

cd /etc/apache2
cd ./mods-enabled
sudo ln -s ../mods-available/ssl.* ./
cd ../sites-enabled
sudo ln -s ../sites-available/default-ssl ./

перезапустить Apache, и он должен работать. Я пытался получить доступ https://localhost, поэтому ваши результаты могут отличаться для внешнего доступа, но это сработало для меня.


спросите пользователя о точном URL, который они используют в своем браузере. Если они входят https://your.сайт:80, они могут получить ошибку ssl_error_rx_record_too_long.


в моем случае у меня был неправильный IP-адрес в файле виртуального хоста. Прослушивание было 443, и строфа была <VirtualHost 192.168.0.1:443> но у сервера не было адреса 192.168.0.1!


см. этой ссылке.

Я просмотрел все мои файлы журнала apache, пока не нашел фактическую ошибку (я изменил <VirtualHost> с _default_ мой fqdn). Когда я исправил эту ошибку, все работало нормально.


в моем случае проблема заключалась в том, что https не удалось запустить правильно, потому что Listen 443 был в "ifdefine SSL" derective, но мой apache не начинался с опции-DSSL. Исправление было изменить мой скрипт apachectl в:

$HTTPD -k $ARGV

в:

$HTTPD -k $ARGV -DSSL

надеюсь, что это кому-то поможет.


моя проблема была связана с низким MTU через VPN-соединение.

netsh interface ipv4 show inter

Idx  Met   MTU   State        Name
---  ---  -----  -----------  -------------------
  1 4275 4294967295  connected    Loopback Pseudo-Interface 1
 10 4250   **1300**  connected    Wireless Network Connection
 31   25   1400  connected    Remote Access to XYZ Network

исправить: netsh интерфейс ipv4 установить интерфейс "беспроводное сетевое подключение" mtu=1400

это также может быть проблема с подключением без VPN...


У меня была испорченная конфигурация виртуального хоста. Помните, что вам нужен один виртуальный хост без SSL для порта 80, а другой с SSL для порта 443. Вы не можете иметь оба в одном виртуальном хосте, как пытался сделать созданный Webmin config.


У меня была такая же проблема в некотором браузере для доступа к моему сайту SSL. Я нашел это я должен был дать fireFox правильный прокси (FireFox имел доступ непосредственно к интернету).

в зависимости от конфигурации lan (туннелирование, фильтрация, перенаправление прокси), режим "прямой доступ к интернету" для FireFox выдает эту ошибку.


вы также можете попробовать исправить файл hosts.

сохраните файл vhost с полным доменом и добавьте имя хоста в файл hosts /и т. д./хосты (debian)

ip.ip.ip.ip name name.domain.com

после перезапуска apache2 ошибка должна исчезнуть.


для меня решение было, что мой ddclient не был надлежащим образом cronning...