Что это в error_log? Неверный метод в запросе \x16\x03\x01

Я нашел эту строку Invalid method in request \x16\x03\x01 on error_log fileи некоторые другие похожие строки:

[Wed Oct 27 23:16:37 2010] [error] [client 187.117.240.164] Invalid URI in request x\xb2\xa1:SMl\xcc{\xfd"\xd1\x91\x84!d\x0e~\xf6:\xfbVu\xdf\xc3\xdb[\xa9\xfe\xd3lpz\x92\xbf\x9f5\xa3\xbbvF\xbc\xee\x1a\xb1\xb0\xf8K\xecE\xbc\xe8r\xacx=\xc7>\xb5\xbd\xa3\xda\xe9\xf09\x95"fd\x1c\x05\x1c\xd5\xf3#:\x91\xe6WE\xdb\xadN;k14;\xdcr\xad\x9e\xa8\xde\x95\xc3\xebw\xa0\xb1N\x8c~\xf1\xcfSY\xd5zX\xd7\x0f\vH\xe4\xb5(\xcf,3\xc98\x19\xefYq@\xd2I\x96\xfb\xc7\xa9\xae._{S\xd1\x9c\xad\x17\xdci\x9b\xca\x93\xafSM\xb8\x99\xd9|\xc2\xd8\xc9\xe7\xe9O\x99\xad\x19\xc3V]\xcc\xddR\xf7$\xaa\xb8\x18\xe0f\xb8\xff

Апач сделал изящный перезапуск через несколько секунд после первой ошибки...

3 ответа

Решение

Что касается первой ошибки, возможно, ваш веб-сервер по ошибке пытается передать незашифрованный HTTP-запрос на порт 443 (HTTPS).

Чтобы проверить это, подключитесь к порту 443 по имени хоста или IP-адресу вашего веб-сервера и выполните команду: GET / HTTP/1.0, Предполагая, что IP-адрес - 10.0.0.1, что вы используете Windows, и что у вас установлен клиент telnet для Windows (отстой, кстати - я предпочитаю SecureCRT или PuTTY, который бесплатен), введите в окне командной строки следующую команду и нажмите Enter:

telnet 10.0.0.1 443

Когда соединение установлено (вы должны увидеть пустой экран с мигающим курсором), введите:

GET / HTTP/1.0

... и дважды нажмите Enter.

Краткое примечание: вы не сможете увидеть материал, который вы набираете после установления сеанса telnet, даже если ваши нажатия клавиш все равно будут отправлены на сервер. В клиенте telnet Windows параметр "localecho" управляет этим поведением, но по умолчанию он отключен.

Краткое примечание № 2: Backspace "не будет работать", поэтому будьте осторожны, чтобы не сделать опечатку, иначе вам придется начинать с нуля.

Если вы вернетесь открытым текстом, читаемым HTML, у вас, вероятно, есть проблемы с конфигурацией ваших виртуальных хостов.

Я не уверен насчет второй ошибки, и даже если это так, это не должно заставить Apache изящно перезапускаться...

ИСПРАВЛЕНО моя ошибка

вместо

server {
    listen 443;

используйте следующую команду, чтобы сообщить серверу, что вы используете 443 для прослушивания запроса ssl/https.

server {
  listen *:443 default_server ssl; 

После небольшого исследования Apache версии 2.2.21 и ниже уязвим при возврате ошибки 400.

http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2012-0053

Обновите ваш apache до версии 2.2.22 или выше, если это не так.

Другие вопросы по тегам