Как я могу использовать Torify для приложения на OS X

Я хочу, чтобы одно из моих приложений использовало Tor; однако само приложение не имеет настройки прокси и использует системный прокси. Проблема в том, что я не хочу устанавливать свой системный прокси, и я просто хочу, чтобы это одно приложение использовало tor.

Я немного искал решение, я придумал torify. Я установил torи torifyиспользую brew, и все работает нормально, и, например, я могу принудительно curlиспользовать torвот так:torify curl ifconfig.me 2

Чтобы использовать torify, мне нужно запустить приложение из терминала. Для этого я использую open -a myapp. Однако это не заставляет myappидти за прокси tor. Я думаю, это из-за openкоманды, и я думаю, что я должен открыть myappкак-то напрямую. Кстати, myappне работает, когда пытаюсь запустить его, открыв исполняемый файл внутри папки /Contents/MacOS.

У вас есть какие-нибудь предложения?

заранее спасибо

Ответы (2)

Сообщите своей команде, где находится ваш myapp.app

Вам необходимо предоставить команде open абсолютный или относительный путь к приложению, если только исполняемый файл уже не находится в вашем $PATH , или если вы не изменили свой рабочий каталог на место в файловой системе, где находится ваш myapp.app (в моих примерах myapp .app — это папка «Приложения», домашняя папка «Приложения», папка с именем someotherplace и общая папка соответственно).

 open /Applications/myapp.app
 open ~/Applications/myapp.app
 open ../someotherplace/myapp.app
 cd && cd ../Shared/ && open myapp.app

Вы также можете ввести команду открытия и нажать пробел, а затем перетащить свое приложение из любого места в Терминал, и путь будет указан.

Есть другой способ

Вы можете выполнить свой исполняемый файл, используя его полный путь и добавив амперсанд. Это запустит его в фоновом режиме, чтобы ваш терминал не был привязан:

 ./myapp.app/Contents/MacOS/myapp &
 /Applications/myapp.app/Contents/MacOS/myapp &
 cd /Volumes/externaldisk/projects/thisone/myapp.app/Contents/MacOS && ./myapp &

И что интересно, используя этот метод, вы можете запускать столько экземпляров своего приложения, сколько у вас есть для этого памяти.

Чтобы использовать torify с вашим myapp.app

Я уверен, что вам нужно запустить его так, чтобы использовать torify (при условии, что ваше приложение myapp.app находится в папке /Applications):

 torify /Applications/myapp.app/Contents/MacOS/myapp &

или

 cd /Applications/myapp.app/Contents/MacOS/
 torify myapp &
Я не имел в виду, что myappне может работать с терминала. Дело в том, что если я запускаю myappс помощью openкоманды, она не будет работать через прокси-сервер Tor. Кстати, он не работает правильно, когда я открываю его с помощью двоичного файла внутри папки /Contents/MacOS/.
Я отредактировал свой вопрос, чтобы быть более понятным.
brew не показывает формулу для torify, они ее удалили?

Ты прав. openзапускает программу в фоновом режиме, поэтому Torify не работает. Решение состоит в том, чтобы запустить приложение, напрямую вызвав его двоичный файл. Вот как:

torify /Applications/MyApp.app/Contents/MacOS/MyApp