Необычные совпадения в журнале Apache для сайта localhost

У меня есть веб-сервер Apache 2.2 под управлением Windows 7 с шестью настроенными виртуальными хостами.

  • Доменное имя A указывает на ?: /.../ urls / 1 /
  • Имя домена B указывает на ?: /.../ urls / 2 /
  • Имя домена C + D указывает на ?: /.../urls/3/
  • Имя домена E * указывает на ?: /.../ urls / 4 /
  • Мой общедоступный IP-адрес указывает на ?: /.../ urls / 5 /
  • Localhost + IP-точка сети на ?: /.../ urls / 6 /

(псевдоадреса и пути)

Редактировать: Фактический порядок в конфигурации

  • Localhost + IP-адрес сети на ?: /.../ urls / 6 /
  • Мой общедоступный IP-адрес указывает на ?: /.../ urls / 5 /
  • Имя домена A указывает на ?: /.../ urls / 1 /
  • Имя домена B указывает на ?: /.../ urls / 2 /
  • Имя домена C + D указывает на ?: /.../urls/3/
  • Имя домена E * указывает на ?: /.../ urls / 4 /

End Edit

У меня еще нет доменного имени E, так что на данный момент он определен в моем файле hosts, и он работает, когда я пытаюсь получить к нему доступ в братане wser по имени домена.

Я сделал несколько обширных изменений структуры файлов и немного изменил мои виртуальные хосты, поэтому сейчас каждый сайт просто показывает тестовую страницу, которая просто указывает, какой это сайт. Доменное имя A / B / C / и т. Д. На каждом сайте есть собственный журнал доступа и журнал ошибок. Все вроде бы простые вещи. Для меня в новинку иметь частный сайт на localhost. Раньше localhost, сетевой IP-адрес и доменное имя A указывали на мой основной сайт, поэтому не было никаких соображений по поводу конфиденциальности.

Сейчас меня беспокоит тот сайт 6, который должен быть доступен только localhost ], 127.0.0.1 и 192.168.1.100 , записывает попадания с внешних адресов в журнал доступа. Этот сайт отрицает все, кроме моих собственных адресов, и внешние запросы привели к 403, как и ожидалось, независимо от того, пытаются ли они получить доступ к реальным файлам, таким как index.html или чему-то поддельному, хотя несколько запросов привели к ошибке 400, которую я не знаком с. При возникновении определенных распространенных ошибок я перенаправляю пользовательский сценарий ошибки с ? Code = $ HTTP_CODE , чтобы выгрузить данные% ENV в файл в надежде, что я смогу собрать полезную информацию об этих совпадениях, а также вернуть страница с ошибкой для пользователя. Пока для меня ничего не имеет смысла.

Я хочу знать, как / почему эти запросы достигают моих внутренних адресов, если меня что-то беспокоит в ?: /.../ urls / 6 / является общедоступным, если я неправильно сконфигурировал что-либо в Apache, и если да, то как это исправить.

Вот несколько фрагментов, которые могут иметь отношение. Пути и мои веб-адреса были запутаны.

файл хостов

127.0.0.1        domain-name-E.com          # domain that i don't own yet
127.0.0.1        www.domain-name-E.com      # domain that i don't own yet

httpd-vhosts.conf Изменить: скорректировано для отображения фактического порядка VHs

<Directory "?:/.../urls/">
    Order Deny,Allow
    Allow from all
</Directory>

NameVirtualHost *:80

# site 6: private
<VirtualHost *:80>
    DocumentRoot "?:/.../urls/6/www/"

    ServerName  localhost
    ServerAlias 127.0.0.1
    ServerAlias 192.168.1.100

    ScriptAlias /cgi/ "?:/.../urls/6/cgi/"
    <Directory "?:/.../urls/6/cgi/">
        AllowOverride All
    </Directory>

    ErrorLog  "?:/.../logs/errors-site6.log"

  # CustomLog "?:/.../logs/access-site6.log" common
    LogFormat "%{%Y/%m/%d (%a) at %H:%M:%S}t    %a  Login: %u   Sent: %B B in %D µs   Status: %s/%>s for %H %m %{Host}i%U%q Using: %{User-agent}i   From: %{Referer}i" custom
    CustomLog "?:/.../logs/access-site6.log" custom env=!dontlog

    SetEnvIf Remote_Addr "127\.0\.0\.1"       dontlog
    SetEnvIf Remote_Addr "192\.168\.1\..*"    dontlog
    SetEnvIf Remote_Addr "XXX\.XXX\.XXX\.XXX" dontlog # my public IP address
