Автор Гілка: Реліз фільтруючого проксі psocks 0.6 з підтримкою аут-проксі  (Прочитано 1185 раз)

Відсутній ps

  • Графоман
  • ****
  • дописів: 261
  • Карма: +4/-0
    • Мої дописи на DevZone
Написав колись для себе і користуюсь досі. З нагоди чергового релізу (який включає опціональний аут-проксі) хочу поділитися новиною зі спільнотою та трішки розказати навіщо він мені.

Фільтруючі проксі використовуються в основному у якості альтернативи додаткам типу uBlock, тому що працюють на рівні DNS і запобігають витокам телеметрії ще на етапі резольву. Серед відомих рішень є Pi-hole (звалище shell-скриптів) та Crab-hole (чистий програмний Rust але менша функціональність)

Чому я користуюсь psocks замість Pi-hole / Crab-hole?

  • передбачуваність: psocks працює за білим списком і я точно знаю які ресурси дозволені, тоді як в похідних Pi-hole багато статичних правил блокування орієнтовані на тимчасові DNS (підзони являють собою тимчасовий хеш типу abcdxx.tracking.com, змінюючись швидше за реєстри а отже частина трафіку пролазить)
  • економічність: відсутність зайвих порівнянь на мільйонах рядків правил; білий список є мікроскопічним
  • енергозаощадження: окрім попереднього пункту, сама по собі фільтрація на рівні DNS дозволяє відсікати зайві фонові запити, а отже - не витрачати час на шифрування TLS кожного паразитного. Це особливо зручно на мобільних пристроях під час зимових блекаутів: час роботи батареї при активній навігації в Інтернет значно збільшується
  • швидкість: так як реліз 0.6 включає аут-проксі, який я робив для зв'язки з Tor, відкинуті запити GET значно зменшують час відповіді в цій мережі

Проксі має вбудований сервер API, графічний клієнт поки не робив і мені вистачає статистики в форматі JSON:


Через цей же інтерфейс API відбувається керування списками "на льоту", без необхідності перезавантаження (див. README)

https://codeberg.org/YGGverse/psocks - репозиторій проєкту
https://codeberg.org/postscriptum/psocks-config - мої списки для швидкого старту, які я синхронізую між різними компами по URL (можна також вказувати локальні/приватні filepath)
« Змінено: 2026-07-10 23:55:18 від ps »

Відсутній BeSiDa

  • Письменник
  • *****
  • дописів: 509
  • Карма: +7/-0
Цікаво. А що таке вимкнені правила? Чи є у правил назви та групування?
Для деяких задач може бути потрібна група доменів, які потім не потрібні для інших задач (навіть коли інші сайти мають посилання на ті домени також).
Який код сокс помилки повертаєте у разі блокування?

Відсутній ps

  • Графоман
  • ****
  • дописів: 261
  • Карма: +4/-0
    • Мої дописи на DevZone
Цитата
Цікаво. А що таке вимкнені правила?
сумарна кількість правил (рядків) у всіх вимкнених списках

Цитата
Чи є у правил назви та групування?
В конфігаг toml є; групування не робив бо мені не треба

Цитата
Який код сокс помилки повертаєте у разі блокування?
В останній версії повикидав reply_error і зараз проксі повертає "CONNECTION_REFUSED" для всіх типів. зробив це для спрощення коду бо для мене дебаг в клієнті не є цікавим і я дивлюсь логи де має бути внутрішній ReplyError::ConnectionNotAllowed, можливо варто повернути
« Змінено: 2026-07-10 23:52:02 від ps »

Відсутній BeSiDa

  • Письменник
  • *****
  • дописів: 509
  • Карма: +7/-0
Може й не повертати, бо браузер тоді може інакше сприймати ті помилки та щось інше робити. Чи не браузер, а скрипти.