Получить ключ limit_rate в логе rate_limit-а

2019-04-17 Пенетрантность Fedor Dikarev

Привет!

Возникла задача rate_limit-итить обращения к api при помощи Nginx-а и 
таким образом защититься от DDOS-а.
Авторизация к api идет через jwt, в ключе есть логин пользователя. 
Поэтому я уже заказал demo nginx plus, планирую воспользоваться 
функционалом jwt и rate limit-ить по логину, примерно так:

auth_jwt_claim_set $login info login;

> limit_req_zone $login zone=one:10m rate=1r/s;

а дальше хочется получить список нехороших логинов, через которые нас 
пытаются досить.
Прочитал доку https://www.nginx.com/blog/rate-limiting-nginx/ -- там 
написано что я получу адрес клиента, request и хостнейм в слуяае 
превышения лимита. И это здорово.
А можно как-то получить значение ключа (в моем случае это логин 
пользователя), который привысил rate limit?


Пока есть гипотеза логгировать логин в access.log и потом коррелировать 
access.log и error.log, но выглядит немного странно. И вдруг можно 
получить результат сильно проще.

--
Fedor Dikarev
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Сложный кеш POST запросов

2019-04-17 Пенетрантность Andrey Kopeyko

On Wed, 17 Apr 2019, Иван Мишин wrote:


* не задали "proxy_cache_path" - прокси пока некуда кешировать
* не включили само кеширование директивой proxy_cache 


Это  задано на уровне http.
Мой вопрос не в том что кеширование не работает, а в том что оно работает
не так как надо, не так как планировал.


Тогда надо включать debug_connection, делать запрос, и читать error.log



вт, 16 апр. 2019 г. в 15:09, Andrey Kopeyko :


Иван Мишин писал 2019-04-16 12:26:

Добрый день, помогите пожалуйста со
следующей проблемой:


Добрый день, Иван!


Есть такой конфиг:

...

Но в моем случае это так не работает.


Потому что вы
* не задали "proxy_cache_path" - прокси пока некуда кешировать
* не включили само кеширование директивой proxy_cache 


--
Best regards,
Andrey A. Kopeyko 
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru




--
Best regards,
Andrey A. Kopeyko ___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: alias 301 redirect

2019-04-17 Пенетрантность chmind
Спасибо. 


> On 16 Apr 2019, at 17:37, Maxim Dounin  wrote:
> 
> Hello!
> 
> On Tue, Apr 16, 2019 at 04:10:57PM +0300, chm...@yandex.ru wrote:
> 
>> Добрый день. 
>> 
>> Есть такая конфигурация: 
>> 
>> location ~ /folder/images/ {
>>  alias /var/www/domain.com/folder/src/images/ 
>> ;
>> }
>> 
>> при запросе domain.com/folder/images/test.png 
>>  
>> 
>> Я почему-то получаю 301 редирект на domain.com/folder/images/test.png/ 
>> 
>> 
>> Судя по логам запрос попадает именно в этот локейшен и больше никуда. 
>> 
>> Подскажите пожалуйста в чем может быть проблема ? 
> 
> При использовании директивы alias в location, заданном регулярным 
> выражением, директива alias определяет полный путь к 
> запрашиваемому ресурсу.  Соответственно у вас для любого запроса - 
> путь в файловой системе указывает на каталог, и из-за этого на 
> любой запрос возвращается перенаправление.
> 
> Если вы на самом деле хотели написать префиксный location 
> для запросов в /folder/images/ - уберите "~".
> 
> -- 
> Maxim Dounin
> http://mdounin.ru/
> ___
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru

___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru

Re: Сложный кеш POST запросов

2019-04-17 Пенетрантность Иван Мишин
>
> * не задали "proxy_cache_path" - прокси пока некуда кешировать
> * не включили само кеширование директивой proxy_cache 

Это  задано на уровне http.
Мой вопрос не в том что кеширование не работает, а в том что оно работает
не так как надо, не так как планировал.

вт, 16 апр. 2019 г. в 15:09, Andrey Kopeyko :

> Иван Мишин писал 2019-04-16 12:26:
> > Добрый день, помогите пожалуйста со
> > следующей проблемой:
>
> Добрый день, Иван!
>
> > Есть такой конфиг:
> ...
> > Но в моем случае это так не работает.
>
> Потому что вы
> * не задали "proxy_cache_path" - прокси пока некуда кешировать
> * не включили само кеширование директивой proxy_cache 
>
>
> --
> Best regards,
> Andrey A. Kopeyko 
> ___
> nginx-ru mailing list
> nginx-ru@nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
___
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru