Как настроить Ubuntu на использование прокси (socks 5) для всего трафика приложений?
Я пробовал прокси-цепочки, но он работает только для одного приложения, а не для всей системы.
Что-то вроде Proxifier на Windows.
Как настроить Ubuntu на использование прокси (socks 5) для всего трафика приложений?
Я пробовал прокси-цепочки, но он работает только для одного приложения, а не для всей системы.
Что-то вроде Proxifier на Windows.
Это действительно плохая идея. Инструмент, который вы ищете, называется socksify
и является частью пакета Dante.
Как я могу socksify всей системы?:
В некоторых системах возможно выполнение глобального эквивалента запуска программы с socksify. Это может быть полезно, но учтите, что некоторые программы могут не работать в ограниченной среде. Например, такие программы, как rpm, зависят от чистой среды сборки, чтобы получить ее (библиотечные) зависимости (согласно Dag Wieers).
Вы не должны пытаться делать это, если не знаете, что делаете, так как это потенциально опасная операция. Рекомендуемый способ - указать socksify вручную при запуске приложения, в которое вы хотите добавить поддержку SOCKS. Однако, если вы хотите попробовать объединить всю систему, это можно сделать одним из следующих двух способов (опять же, любезно предоставлено Dag Wieers):
Наиболее общий подход - установить значение
LD_PRELOAD
в файле запуска оболочки. Это будет иметь тот же результат, что и использование программыsocksify
вручную. Для оболочки Bourne /bash следующие строки могут быть добавлены в соответствующие файлы запуска, такие как/etc/profile
,~/.profile
или~/.bashrc
.LD_PRELOAD="libdl.so libdsocks.so" export LD_PRELOAD
В Linux также можно добавить строки ниже в файл
/etc/ld.so.preload
, но, опять же, не делайте этого, пока не поймете, что делаете.libdl.so libdsocks.so
Когда все приложения являются соксифицированными, иногда может быть необходимо повернуть соксификацию. Этого легко достичь (в оболочке Bourne /bash) с помощью следующей команды:
unset LD_PRELOAD