diff --git a/post/vstanovlennia-ta-nalashtuvannia-irc-baunsera-znc-v-linux.md b/post/vstanovlennia-ta-nalashtuvannia-irc-baunsera-znc-v-linux.md index 07f15f9..c34927c 100644 --- a/post/vstanovlennia-ta-nalashtuvannia-irc-baunsera-znc-v-linux.md +++ b/post/vstanovlennia-ta-nalashtuvannia-irc-baunsera-znc-v-linux.md @@ -127,15 +127,15 @@ WantedBy=multi-user.target ### Підключення ZNC до серверів IRC через проксі HTTP/SOCKS -На користувачів Tor/I2P - тут чекає не приємний сюрприз: станом на зараз, рішення "з коробки" немає, хоча подібний [запит](https://github.com/znc/znc/issues/143) було створено ще в далекому 2012 році. +Користувачів Tor/I2P - тут чекає не приємний сюрприз: станом на зараз, рішення "з коробки" немає, хоча подібний [запит](https://github.com/znc/znc/issues/143) було створено ще в далекому 2012 році. -Для вирішення цієї проблеми, на офіційному сайті є [інструкція на прикладі проксування через Tor](https://wiki.znc.in/Tor#.onion_Resolution). Особисто для себе - обрав спосіб з proxychains: +Для вирішення цієї проблеми, на офіційному сайті є [інструкція на прикладі проксування через Tor](https://wiki.znc.in/Tor#.onion_Resolution). Особисто для себе, обрав спосіб з proxychains: ``` bash apt install proxychains4 ``` -Я користуюсь IRC-каналами I2P та Yggdrasil, в стандартному файлі конфігурації `/etc/proxychains4.conf`, вказав тільки два рядка: +Я читаю IRC-канали I2P та Yggdrasil, в стандартному файлі конфігурації `/etc/proxychains4.conf`, вказав тільки два рядки: ``` /etc/proxychains4.conf # ігнорувати проксі для IRC-серверів Yggdrasil @@ -158,7 +158,32 @@ ExecStart=/usr/bin/proxychains /usr/bin/znc -f * `systemctl daemon-reload` - застосовуємо оновлення конфігурації systemd * `systemctl restart znc` - перезапускаємо баунсер ZNC -В інших випадках, конфігурація залежатиме від конкретних серверів IRC та їх мереж. +Щоб одночасно користуватись декількома проксі (наприклад, I2P і Tor) ланцюжків `proxychains` не достатньо. Я пробував вказувати послідовність через опцію `dynamic_chain` але схоже, вона працює не так як я це інтуїтивно розумію. Колись, не розібравшись, взагалі [поставив окремий баунсер soju](https://devzone.org.ua/post/vstanovlennia-ta-bazove-nalashtuvannia-irc-baunsera-soju), але в ньому є аналогічна проблема з підтримкою проксі з коробки і якщо анонімних мереж більше двох, то піднімати по баунсеру на кожну - вже нагадує цирк і марнотратство ресурсів сервера. + +Згодом, проблему динамічної маршрутизації підмереж я вирішив додаванням до `proxychains` ще одного, маршрутного сервера на базі `privoxy`: + +``` bash +apt install privoxy +``` + +В конфігурації `privoxy` нічого не змінював, лише додав в кінець файлу два рядки: + +``` /etc/privoxy/config +forward .i2p 127.0.0.1:4444 +forward-socks5t .onion 127.0.0.1:9150 . +``` +* послідовність правил `forward` тут важлива: якщо спробувати (як радить ШІ) додати на початок або в кінець ланцюга `forward / .` - тоді щонайменше у версії privoxy `4.0.0-2` ця опція перехопить на себе взагалі усі запити в пріоритеті, а без неї все працює: не релевантний домену трафік піде напряму (в моєму випадку - на Yggdrasil, коли у вас це може бути Інтернет) +* у разі будь разі будь яких проблем з підключенням, у тому ж файлі конфігурації, зверніть увагу на опцію `debug`, зокрема коди `4096` і `128` (файл журналів стандартно знаходиться в `/var/log/privoxy/logfile`) +* порт `9150` - стандартний для роутера [Arti](https://devzone.org.ua/post/vstanovlennia-onion-routera-arti-z-pidkliuchenniam-do-merezi-tor-cherez-yggdrasil), не переплутайте з класичним `9050` + +Після цього, у файлі `/etc/proxychains4.conf` замість проксі в прикладі, вказуємо: + +``` /etc/proxychains4.conf +[ProxyList] +http 127.0.0.1 8118 +``` +* важливо вказати саме `http` бо сервер `privoxy` працює саме на цьому протоколі +* порт і хост на прикладі - стандартні (як і `::1`) ## Підключення клієнтів IRC до ZNC