Рейтинг:2

Nginx записывает записи журнала ошибок в access.log

флаг cn

Я пытаюсь настроить fail2ban для ошибок 403 от Nginx. Но почему-то мой файл error.log пуст и все ошибки 403 (и все 4XX, 5XX) идут в access.log. Тем не менее, я проверил свою конфигурацию, и она выглядит нормально.

сервер {
    слушать 80;
    имя_сервера пример.com;

    вернуть 301 https://$host$request_uri;
}

сервер {
    слушать 443;
    имя_сервера пример.com;

    журнал_доступа /var/log/nginx/example.com/access.log;
    журнал_ошибок /var/log/nginx/example.com/error.log;

    SSL включен;
    включить /etc/nginx/conf.d/letsencrypt;
    включить /etc/nginx/conf.d/verify-client;

    место расположения / {
        включить /etc/nginx/conf.d/403-if-not-verified;

        прокси_пароль http://...;
        прокси_http_версия 1.1;
        proxy_set_header Обновить $http_upgrade;
        proxy_set_header Соединение "обновление";
        proxy_set_header Хост $http_host;

        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forward-Proto http;
        proxy_set_header X-Nginx-Proxy true;

        прокси_перенаправление выключено;
    }

    расположение ^~ /.известный {
        корень /usr/share/nginx/html/;
        позволять все;
    }
}

Результат:

root@raspberrypi:/var/log/nginx/example.com# ls -la
всего 12
drwxr-xr-x 2 www-data adm 4096 28 августа 09:55 .
drwxr-xr-x 12 www-data adm 4096 28 августа 08:53 ..
-rw-r--r-- 1 www-data adm 1417 28 августа 09:55 access.log
-rw-r--r-- 1 www-data adm 0 28 августа 09:55 error.log

доступ.лог:

192.168.1.1 - - [28/авг/2021:09:46:29 +0300] "GET / HTTP/1.1" 403 135 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:91.0) Gecko/ 20100101 Firefox/91.0"
192.168.1.1 - - [28/авг/2021:09:49:53 +0300] "GET / HTTP/1.1" 403 135 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:91.0) Gecko/ 20100101 Firefox/91.0"
192.168.1.1 - - [28/авг/2021:09:50:53 +0300] "GET / HTTP/1.1" 403 135 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:91.0) Gecko/ 20100101 Firefox/91.0"
192.168.1.1 - - [28/авг/2021:09:52:02 +0300] "GET / HTTP/1.1" 403 135 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:91.0) Gecko/ 20100101 Firefox/91.0"
192.168.1.1 - - [28/авг/2021:09:52:30 +0300] "GET / HTTP/1.1" 403 135 "-" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:91.0) Gecko/ 20100101 Firefox/91.0"

Все включать configs содержат только материалы, связанные с сертификатами, ничего общего с ведением журнала.

обновление Кроме того, я попытался поставить журнал ошибок директива внутри / место, но ничего не изменилось.

upd2. Пытался изменить уровень журнала для отладки, получил это:

28.08.2021 11:07:32 [отладка] 10257#10257: *134281 SSL ALPN поддерживается клиентом: h2
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 SSL ALPN поддерживается клиентом: http/1.1
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 Выбран SSL ALPN: http/1.1
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 SSL_do_handshake: -1
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 SSL_get_error: 2
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 многоразовое соединение: 0
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 Обработчик рукопожатия SSL: 0
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 новая сессия ssl: 95794EF3:32:165
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 новая сессия ssl: 05E7BF5A:32:166
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 SSL_do_handshake: 1
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 SSL: TLSv1.3, шифр: "TLS_AES_128_GCM_SHA256 TLSv1.3 Kx=любой Au=любой Enc=AESGCM(128) Mac=AEAD"
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 многоразовое соединение: 1
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 обработчик HTTP-запроса на ожидание
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 posix_memalign: 01341900:256 @16
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 malloc: 012C1660:1024
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 SSL_read: 464
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 SSL_read: -1
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 SSL_get_error: 2
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 многоразовое соединение: 0
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 posix_memalign: 013043B0:4096 @16
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 строка запроса процесса http
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 строка HTTP-запроса: «GET / HTTP/1.1»
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 http uri: "/"
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 аргументы http: ""
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 http exten: ""
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 строка заголовка запроса процесса http
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 заголовок http: «Хост: example.com»
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 заголовок http: «User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:91.0) Gecko/20100101 Firefox/91.0»
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 заголовок http: "Принять: текст/html,приложение/xhtml+xml,приложение/xml;q=0.9,изображение/webp,*/* ;кв=0,8"
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 заголовок http: «Accept-Language: en-US,en;q=0.5»
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 заголовок http: «Accept-Encoding: gzip, deflate, br»
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 HTTP-заголовок: «Соединение: поддержание активности»
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 заголовок http: «Upgrade-Insecure-Requests: 1»
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 HTTP-заголовок: «Sec-Fetch-Dest: документ»
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 HTTP-заголовок: «Sec-Fetch-Mode: навигация»
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 заголовок http: «Sec-Fetch-Site: нет»
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 HTTP-заголовок: «Sec-Fetch-User: ?1»
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 заголовок http: «Cache-Control: max-age=0»
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 HTTP-заголовок выполнен
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 таймер событий del: 3: 215143200
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 общая фаза: 0
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 фаза перезаписи: 1
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 тестовое местоположение: "/"
28.08.2021 11:07:32 [отладка] 10257#10257: *134281 с использованием конфигурации "/"

upd3. Разрешения для обоих файлов журналов одинаковы, значит, все в порядке.

ihorc avatar
флаг cn
Окей, вроде такие ошибки как 4XX и 5XX не должны попасть в error.log как это только для ошибок конфигурации/программного обеспечения?
Рейтинг:3
флаг us

журнал ошибок содержит подробную информацию об ошибках, которые происходят на стороне сервера, то есть коды ошибок HTTP 5xx и другие ошибки запуска/внутренние ошибки.

Он не предназначен для регистрации всех кодов состояния ошибок HTTP.

Если вы хотите регистрировать только определенные ошибки HTTP, вы можете создать второй access_log запись с фильтрацией. Пример ниже взят из документация по nginx с небольшой модификацией:

карта $статус $loggable {
    по умолчанию 0;
    ~^4 1;
}

access_log /path/to/log вместе if=$loggable;

Карта используется для проверки кода состояния и установки $loggable переменная соответственно. Действие по умолчанию — не регистрировать, и если код состояния HTTP начинается с 4, то запрос регистрируется.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.