From mdounin на mdounin.ru Tue Jan 26 16:31:43 2016 From: mdounin на mdounin.ru (Maxim Dounin) Date: Tue, 26 Jan 2016 19:31:43 +0300 Subject: [nginx-ru-announce] nginx-1.9.10 Message-ID: <20160126163143.GR9449@mdounin.ru> Изменения в nginx 1.9.10 26.01.2016 *) Безопасность: при использовании директивы resolver во время обработки ответов DNS-сервера могло происходить разыменование некорректного адреса, что позволяло атакующему, имеющему возможность подделывать UDP-пакеты от DNS-сервера, вызвать segmentation fault в рабочем процессе (CVE-2016-0742). *) Безопасность: при использовании директивы resolver во время обработки CNAME-записей могло произойти обращение к ранее освобождённой памяти, что позволяло атакующему, имеющему возможность инициировать преобразование произвольных имён в адреса, вызвать segmentation fault в рабочем процессе, а также потенциально могло иметь другие последствия (CVE-2016-0746). *) Безопасность: при использовании директивы resolver во время обработки CNAME-записей не во всех случаях проверялось ограничение на максимальное количество записей в цепочке, что позволяло атакующему, имеющему возможность инициировать преобразование произвольных имён в адреса, вызвать чрезмерное потребление ресурсов рабочими процессами (CVE-2016-0747). *) Добавление: параметр auto директивы worker_cpu_affinity. *) Исправление: параметр proxy_protocol директивы listen не работал с IPv6 listen-сокетами. *) Исправление: при использовании директивы keepalive соединения к бэкендам могли кэшироваться некорректно. *) Исправление: после перенаправления запроса с помощью X-Accel-Redirect при проксировании использовался HTTP-метод оригинального запроса. -- Maxim Dounin http://nginx.org/ From mdounin на mdounin.ru Tue Jan 26 16:31:59 2016 From: mdounin на mdounin.ru (Maxim Dounin) Date: Tue, 26 Jan 2016 19:31:59 +0300 Subject: [nginx-ru-announce] nginx-1.8.1 Message-ID: <20160126163159.GV9449@mdounin.ru> Изменения в nginx 1.8.1 26.01.2016 *) Безопасность: при использовании директивы resolver во время обработки ответов DNS-сервера могло происходить разыменование некорректного адреса, что позволяло атакующему, имеющему возможность подделывать UDP-пакеты от DNS-сервера, вызвать segmentation fault в рабочем процессе (CVE-2016-0742). *) Безопасность: при использовании директивы resolver во время обработки CNAME-записей могло произойти обращение к ранее освобождённой памяти, что позволяло атакующему, имеющему возможность инициировать преобразование произвольных имён в адреса, вызвать segmentation fault в рабочем процессе, а также потенциально могло иметь другие последствия (CVE-2016-0746). *) Безопасность: при использовании директивы resolver во время обработки CNAME-записей не во всех случаях проверялось ограничение на максимальное количество записей в цепочке, что позволяло атакующему, имеющему возможность инициировать преобразование произвольных имён в адреса, вызвать чрезмерное потребление ресурсов рабочими процессами (CVE-2016-0747). *) Исправление: параметр proxy_protocol директивы listen не работал, если не был указан в первой директиве listen для данного listen-сокета. *) Исправление: nginx мог не запускаться на некоторых старых версиях Linux; ошибка появилась в 1.7.11. *) Исправление: при совместном использовании директив try_files и alias внутри location'а, заданного регулярным выражением, в рабочем процессе мог произойти segmentation fault; ошибка появилась в 1.7.1. *) Исправление: директива try_files внутри вложенного location'а, заданного регулярным выражением, работала неправильно, если во внешнем location'е использовалась директива alias. *) Исправление: при использовании кэша в логах могли появляться сообщения "header already sent"; ошибка появилась в 1.7.5. *) Исправление: при использовании различных настроек ssl_session_cache в разных виртуальных серверах в рабочем процессе мог произойти segmentation fault. *) Исправление: директива expires могла не срабатывать при использовании переменных. *) Исправление: если nginx был собран с модулем ngx_http_spdy_module, протокол SPDY мог быть использован клиентом, даже если не был указан параметр spdy директивы listen. -- Maxim Dounin http://nginx.org/ From mdounin на mdounin.ru Tue Jan 26 16:32:26 2016 From: mdounin на mdounin.ru (Maxim Dounin) Date: Tue, 26 Jan 2016 19:32:26 +0300 Subject: [nginx-ru-announce] nginx security advisory (CVE-2016-0742, CVE-2016-0746, CVE-2016-0747) Message-ID: <20160126163226.GZ9449@mdounin.ru> Hello! В nginx resolver было обнаружено несколько проблем, которые могут позволить атакующему вызвать крах рабочего процесса, а также потенциально могут иметь другие последствия: - При обработке ответов DNS-сервера могло происходить разыменование некорректного адреса, что позволяло атакующему, имеющему возможность подделывать UDP-пакеты от DNS-сервера, вызвать крах рабочего процесса (CVE-2016-0742). - При обработке CNAME-записей могло произойти обращение к ранее освобождённой памяти. Это позволяло атакующему, имеющему возможность инициировать преобразование произвольных имён в адреса, вызвать крах рабочего процесса, а также потенциально могло иметь другие последствия (CVE-2016-0746). - При обработке CNAMЕ-записей не во всех случаях проверялось ограничение на максимальное количество записей в цепочке, что позволяло атакующему, имеющему возможность инициировать преобразование произвольных имён в адреса, вызвать чрезмерное потребление ресурсов рабочими процессами (CVE-2016-0747). Проблемам подвержен nginx 0.6.18 - 1.9.9, если в конфигурации используется директива resolver. Проблемы исправлены в nginx 1.9.10, 1.8.1. -- Maxim Dounin http://nginx.org/ From mdounin на mdounin.ru Tue Feb 9 14:30:08 2016 From: mdounin на mdounin.ru (Maxim Dounin) Date: Tue, 9 Feb 2016 17:30:08 +0300 Subject: [nginx-ru-announce] nginx-1.9.11 Message-ID: <20160209143008.GI70672@mdounin.ru> Изменения в nginx 1.9.11 09.02.2016 *) Добавление: теперь resolver поддерживает TCP. *) Добавление: динамические модули. *) Исправление: при использовании HTTP/2 переменная $request_length не учитывала размер заголовков запроса. *) Исправление: в модуле ngx_http_v2_module. -- Maxim Dounin http://nginx.org/ From mdounin на mdounin.ru Wed Feb 24 15:11:12 2016 From: mdounin на mdounin.ru (Maxim Dounin) Date: Wed, 24 Feb 2016 18:11:12 +0300 Subject: [nginx-ru-announce] nginx-1.9.12 Message-ID: <20160224151112.GM31796@mdounin.ru> Изменения в nginx 1.9.12 24.02.2016 *) Добавление: кодирование Хаффмана заголовков ответов в HTTP/2. Спасибо Владу Краснову. *) Добавление: директива worker_cpu_affinity теперь поддерживает более 64 процессоров. *) Исправление: совместимость со сторонними модулями на C++; ошибка появилась в 1.9.11. Спасибо Piotr Sikora. *) Исправление: nginx не собирался статически с OpenSSL на Linux; ошибка появилась в 1.9.11. *) Исправление: директива "add_header ... always" с пустым значением не удаляла из заголовков ошибочных ответов строки Last-Modified и ETag. *) Изменение: при использовании OpenSSL 1.0.2f в логах могли появляться сообщения "called a function you should not call" и "shutdown while in init". *) Исправление: ошибочные заголовки могли логгироваться некорректно. *) Исправление: утечки сокетов при использовании HTTP/2. *) Исправление: в модуле ngx_http_v2_module. -- Maxim Dounin http://nginx.org/ From mdounin на mdounin.ru Tue Mar 29 15:32:51 2016 From: mdounin на mdounin.ru (Maxim Dounin) Date: Tue, 29 Mar 2016 18:32:51 +0300 Subject: [nginx-ru-announce] nginx-1.9.13 Message-ID: <20160329153251.GQ36620@mdounin.ru> Изменения в nginx 1.9.13 29.03.2016 *) Изменение: неидемпотентные запросы (POST, LOCK, PATCH) теперь по умолчанию не передаются на другой сервер, если запрос уже был отправлен на бэкенд; параметр non_idempotent директивы proxy_next_upstream явно разрешает повторять такие запросы. *) Добавление: модуль ngx_http_perl_module теперь можно собрать динамически. *) Добавление: поддержка UDP в модуле stream. *) Добавление: директива aio_write. *) Добавление: теперь cache manager следит за количеством элементов в кэше и старается не допускать переполнений зоны разделяемой памяти. *) Исправление: при использовании директив sendfile и aio с подзапросами в логах могли появляться сообщения "task already active" и "second aio post". *) Исправление: при использовании кэширования в логах могли появляться сообщения "zero size buf in output", если клиент закрывал соединение преждевременно. *) Исправление: при использовании кэширования соединения с клиентами могли закрываться без необходимости. Спасибо Justin Li. *) Исправление: nginx мог нагружать процессор при использовании директивы sendfile на Linux и Solaris, если отправляемый файл был изменён в процессе отправки. *) Исправление: при использовании директив sendfile и "aio threads" соединения могли зависать. *) Исправление: в директивах proxy_pass, fastcgi_pass, scgi_pass и uwsgi_pass при использовании переменных. Спасибо Piotr Sikora. *) Исправление: в модуле ngx_http_sub_filter_module. *) Исправление: если в закэшированном соединении к бэкенду происходила ошибка, запрос передавался на другой сервер без учёта директивы proxy_next_upstream. *) Исправление: ошибки "CreateFile() failed" при создании временных файлов на Windows. -- Maxim Dounin http://nginx.org/ From mdounin на mdounin.ru Tue Apr 5 15:11:41 2016 From: mdounin на mdounin.ru (Maxim Dounin) Date: Tue, 5 Apr 2016 18:11:41 +0300 Subject: [nginx-ru-announce] nginx-1.9.14 Message-ID: <20160405151141.GX36620@mdounin.ru> Изменения в nginx 1.9.14 05.04.2016 *) Добавление: совместимость с OpenSSL 1.1.0. *) Добавление: директивы proxy_request_buffering, fastcgi_request_buffering, scgi_request_buffering и uwsgi_request_buffering теперь работают при использовании HTTP/2. *) Исправление: при использовании HTTP/2 в логах могли появляться сообщения "zero size buf in output". *) Исправление: при использовании HTTP/2 директива client_max_body_size могла работать неверно. *) Исправление: незначительных ошибок логгирования. -- Maxim Dounin http://nginx.org/ From mdounin на mdounin.ru Tue Apr 19 16:21:34 2016 From: mdounin на mdounin.ru (Maxim Dounin) Date: Tue, 19 Apr 2016 19:21:34 +0300 Subject: [nginx-ru-announce] nginx-1.9.15 Message-ID: <20160419162134.GG36620@mdounin.ru> Изменения в nginx 1.9.15 19.04.2016 *) Исправление: при использовании HHVM в качестве FastCGI-сервера могли возникать ошибки "recv() failed". *) Исправление: при использовании HTTP/2 и директив limit_req или auth_request при чтении тела запроса мог произойти таймаут или ошибка "client violated flow control"; ошибка появилась в 1.9.14. *) Изменение: при использовании HTTP/2 ответ мог не показываться некоторыми браузерами, если тело запроса было прочитано не целиком; ошибка появилась в 1.9.14. *) Исправление: при использовании директивы "aio threads" соединения могли зависать. Спасибо Mindaugas Rasiukevicius. -- Maxim Dounin http://nginx.org/ From mdounin на mdounin.ru Tue Apr 26 14:01:21 2016 From: mdounin на mdounin.ru (Maxim Dounin) Date: Tue, 26 Apr 2016 17:01:21 +0300 Subject: [nginx-ru-announce] nginx-1.10.0 Message-ID: <20160426140121.GD36620@mdounin.ru> Изменения в nginx 1.10.0 26.04.2016 *) Стабильная ветка 1.10.x. -- Maxim Dounin http://nginx.org/ From mdounin на mdounin.ru Tue May 24 16:27:01 2016 From: mdounin на mdounin.ru (Maxim Dounin) Date: Tue, 24 May 2016 19:27:01 +0300 Subject: [nginx-ru-announce] nginx-1.11.0 Message-ID: <20160524162701.GD36620@mdounin.ru> Изменения в nginx 1.11.0 24.05.2016 *) Добавление: параметр transparent директив proxy_bind, fastcgi_bind, memcached_bind, scgi_bind и uwsgi_bind. *) Добавление: переменная $request_id. *) Добавление: директива map поддерживает комбинации нескольких переменных в качестве результирующих значений. *) Добавление: теперь при использовании метода epoll nginx проверяет, поддерживает ли ядро события EPOLLRDHUP, и соответственно оптимизирует обработку соединений. *) Добавление: директивы ssl_certificate и ssl_certificate_key теперь можно указывать несколько раз для загрузки сертификатов разных типов (например, RSA и ECDSA). *) Добавление: при использовании OpenSSL 1.0.2 и новее с помощью директивы ssl_ecdh_curve теперь можно задать список кривых; по умолчанию используется встроенный в OpenSSL список кривых. *) Изменение: для использования DHE-шифров теперь надо явно задавать файл параметров с помощью директивы ssl_dhparam. *) Добавление: переменная $proxy_protocol_port. *) Добавление: переменная $realip_remote_port в модуле ngx_http_realip_module. *) Добавление: модуль ngx_http_realip_module теперь позволяет устанавливать не только адрес, но и порт клиента. *) Изменение: при попытке запросить виртуальный сервер, отличающийся от согласованного в процессе SSL handshake, теперь возвращается ответ "421 Misdirected Request"; это улучшает совместимость с некоторыми HTTP/2-клиентами в случае использования клиентских сертификатов. *) Изменение: HTTP/2-клиенты теперь могут сразу присылать тело запроса; директива http2_body_preread_size позволяет указать размер буфера, который будет использоваться до того, как nginx начнёт читать тело. *) Исправление: при использовании директивы proxy_cache_bypass не обновлялись закэшированные ошибочные ответы. -- Maxim Dounin http://nginx.org/ From mdounin на mdounin.ru Tue May 31 16:41:44 2016 From: mdounin на mdounin.ru (Maxim Dounin) Date: Tue, 31 May 2016 19:41:44 +0300 Subject: [nginx-ru-announce] nginx-1.11.1 Message-ID: <20160531164144.GU36620@mdounin.ru> Изменения в nginx 1.11.1 31.05.2016 *) Безопасность: при записи тела специально созданного запроса во временный файл в рабочем процессе мог происходить segmentation fault (CVE-2016-4450); ошибка появилась в 1.3.9. -- Maxim Dounin http://nginx.org/ From mdounin на mdounin.ru Tue May 31 16:42:20 2016 From: mdounin на mdounin.ru (Maxim Dounin) Date: Tue, 31 May 2016 19:42:20 +0300 Subject: [nginx-ru-announce] nginx-1.10.1 Message-ID: <20160531164220.GY36620@mdounin.ru> Изменения в nginx 1.10.1 31.05.2016 *) Безопасность: при записи тела специально созданного запроса во временный файл в рабочем процессе мог происходить segmentation fault (CVE-2016-4450); ошибка появилась в 1.3.9. -- Maxim Dounin http://nginx.org/ From mdounin на mdounin.ru Tue May 31 16:42:59 2016 From: mdounin на mdounin.ru (Maxim Dounin) Date: Tue, 31 May 2016 19:42:59 +0300 Subject: [nginx-ru-announce] nginx security advisory (CVE-2016-4450) Message-ID: <20160531164259.GC36620@mdounin.ru> Hello! В коде nginx, отвечающем за сохранение тела клиентских запросов во временные файлы, была обнаружена проблема. Специально созданный запрос мог вызывать крах рабочего процесса из-за разыменования нулевого указателя в процессе записи тела запроса во временный файл (CVE-2016-4450). Проблеме подвержен nginx 1.3.9 - 1.11.0. Проблема исправлена в nginx 1.11.1, 1.10.1. Патч для nginx 1.9.13 - 1.11.0 доступен тут: http://nginx.org/download/patch.2016.write.txt Патч для более старых версий nginx (1.3.9 - 1.9.12): http://nginx.org/download/patch.2016.write2.txt -- Maxim Dounin http://nginx.org/ From mdounin на mdounin.ru Tue Jul 5 16:22:47 2016 From: mdounin на mdounin.ru (Maxim Dounin) Date: Tue, 5 Jul 2016 19:22:47 +0300 Subject: [nginx-ru-announce] nginx-1.11.2 Message-ID: <20160705162246.GR30781@mdounin.ru> Изменения в nginx 1.11.2 05.07.2016 *) Изменение: теперь nginx всегда использует внутренние реализации MD5 и SHA1; параметры configure --with-md5 и --with-sha1 упразднены. *) Добавление: поддержка переменных в модуле stream. *) Добавление: модуль ngx_stream_map_module. *) Добавление: модуль ngx_stream_return_module. *) Добавление: в директивах proxy_bind, fastcgi_bind, memcached_bind, scgi_bind и uwsgi_bind теперь можно указывать порт. *) Добавление: теперь nginx использует опцию сокета IP_BIND_ADDRESS_NO_PORT, если она доступна. *) Исправление: при использовании HTTP/2 и директивы proxy_request_buffering в рабочем процессе мог произойти segmentation fault. *) Исправление: при использовании HTTP/2 к запросам, передаваемым на бэкенд, всегда добавлялась строка заголовка "Content-Length", даже если у запроса не было тела. *) Исправление: при использовании HTTP/2 в логах могли появляться сообщения "http request count is zero". *) Исправление: при использовании директивы sub_filter могло буферизироваться больше данных, чем это необходимо; проблема появилась в 1.9.4. -- Maxim Dounin http://nginx.org/ From mdounin на mdounin.ru Tue Jul 26 14:11:40 2016 From: mdounin на mdounin.ru (Maxim Dounin) Date: Tue, 26 Jul 2016 17:11:40 +0300 Subject: [nginx-ru-announce] nginx-1.11.3 Message-ID: <20160726141140.GF57459@mdounin.ru> Изменения в nginx 1.11.3 26.07.2016 *) Изменение: теперь accept_mutex по умолчанию выключен. *) Добавление: теперь nginx использует EPOLLEXCLUSIVE на Linux. *) Добавление: модуль ngx_stream_geo_module. *) Добавление: модуль ngx_stream_geoip_module. *) Добавление: модуль ngx_stream_split_clients_module. *) Добавление: директивы proxy_pass и proxy_ssl_name в модуле stream поддерживают переменные. *) Исправление: утечки сокетов при использовании HTTP/2. *) Исправление: в configure. Спасибо Piotr Sikora. -- Maxim Dounin http://nginx.org/ From mdounin на mdounin.ru Tue Sep 13 15:51:32 2016 From: mdounin на mdounin.ru (Maxim Dounin) Date: Tue, 13 Sep 2016 18:51:32 +0300 Subject: [nginx-ru-announce] nginx-1.11.4 Message-ID: <20160913155132.GR1527@mdounin.ru> Изменения в nginx 1.11.4 13.09.2016 *) Добавление: переменная $upstream_bytes_received. *) Добавление: переменные $bytes_received, $session_time, $protocol, $status, $upstream_addr, $upstream_bytes_sent, $upstream_bytes_received, $upstream_connect_time, $upstream_first_byte_time и $upstream_session_time в модуле stream. *) Добавление: модуль ngx_stream_log_module. *) Добавление: параметр proxy_protocol в директиве listen, переменные $proxy_protocol_addr и $proxy_protocol_port в модуле stream. *) Добавление: модуль ngx_stream_realip_module. *) Исправление: nginx не собирался с модулем stream и модулем ngx_http_ssl_module, но без модуля ngx_stream_ssl_module; ошибка появилась в 1.11.3. *) Добавление: опция сокета IP_BIND_ADDRESS_NO_PORT не использовалась; ошибка появилась в 1.11.2. *) Исправление: в параметре ranges директивы geo. *) Исправление: при использовании директив "aio threads" и sendfile мог возвращаться некорректный ответ; ошибка появилась в 1.9.13. -- Maxim Dounin http://nginx.org/ From mdounin на mdounin.ru Tue Oct 11 15:32:50 2016 From: mdounin на mdounin.ru (Maxim Dounin) Date: Tue, 11 Oct 2016 18:32:50 +0300 Subject: [nginx-ru-announce] nginx-1.11.5 Message-ID: <20161011153250.GF73038@mdounin.ru> Изменения в nginx 1.11.5 11.10.2016 *) Изменение: параметр configure --with-ipv6 упразднён, поддержка IPv6 теперь собирается автоматически. *) Изменение: теперь, если в блоке upstream не оказалось доступных серверов, nginx не сбрасывает статистику ошибок всех серверов, как делал ранее, а ожидает истечения fail_timeout. *) Добавление: модуль ngx_stream_ssl_preread_module. *) Добавление: директива server в блоке upstream поддерживает параметр max_conns. *) Добавление: параметр configure --with-compat. *) Добавление: параметры manager_files, manager_threshold и manager_sleep директив proxy_cache_path, fastcgi_cache_path, scgi_cache_path и uwsgi_cache_path. *) Исправление: при сборке perl-модуля не использовались флаги, заданные с помощью параметра configure --with-ld-opt. *) Исправление: в директиве add_after_body при использовании совместно с директивой sub_filter. *) Исправление: в переменной $realip_remote_addr. *) Исправление: директивы dav_access, proxy_store_access, fastcgi_store_access, scgi_store_access и uwsgi_store_access игнорировали права, заданные для пользователя. *) Исправление: unix domain listen-сокеты могли не наследоваться при обновлении исполняемого файла на Linux. *) Исправление: nginx возвращал ошибку 400 на запросы с символом "-" в HTTP-методе. -- Maxim Dounin http://nginx.org/ From mdounin на mdounin.ru Tue Oct 18 15:34:17 2016 From: mdounin на mdounin.ru (Maxim Dounin) Date: Tue, 18 Oct 2016 18:34:17 +0300 Subject: [nginx-ru-announce] nginx-1.10.2 Message-ID: <20161018153417.GM73038@mdounin.ru> Изменения в nginx 1.10.2 18.10.2016 *) Изменение: при попытке запросить виртуальный сервер, отличающийся от согласованного в процессе SSL handshake, теперь возвращается ответ "421 Misdirected Request"; это улучшает совместимость с некоторыми HTTP/2-клиентами в случае использования клиентских сертификатов. *) Изменение: HTTP/2-клиенты теперь могут сразу присылать тело запроса; директива http2_body_preread_size позволяет указать размер буфера, который будет использоваться до того, как nginx начнёт читать тело. *) Исправление: при использовании HTTP/2 и директивы proxy_request_buffering в рабочем процессе мог произойти segmentation fault. *) Исправление: при использовании HTTP/2 к запросам, передаваемым на бэкенд, всегда добавлялась строка заголовка "Content-Length", даже если у запроса не было тела. *) Исправление: при использовании HTTP/2 в логах могли появляться сообщения "http request count is zero". *) Исправление: при использовании директивы sub_filter могло буферизироваться больше данных, чем это необходимо; проблема появилась в 1.9.4. *) Исправление: утечки сокетов при использовании HTTP/2. *) Исправление: при использовании директив "aio threads" и sendfile мог возвращаться некорректный ответ; ошибка появилась в 1.9.13. *) Изменение: совместимость с OpenSSL 1.1.0. -- Maxim Dounin http://nginx.org/ From mdounin на mdounin.ru Tue Nov 15 15:24:19 2016 From: mdounin на mdounin.ru (Maxim Dounin) Date: Tue, 15 Nov 2016 18:24:19 +0300 Subject: [nginx-ru-announce] nginx-1.11.6 Message-ID: <20161115152419.GP8196@mdounin.ru> Изменения в nginx 1.11.6 15.11.2016 *) Изменение: формат переменных $ssl_client_s_dn и $ssl_client_i_dn изменён на соответствующий RFC 2253 (RFC 4514); значения в старом формате доступны через переменные $ssl_client_s_dn_legacy и $ssl_client_i_dn_legacy. *) Изменение: при сохранении временных файлов в каталоге кэша они теперь располагаются не в отдельном подкаталоге для временных файлов, а в том же подкаталоге, что и соответствующие файлы в кэше. *) Добавление: поддержка метода аутентификации EXTERNAL в почтовом прокси-сервере. Спасибо Robert Norris. *) Добавление: поддержка WebP в модуле ngx_http_image_filter_module. *) Добавление: директива proxy_method поддерживает переменные. Спасибо Дмитрию Лазуркину. *) Добавление: директива http2_max_requests в модуле ngx_http_v2_module. *) Добавление: директивы proxy_cache_max_range_offset, fastcgi_cache_max_range_offset, scgi_cache_max_range_offset и uwsgi_cache_max_range_offset. *) Исправление: плавное завершение старых рабочих процессов могло занимать бесконечное время при использовании HTTP/2. *) Исправление: в модуле ngx_http_mp4_module. *) Исправление: при проксировании WebSocket-соединений и включённом кэшировании в логах могли появляться сообщения "ignore long locked inactive cache entry". *) Исправление: если во время SSL handshake с бэкендом происходил таймаут, nginx ничего не писал в лог и возвращал ответ с кодом 502 вместо 504. -- Maxim Dounin http://nginx.org/ From mdounin на mdounin.ru Tue Dec 13 15:33:39 2016 From: mdounin на mdounin.ru (Maxim Dounin) Date: Tue, 13 Dec 2016 18:33:39 +0300 Subject: [nginx-ru-announce] nginx-1.11.7 Message-ID: <20161213153339.GB18639@mdounin.ru> Изменения в nginx 1.11.7 13.12.2016 *) Изменение: переменная $ssl_client_verify теперь в случае ошибки проверки клиентского сертификата содержит строку с описанием ошибки, например, "FAILED:certificate has expired". *) Добавление: переменные $ssl_ciphers, $ssl_curves, $ssl_client_v_start, $ssl_client_v_end и $ssl_client_v_remain. *) Добавление: параметр volatile директивы map. *) Исправление: при сборке динамических модулей не учитывались заданные для модуля зависимости. *) Исправление: при использовании HTTP/2 и директив limit_req или auth_request тело запроса могло быть повреждено; ошибка появилась в 1.11.0. *) Исправление: при использовании HTTP/2 в рабочем процессе мог произойти segmentation fault; ошибка появилась в 1.11.3. *) Исправление: в модуле ngx_http_mp4_module. Спасибо Congcong Hu. *) Исправление: в модуле ngx_http_perl_module. -- Maxim Dounin http://nginx.org/ From mdounin на mdounin.ru Tue Dec 27 14:40:18 2016 From: mdounin на mdounin.ru (Maxim Dounin) Date: Tue, 27 Dec 2016 17:40:18 +0300 Subject: [nginx-ru-announce] nginx-1.11.8 Message-ID: <20161227144018.GZ18639@mdounin.ru> Изменения в nginx 1.11.8 27.12.2016 *) Добавление: директива absolute_redirect. *) Добавление: параметр escape директивы log_format. *) Добавление: проверка клиентских SSL-сертификатов в модуле stream. *) Добавление: директива ssl_session_ticket_key поддерживает шифрование TLS session tickets с помощью AES256 при использовании с 80-байтными ключами. *) Добавление: поддержка vim-commentary в скриптах для vim. Спасибо Armin Grodon. *) Исправление: рекурсия при получении значений переменных не ограничивалась. *) Исправление: в модуле ngx_stream_ssl_preread_module. *) Исправление: если сервер, описанный в блоке upstream в модуле stream, был признан неработающим, то после истечения fail_timeout он признавался работающим только после завершения тестового соединения; теперь достаточно, чтобы соединение было успешно установлено. *) Исправление: nginx/Windows не собирался с 64-битным Visual Studio. *) Исправление: nginx/Windows не собирался с OpenSSL 1.1.0. -- Maxim Dounin http://nginx.org/