Собственно сабж...
Народ, как решаете данную проблему?
Сайт постоянно сканируют левые боты и атаки с других стран...
Но сервисы гугла нужны.
Как закрыть сайт на уровне сервера?
Posted at Nginx Forum: https://forum.nginx.org/read.php?21,289352,289352#msg-289352
Здравствуйте,
All!
Есть в nginx директива ssl_early_data, но как я
понял из документации,
чтобы ее можно
было безопасно включить - необходимо сделать защиту
от replay attacks.
В документации предлагается делать ее на бекенде,
с помощью заголовка proxy_set_header Early-Data $ssl_early_data;
Можно ли настроить сам nginx таким способом, чтобы он нормально
пропускал на бекенд безопасные запросы GET, HEAD, OPTIONS, TRACE
в том случае когда $ssl_early_data установлена в 1 и чтобы
он возвращал
клиенту 425 (Too Early) status code в том случае, если запрос имеет
не безопасный
метод POST, PUT, DELETE, PATCH и $ssl_early_data; равно 1.
Идеально, если
это будет встроенная в nginx функциональность,
например, с помощью директивы ssl_early_data_protection.
Syntax: ssl_early_data on | off;
Default: ssl_early_data off;
Context: http, server
Syntax: ssl_early_data_protection on | off;
Default: ssl_early_data_protection off;
Context: http, server
Не все бекенды
понимают заголовок Early-Data,
а ssl_early_data on; было бы полезно включить,
для ускорения
работы сайта.
--
Best regards,
Gena
Коллеги,
Есть момент, который я не понимаю, как работает. У nginx есть upstream,
который представляет собой хост с php7.4-fpm. Допустим на PHP написали
код, который зацикливается, или спит 3 часа, или посылает SQL запрос на
3 часа работы - короче, работать собирается долго или бесконечно.
Вот пришел от пользователя HTTP запрос, nginx его передал php-fpm в
злополучный код, phpfpm child начал бесконечную работу... Что должно
произойти, когда пользователь отменил HTTP запрос, или браузер закрыл?
nginx закроет соответствующее соединение с php-fpm ? А PHP-код продолжит
работу? Или должен прерваться?
Прошу прощения за сумбурное изложение, поправки и указания на неверное
понимание логики работы с благодарностью принимаются.
--
Victor Sudakov VAS4-RIPE
http://vas.tomsk.ru/
2:5005/49@fidonet
Добрый день!
После перехода на 8 версию PHP Nginx стал сыпать предупреждениями:
*84085 upstream sent more data than specified in "Content-Length" header
while reading upstream, client: 66.249.76.60, server: .....
Прчем, предупреждения появляться только после посещения страниц сайта
поисковиками (в основном - ботами Google).
В сети нашел совет отключить буферизацию:
proxy_buffering off;
Но не думаю, что это верное решение. Возможно, на этом форуме мне помогут
решить эту проблему?
Posted at Nginx Forum: https://forum.nginx.org/read.php?21,291263,291263#msg-291263
Здравствуйте,
All!
После перезапуска сервера htop показывает:
└─ nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf
├─ nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf
├─ nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf
├─ nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf
└─ nginx: worker process
После ручного
systemctl restart nginx все стало
нормально:
└─ nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf
├─ nginx: worker process
├─ nginx: worker process
├─ nginx: worker process
└─ nginx: worker process
Это какая-то ошибка в коде nginx,
что переименование процессов не всегда срабатывает?
--
Best regards,
Gena
Изменения в nginx 1.19.10 13.04.2021
*) Изменение: в директиве keepalive_requests значение по умолчанию
изменено на 1000.
*) Добавление: директива keepalive_time.
*) Добавление: переменная $connection_time.
*) Изменение: при использовании zlib-ng в логах появлялись сообщения
"gzip filter failed to use preallocated memory".
--
Maxim Dounin
http://nginx.org/
Здравствуйте,
All!
Зачем такие странные настройки по-умолчанию?
proxy_http_version 1.0;
gzip_http_version 1.1;
в результате - если используется цепочка из двох nginx,
nginx-frontend <=> nginx-backend, то компрессия
будет выключена при настройке по-умолчанию.
Что плохого будет например, если переключить по-умолчанию
"proxy_http_version 1.1;" вместо "proxy_http_version 1.0;" ?
--
Best regards,
Gena
Добрый день, есть 200k websocket соединений на проксируемый сервер, после
изменения в конфиге и попытке reload nginx появляются новые процессы nginx и
зависают прошлые в статусе "nginx shutting down", которые так и не
завершаются, тк клиенты могут висеть онлайн долго, эти старые процессы можно
убить kill -9 pid каждый, но в этом случае nginx продолжает в /nginx_status
показывать счетчик коннектов с учетом старых соединений из убитых процессов
плюс заново переподключившиеся (количество коннектов после каждого reload
растет в геометрической прогрессии), хотя в работе после kill старых nginx
процессов остаются только новые процессы. Полностью сбросить счетчик
коннектов получается только через restart nginx, но в этом случае все
websocket клиенты одновременно начинают заново стучаться на сервер, чего
тоже не хотелось бы, вопрос: как мягко применять новый конфиг nginx и
переподключать websocket соединения хотя бы пачками, а не все одним
моментом?
Posted at Nginx Forum: https://forum.nginx.org/read.php?21,291167,291167#msg-291167