</VirtualHost>

# site 5 here
# site 1 here
# site 2 here
# site 3 here
# site 4 here

?: /.../ urls / 6 / .htaccess

# site 6: private

Deny from all
Allow from 127.0.0.1
Allow from 192.168.1
Allow from XXX.XXX.XXX.XXX # my public IP address

?: /.../ logs / access-site6.log (выравнивание немного подобрано)

# timestamp                    # IP                                                                                   #  domain/path?query                # agent                                                             # referrer
2019/06/24 (Mon) at 18:50:52   61.219.11.153    Login: -   Sent:  226 B in   3001 µs   Status: 400/400 for HTTP/1.1 GET       -/                          Using: -                                                            From: -
2019/06/24 (Mon) at 19:08:14   104.152.52.22    Login: -   Sent: 1211 B in 512029 µs   Status: 403/403 for HTTP/1.0 GET       -/?code=403                 Using: masscan/1.0 (https://github.com/robertdavidgraham/masscan)   From: -
2019/06/25 (Tue) at 00:12:51   138.99.29.110    Login: -   Sent:  226 B in   3001 µs   Status: 400/400 for HTTP/1.1 GET       -/Login.htm                 Using: -                                                            From: -
2019/06/25 (Tue) at 02:26:21   122.116.24.230   Login: -   Sent:  226 B in   3000 µs   Status: 400/400 for HTTP/1.1 GET       -/Login.htm                 Using: -                                                            From: -
2019/06/25 (Tue) at 04:21:55   92.63.194.15     Login: -   Sent: 1211 B in 365021 µs   Status: 403/403 for HTTP/0.9 GET       -/?code=403                 Using: -                                                            From: -
2019/06/25 (Tue) at 09:28:05   89.248.169.12    Login: -   Sent: 1211 B in 309018 µs   Status: 403/403 for HTTP/1.1 GET      80/?code=403                 Using: Mozilla/5.0 zgrab/0.x                                        From: -
2019/06/25 (Tue) at 10:07:53   185.53.88.37     Login: -   Sent:    0 B in 384022 µs   Status: 403/403 for HTTP/1.0 GET       -/robots.txt?code=403       Using: -                                                            From: -
2019/06/25 (Tue) at 10:48:16   77.247.110.106   Login: -   Sent:    0 B in 464027 µs   Status: 403/403 for HTTP/1.0 GET       -/robots.txt?code=403       Using: -                                                            From: -
2019/06/25 (Tue) at 13:46:30   192.31.231.241   Login: -   Sent: 1211 B in 519029 µs   Status: 403/403 for HTTP/1.1 GET default/.html?code=403            Using: curl/7.64.1                                                  From: -
2019/06/25 (Tue) at 15:14:24   77.247.110.106   Login: -   Sent:    0 B in 375022 µs   Status: 403/403 for HTTP/1.0 GET       -/robots.txt?code=403       Using: -                                                            From: -
2019/06/25 (Tue) at 21:00:55   220.133.33.166   Login: -   Sent:  226 B in   3001 µs   Status: 400/400 for HTTP/1.1 GET       -/Login.htm                 Using: -                                                            From: -
2019/06/26 (Wed) at 01:33:22   110.249.212.46   Login: -   Sent:  226 B in   2000 µs   Status: 400/400 for HTTP/1.1 GET       -/testget?q=23333&port=80   Using: -                                                            From: -

?: /.../ logs / errors-site6.log

[Mon Jun 24 18:50:52 2019] [error] [client 61.219.11.153]  client sent HTTP/1.1 request without hostname (see RFC2616 section 14.23): /
[Mon Jun 24 19:08:14 2019] [error] [client 104.152.52.22]  client denied by server configuration: ?:/.../urls/6/www/
[Tue Jun 25 00:12:51 2019] [error] [client 138.99.29.110]  client sent HTTP/1.1 request without hostname (see RFC2616 section 14.23): /Login.htm
[Tue Jun 25 02:26:21 2019] [error] [client 122.116.24.230] client sent HTTP/1.1 request without hostname (see RFC2616 section 14.23): /Login.htm
[Tue Jun 25 04:21:55 2019] [error] [client 92.63.194.15]   client denied by server configuration: ?:/.../urls/6/www/
[Tue Jun 25 09:28:05 2019] [error] [client 89.248.169.12]  client denied by server configuration: ?:/.../urls/6/www/
[Tue Jun 25 10:07:53 2019] [error] [client 185.53.88.37]   client denied by server configuration: ?:/.../urls/6/www/robots.txt
[Tue Jun 25 10:48:17 2019] [error] [client 77.247.110.106] client denied by server configuration: ?:/.../urls/6/www/robots.txt
[Tue Jun 25 13:46:30 2019] [error] [client 192.31.231.241] client denied by server configuration: ?:/.../urls/6/www/.html
[Tue Jun 25 15:14:24 2019] [error] [client 77.247.110.106] client denied by server configuration: ?:/.../urls/6/www/robots.txt
[Tue Jun 25 21:00:55 2019] [error] [client 220.133.33.166] client sent HTTP/1.1 request without hostname (see RFC2616 section 14.23): /Login.htm
[Wed Jun 26 01:33:22 2019] [error] [client 110.249.212.46] client sent HTTP/1.1 request without hostname (see RFC2616 section 14.23): /testget

?: / ... /logs/detail-site6.log (выравнивание немного подобрано, некоторые нерелевантные пары ключ / значение опущены)

2019/06/24 at 07:08:15 PM
$VAR1 = {
  'DOCUMENT_ROOT'           => '?:/.../urls/6/www/',
  'GATEWAY_INTERFACE'       => 'CGI/1.1',
  'HTTP_ACCEPT'             => '*/*',
  'HTTP_USER_AGENT'         => 'masscan/1.0 (https://github.com/robertdavidgraham/masscan)',
  'QUERY_STRING'            => 'code=403',
  'REDIRECT_REQUEST_METHOD' => 'GET',
  'REDIRECT_STATUS'         => '403',
  'REDIRECT_URL'            => '/',
  'REMOTE_ADDR'             => '104.152.52.22',
  'REMOTE_PORT'             => '48100',
  'REQUEST_METHOD'          => 'GET',
  'REQUEST_URI'             => '/',
  'SCRIPT_FILENAME'         => '?:/.../urls/6/cgi/error/.pl',
  'SCRIPT_NAME'             => '/cgi/error/.pl',
  'SERVER_ADDR'             => '192.168.1.100',
  'SERVER_NAME'             => 'localhost',
  'SERVER_PORT'             => '80',
  'SERVER_PROTOCOL'         => 'HTTP/1.0',
  'SERVER_SIGNATURE'        => '',
  'SERVER_SOFTWARE'         => 'Apache',
};

2019/06/25 at 04:21:55 AM
$VAR1 = {
  'DOCUMENT_ROOT'           => '?:/.../urls/6/www/',
  'GATEWAY_INTERFACE'       => 'CGI/1.1',
  'QUERY_STRING'            => 'code=403',
  'REDIRECT_REQUEST_METHOD' => '',
  'REDIRECT_STATUS'         => '403',
  'REDIRECT_URL'            => '/',
  'REMOTE_ADDR'             => '92.63.194.15',
  'REMOTE_PORT'             => '1468',
  'REQUEST_METHOD'          => 'GET',
  'REQUEST_URI'             => '',
  'SCRIPT_FILENAME'         => '?:/.../urls/6/cgi/error/.pl',
  'SCRIPT_NAME'             => '/cgi/error/.pl',
  'SERVER_ADDR'             => '192.168.1.100',
  'SERVER_NAME'             => 'localhost',
  'SERVER_PORT'             => '80',
  'SERVER_PROTOCOL'         => 'HTTP/0.9',
  'SERVER_SIGNATURE'        => '',
  'SERVER_SOFTWARE'         => 'Apache',
};

2019/06/25 at 09:28:05 AM
$VAR1 = {
  'DOCUMENT_ROOT'           => '?:/.../urls/6/www/',
  'GATEWAY_INTERFACE'       => 'CGI/1.1',
  'HTTP_ACCEPT'             => '*/*',
  'HTTP_ACCEPT_ENCODING'    => 'gzip',
  'HTTP_HOST'               => '80',
  'HTTP_USER_AGENT'         => 'Mozilla/5.0 zgrab/0.x',
  'QUERY_STRING'            => 'code=403',
  'REDIRECT_REQUEST_METHOD' => 'GET',
  'REDIRECT_STATUS'         => '403',
  'REDIRECT_URL'            => '/',
  'REMOTE_ADDR'             => '89.248.169.12',
  'REMOTE_PORT'             => '32902',
  'REQUEST_METHOD'          => 'GET',
  'REQUEST_URI'             => '/',
  'SCRIPT_FILENAME'         => '?:/.../urls/6/cgi/error/.pl',
  'SCRIPT_NAME'             => '/cgi/error/.pl',
  'SERVER_ADDR'             => '192.168.1.100',
  'SERVER_NAME'             => '80',
  'SERVER_PORT'             => '80',
  'SERVER_PROTOCOL'         => 'HTTP/1.1',
  'SERVER_SIGNATURE'        => '',
  'SERVER_SOFTWARE'         => 'Apache',
};

2019/06/25 at 10:07:53 AM
$VAR1 = {
  'DOCUMENT_ROOT'           => '?:/.../urls/6/www/',
  'GATEWAY_INTERFACE'       => 'CGI/1.1',
  'QUERY_STRING'            => 'code=403',
  'REDIRECT_REQUEST_METHOD' => 'HEAD',
  'REDIRECT_STATUS'         => '403',
  'REDIRECT_URL'            => '/robots.txt',
  'REMOTE_ADDR'             => '185.53.88.37',
  'REMOTE_PORT'             => '58418',
  'REQUEST_METHOD'          => 'GET',
  'REQUEST_URI'             => '/robots.txt',
  'SCRIPT_FILENAME'         => '?:/.../urls/6/cgi/error/.pl',
  'SCRIPT_NAME'             => '/cgi/error/.pl',
  'SERVER_ADDR'             => '192.168.1.100',
  'SERVER_NAME'             => 'localhost',
  'SERVER_PORT'             => '80',
  'SERVER_PROTOCOL'         => 'HTTP/1.0',
  'SERVER_SIGNATURE'        => '',
  'SERVER_SOFTWARE'         => 'Apache',
};

2019/06/25 at 10:48:17 AM
$VAR1 = {
  'DOCUMENT_ROOT'           => '?:/.../urls/6/www/',
  'GATEWAY_INTERFACE'       => 'CGI/1.1',
  'QUERY_STRING'            => 'code=403',
  'REDIRECT_REQUEST_METHOD' => 'HEAD',
  'REDIRECT_STATUS'         => '403',
  'REDIRECT_URL'            => '/robots.txt',
  'REMOTE_ADDR'             => '77.247.110.106',
  'REMOTE_PORT'             => '54263',
  'REQUEST_METHOD'          => 'GET',
  'REQUEST_URI'             => '/robots.txt',
  'SCRIPT_FILENAME'         => '?:/.../urls/6/cgi/error/.pl',
  'SCRIPT_NAME'             => '/cgi/error/.pl',
  'SERVER_ADDR'             => '192.168.1.100',
  'SERVER_NAME'             => 'localhost',
  'SERVER_PORT'             => '80',
  'SERVER_PROTOCOL'         => 'HTTP/1.0',
  'SERVER_SIGNATURE'        => '',
  'SERVER_SOFTWARE'         => 'Apache',
};

2019/06/25 at 01:46:30 PM
$VAR1 = {
  'DOCUMENT_ROOT'           => '?:/.../urls/6/www/',
  'GATEWAY_INTERFACE'       => 'CGI/1.1',
  'HTTP_ACCEPT'             => '*/*',
  'HTTP_HOST'               => 'default',
  'HTTP_USER_AGENT'         => 'curl/7.64.1',
  'QUERY_STRING'            => 'code=403',
  'REDIRECT_REQUEST_METHOD' => 'DKEMDIF&0',
  'REDIRECT_STATUS'         => '403',
  'REDIRECT_URL'            => '/.html',
  'REMOTE_ADDR'             => '192.31.231.241',
  'REMOTE_PORT'             => '33716',
  'REQUEST_METHOD'          => 'GET',
  'REQUEST_URI'             => '/.html',
  'SCRIPT_FILENAME'         => '?:/.../urls/6/cgi/error/.pl',
  'SCRIPT_NAME'             => '/cgi/error/.pl',
  'SERVER_ADDR'             => '192.168.1.100',
  'SERVER_NAME'             => 'default',
  'SERVER_PORT'             => '80',
  'SERVER_PROTOCOL'         => 'HTTP/1.1',
  'SERVER_SIGNATURE'        => '',
  'SERVER_SOFTWARE'         => 'Apache',
};

2019/06/25 at 03:14:24 PM
$VAR1 = {
  'DOCUMENT_ROOT'           => '?:/.../urls/6/www/',
  'GATEWAY_INTERFACE'       => 'CGI/1.1',
  'QUERY_STRING'            => 'code=403',
  'REDIRECT_REQUEST_METHOD' => 'HEAD',
  'REDIRECT_STATUS'         => '403',
  'REDIRECT_URL'            => '/robots.txt',
  'REMOTE_ADDR'             => '77.247.110.106',
  'REMOTE_PORT'             => '61954',
  'REQUEST_METHOD'          => 'GET',
  'REQUEST_URI'             => '/robots.txt',
  'SCRIPT_FILENAME'         => '?:/.../urls/6/cgi/error/.pl',
  'SCRIPT_NAME'             => '/cgi/error/.pl',
  'SERVER_ADDR'             => '192.168.1.100',
  'SERVER_NAME'             => 'localhost',
  'SERVER_PORT'             => '80',
  'SERVER_PROTOCOL'         => 'HTTP/1.0',
  'SERVER_SIGNATURE'        => '',
  'SERVER_SOFTWARE'         => 'Apache',
};

Может быть, это неправильная конфигурация моего маршрутизатора? Или вредоносное ПО на моем компьютере или маршрутизаторе, который звонит домой? Если да, то как я могу проверить,и могу ли я остановить это раньше?

Или это всего лишь обычный хаотичный интернет-трафик, который я могу игнорировать и спокойно отдыхать, зная, что он никогда не увидит мой частный сайт?

0
задан 26 June 2019 в 19:39
1 ответ

Если вам нужен виртуальный хост, который отвечает только на запросы для http: // localhost , не делайте этот виртуальный хост доступным для всех IP-адресов с Подстановочный знак IP-адреса:

<VirtualHost *:80>
    ServerName  localhost

См. руководство для точных правил сопоставления VHost , но выполнение вышеуказанного дает Apache httpd только один дискриминатор для использования для выбора того, какие запросы должны обрабатываться этим виртуальным хостом, а именно, когда запрос включает заголовок Host: localhost и не проверяет, был ли запрос отправлен на IP-адрес localhost 127.0.0.1 или петлевой сети интерфейс.

Вместо этого привяжите этот VHost к определенному IP-адресу локального хоста с помощью

<VirtualHost 127.0.0.1:80>
    ServerName  localhost

или эквивалентного

<VirtualHost localhost:80>
    ServerName  localhost
0
ответ дан 23 November 2019 в 23:15

Теги

Похожие вопросы