Подтвердить что ты не робот

Как изменить выход Tor node программно, чтобы получить новый IP-адрес?

У меня есть Tor, работающий на моем компьютере, и мне нужно изменить выход Tor node каждые пять минут. Например, если я начну использовать Tor через какой-то выход node, то через 5 минут я хочу, чтобы Tor изменился на выход node с другим IP-адресом. Как я могу это сделать?

Tor, насколько я знаю, слушает порт 8051 на локальном хосте.

Какие команды я могу отправить на этот порт, чтобы заставить Tor построить новую цепочку, чтобы я мог получить другой IP-адрес?

4b9b3361

Ответ 1

(echo authenticate '""'; echo signal newnym; echo quit) | nc localhost 9051

Ответ 2

Метод 1: HUP

sudo killall -HUP tor

Затем проверьте, изменился ли ваш IP-адрес:

curl --socks5 127.0.0.1:9050 http://checkip.amazonaws.com/

Протестировано в Ubuntu 17.10 с sudo apt-get install tor версии 1.6.0-5.

sudo необходим, поскольку процесс запускается по умолчанию по умолчанию.

То, что сигнал HUP делает точно для демона Tor, документируется по адресу: https://gitweb.torproject.org/torspec.git/tree/control-spec.txt?id=03aaace9bd9459b0d4bf22a75012acf39d07bcec#n394 и эквивалентно отправке некоторой команды с помощью команды порт.

Браузер Bundle 5.0.5 не влияет на это, только порты демона, такие как 9050 по умолчанию, которые не используются TBB. Для этого случая использования см.: https://tor.stackexchange.com/questions/1071/how-can-a-new-circuit-happen-without-closing-all-tabs

Если вы развертываете армию Tor IPs как указано здесь, вы можете выборочно отправить:

kill -HUP $PID

Способ 2: порт управления

Упоминается kat:

(echo authenticate '""'; echo signal newnym; echo quit) | nc localhost 9051

но для этого, чтобы работать с Ubuntu 17.10, вы должны сначала:

  • включить порт управления, раскомментировав:

    ControlPort 9051
    

    из /etc/tor/torrc

  • Задайте пустой пароль, иначе он даст 515 Authentication failed: Wrong length on authentication cookie.. Первый запуск:

    tor --hash-password ''
    

    Это выводит что-то вроде:

    16:D14CC89AD7848B8C60093105E8284A2D3AB2CF3C20D95FECA0848CFAD2
    

    Теперь на /etc/tor/torrc обновите строку:

    HashedControlPassword 16:D14CC89AD7848B8C60093105E8284A2D3AB2CF3C20D95FECA0848CFAD2
    
  • Перезапустить Tor:

    sudo service tor restart
    

Бонус: как проверить, что ваш IP изменен

curl --socks5 127.0.0.1:9050 http://checkip.amazonaws.com/

См. также:

Связанные темы

Ответ 3

да, что 1 (i mean = true =))), что tor меняет ip каждые 10 минут но! если я перезапущу tor - я получу новый ip даже в этом интервале 10 минут. поэтому я думал о том, чтобы заставить отправить этот запрос "change_ip" вручную. см. этот код (записанный в соответствии с http://en.linuxreviews.org/HOWTO_use_the_Internet_anonymously_using_Tor_and_Privoxy)

procedure ChangeIp;
var
  sck:TIdTCPClient;
begin
  sck:=TIdTCPClient.Create(nil);
  try
    sck.Host:='127.0.0.1';
    sck.Port:=10051;
    sck.Connect;
    sck.SendCmd('authenticate','');
    if sck.LastCmdResult.Code='250' then
    begin
      sck.SendCmd('signal newnym','');
    end;
  finally
    sck.Free;
  end;
end;

и accornig to [https://tor-svn.freehaven.net/svn/torctl/trunk/doc/howto.txt] Я могу написать контроллер, который изменит конфигурацию на лету. по умолчанию он не enebled (я имею в виду эту способность), но я могу заставить клиента прослушивать какой-то порт для принятия команд с использованием torrc... если я не ошибаюсь... again =)

!!! где ад torrc находится на моем компьютере?

В C:\Users\geekman\AppData\Roaming\Tor, я мог бы, n пальцем я получил vista.

Ответ 4

Этот вопрос выглядит довольно часто (1, 2), поэтому я просто добавил a часто задаваемые вопросы. Как упоминалось ранее, вы можете сделать это с помощью сигнала NEWNYM. Вот пример для этого через stem...

from stem import Signal
from stem.control import Controller

with Controller.from_port(port = 9051) as controller:
  controller.authenticate()
  controller.signal(Signal.NEWNYM)

Ответ 5

Я создал для себя оболочку script, которая также позволяет делать это удаленно (если Tor-сервер работает на другой машине).

Он доступен здесь: https://gist.github.com/kirelagin/9667900.

Ответ 6

У вас нет контроля над маршрутизацией в сети tor (если бы у вас было, кто-то мог бы злоупотреблять этой функцией). Но tor уже переключает маршрут примерно каждые 10 минут (по крайней мере, согласно немецкая статья Википедии).

Ответ 7

Advtor дает вам доступ почти ко всем расширенным настройкам, которые работают над сетью.

Ответ 8

Вы можете просто ввести или вставить в свой bash script:

service tor reload

Ответ 9

Я сделал что-то другое здесь... Я написал программу PHP, которая может общаться с оболочкой linux. Программа перезапускает тор через равные промежутки времени.

Итак, когда tor перезагружен, он получает новый IP-адрес... Да.....!!

exec("/etc/init.d/tor restart",$ioOut);
print_r($ioOut); //output from shell after executing the command
sleep(25);

Вы также можете написать оболочку script, чтобы сделать это.

Теперь я ищу опцию windows для этого. Проблема в том, что в Windows Tor это сервис, который нельзя перезапустить.

Ответ 10

Я написал библиотеку для управления Tor с PHP. Он устанавливается с помощью Composer и позволяет изменить выход node.

Конечно, это бесплатное программное обеспечение: http://dunglas.fr/2013/02/php-torcontrol-a-library-to-control-tor/