Стабильный релиз прокси-сервера Squid 4
4 июля 2018 года
После трёх лет разработки представлен стабильный релиз прокси-сервера Squid 4.1 (Архивная копия от 22 октября 2021 на Wayback Machine), готовый для промышленного использования (выпуски 4.0.x имели статус бета-версий). После придания ветке 4.x статуса стабильной, в ней отныне будут производиться только исправления уязвимостей и проблем со стабильностью, также допускается внесение небольших оптимизаций. Разработка новых возможностей будет производиться в новой экспериментальной ветке 5.0. Пользователям прошлой стабильной ветки 3.5 рекомендуется спланировать переход на ветку 4.1.
Основные новшества Squid 4:
- В соответствии с требованиями RFC 6176 прекращено использование устаревшей версии протокола SSLv2 при согласовании защищённых соединений. Поддержка SSLv3 пока сохранена, но объявлена устаревшей и рекомендована для отключения (tls-options=NO_SSLv3);
- Реализована возможность установки безопасных соединений с сервисами, используя протокол ICAP поверх TLS. Шифрованный вариант ICAP доступен через URL icaps:// и сетевой порт 11344;
- Добавлена директива url_lfs_rewrite для перенаправления всех запросов к файлам, которые присутствуют в заданном каталоге, через локальный HTTP-сервер;
- Добавлена директива on_unsupported_protocol при помощи котороой можно организовать проброс через прокси трафика, отличного от HTTP;
- Реализована опция "queue-size=N" для настройки максимального размера очереди к обработчикам (helper);
- В директиве external_acl_type добавлена возможность использования кодов форматирования вывода для лога (logformat);
- Добавлена экспериментальная поддержка сборки с библиотекой GnuTLS вместо OpenSSL (при сборке с GnuTLS пока не поддерживаются режим SSL-Bump и генерация сертификатов);
- Переименованы обработчики, связанные с TLS/SSL (вместо ssl_ теперь используется префикс tls_);
- На смену аутентификатору basic_msnt_multi_domain_auth, зависящему от Samba, пришёл basic_smb_lm_auth;
- Добавлена директива url_rewrite_timeout;
- Транзакции в логе теперь отражаются с точностью до долей миллисекунд;
- Добавлена опция "ext_kerberos_ldap_group_acl -n" для отключения автоматического применения SASL/GSSAPI;
- В обработчике security_file_certgen появился режим хранения сертификата только в оперативной памяти;
- Добавлена поддержка HTTP-заголовка "Expect: 100-continue";
- Изменён механизм параллельного запуска обработчиков. Из-за возможности организации DoS-атак вместо применения массивов для инициирования запуска параллельных каналов теперь следует использовать очереди запросов со специальным 64-разрядным идентификатором;
- Значение по умолчанию в ACL localnet (внутренние блоки IP-адресов, такие как 192.168.0.0) приведено в соответствие с RFC 6890;
- Добавлены настройки request_start_timeout и pconn_lifetime для задания таймаутов для постоянно поддерживаемых соединений;
- В web-интерфейс cachemgr добавлен блок статистики для срабатываний шаблонов refresh_pattern в контексте отдельных правил;
- Кодовая база переведена на использование стандарта C++11;
- Переработан код HTTP-парсера;
- Улучшена поддержка распараллеливания на многопроцессорных и многоядерных системах. Задействованы атомарные операции C++11. Обеспечено корректное автоопределение модулей ввода/вывода IpcIo и Mmapped, что позволило расширить спектр систем, на которых по умолчанию применяется хранилище кэша Rock;
- Функции обработки сигналов вынесены из основного фонового процесса в управляющий процесс, PID которого теперь записывается в файл squid.pid. Данное изменение позволило обеспечить интеграцию с внешними системами управления фоновыми процессами, такими как Upstart и systemd;
- В исполняемом файле squid добавлена поддержка длинных параметров командной строки (--foo). Например, добавлен параметр "--foreground" для запуска основного процесса без перехода в фоновый режим (например, удобно применять вместе с опцией "-z" чтобы дождаться завершения инициализации кэша, а не возвращать управление сразу);
- Прекращена поддержка директивы cache_peer_domain, обработчика basic_msnt_multi_domain_auth, опций refresh_pattern ignore-auth и ignore-must-revalidate, а также встроенного парсера ESI (Edge Side Includes), вместо которого следует использовать парсеры из библиотек libxml2 или libexpat.
Источники
править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.