Публикувана е 83-та версия на кеширащия и антиспам прокси-сървър за персонално използване с гъвкави настройки.
Основни функции (всичко е настраиваемо):
- филтриране на нежелано съдържание (бели/черни списъци на URL адреси, забрана на бисквитки);
- принудително и безсрочно кеширане на получените данни (главно удобно за изображения и скриптове);
- коригиране на съдържанието на уеб страници в реално време (с корекция на изходния код на C, с пример за замяна на съдържанието на клонирани страници от stackoverflow с линк към оригинала);
- черни/бели списъци на сертификати и certificate pinning по списък;
- замяна на IP адреса/домейна/пътя/протокола на http заявката по конфигурацията (такъв разширен вариант /etc/hosts);
- http/https снифър.
Перфектно подходящ за разглеждане на сайтове през бавен интернет или на бавно устройство (благодарение на т.1 и 2, заради които всичко е било замислено), но всъщност е полезен във всеки случай.
Прокси-сървърът, с оглед на сигурността и опростяване на логиката на работа, е разделен на три части: TLS-сървър (терминира свързванията на браузера), централният модул на проксито и клиент, който терминира изходящите връзки.
Програмата е проектирана за персонализирана употреба, тоест всички конфигурации и директорията с текущите данни на прокси-сървъра са свързани с конкретен потребител, или дори с конкретен профил на браузъра. Стартирането на проксито като общосистемен демон е технически възможно, но в такъв вид е трудно да се използва една от основните му функции — агресивното кеширане на всичко, тъй като кешираните данни за всеки профил в браузъра могат да бъдат различни и трябва да бъдат изолирани един от друг с оглед на сигурността.
Пример за списък с блокиращи елементи:
отказ nosub all share.yandex.ru browser-updater.yandex.net отказ nosub all a.ria.ru # ? отказ nosub spec vk.com query \/share.php отказ nosub spec yastatic.net query \/pcode\/adfox\/loader.js query \/share2\/share.js отказ nosub spec www.youtube.com query \/subscribe_widget отказ nosub spec pano.img.ria.ru query \/adriver\/flashplagin\/movie.swf отказ nosub spec a.ria.ru query \/ping отказ nosub spec n-ssl.ria.ru query \/polling отказ nosub spec apis.google.com query \/js\/plusone.js отказ nosub spec yandex.ru pref \/clck\/safeclick\/ pref \/clck\/click\/ pref \/clck\/jclck\/ отказ all spec query \/tnc # index.ru проксированный счётчик exact \/tnc.js # index.ru проксированный счётчик query \/pixel.gif # некоторые спамеры используют это
Пример списък с маршрутизация:
https:\/\/my.local.site настройка прокси none настройка цели http:\/\/127.0.0.1:1234\/localsite настройка http_host new.host:1234 .intel.com разрешение отключено настройка прокси socks5:\/\/127.0.0.1:3333
При обновлении с версии старше 78 следует конвертировать кеш: войти в рабочую директорию прокси-сервера от пользователя (uid\/gid) прокси-сервера и выполнить fproxy-cacheconv-78 (по умолчанию эта программа не компилируется).
Изменения с прошлого опубликованного выпуска (80):
- fproxy-dashboard теперь имеет опцию для показа размеров контента в байтах, а не кбайтах;
- поддержка ошибочных серверов, игнорирующих заголовок «Connection: close»;
- поддержка ошибочных серверов, возвращающих некорректный заголовок «Content-Encoding: identity»;
- отправка TLS-опции ALPN;
- улучшение работы TLS-терминатора на внешней стороне (клиента): теперь он поддерживает не только TLS, но и обычные соединения, работает в виде независимого демона, принимающего запросы от основного прокси по сети, и также может перенаправлять свои исходящие соединения через другое прокси, позволяя гибко разделять задачи между узлами в условиях плохого интернет-соединения и\/или необходимости организовать «выход» трафика на удалённом сервере с различной степенью доверия; новая версия также более удобна для использования вручную из командной строки в качестве консольного TLS-клиента с поддержкой проксирования;
- упрощена сборка, теперь есть Makefile вместо шелл-скриптов
- организованы предсобранные .deb-пакеты в репозитории (для версий Debian 8-12)
- изменения файла конфигурации, обратно несовместимые
- нов конфигурационен файл за управление на маршрутизация на заявки, който обединява предишните отделни конфигурации resolv и включването на пренасочване на изходящи връзки към отдалечен сървър, а също така получи редица нови опции: вече можете за всеки url (протокол, домейн, порт, път) да избирате чрез кой клиент, кое прокси ще бъде изпратен, през чий dns-сървър ще се определи неговият ip-адрес (включително опционално делегиране на тази задача на външен http или socks5 прокси-сървър), или да зададете адреса ръчно, а също така да замените протокола, порта или префикса на url пътя.
- добавена поддръжка на SAN-сертификати за ip-адреси както на клиента, така и на сървъра (браузерите от известно време спряха да приемат ip-адреси в CommonName).
В бъдеще:
- поддръжка на CGI/FastCGI/.so хукове за mitm обработка на съдържанието, получено от сайтовете.
- мениджър на профили и конфигурации на прокси.
- интерактивно управление на проверка на сертификати на отдалечени сайтове и списъци за блокиране.
Източник: linux.org.ru
