Terminal tarafından Tor tarafından verilen IP adresi nasıl değiştirilir?


19

Tor tarafından verilen IP adresini terminalden değiştirmenin bir yolu var mı ?

Tor hizmetim var ve Tor'un terminalden bana verdiği IP adresini değiştirmek istiyorum. Veya başka bir deyişle: Komut satırında Tor'dan nasıl yeni bir IP adresi talep edebilirim?


4
bir terminalden "kimliği değiştirmek" nasıl olduğunu söylemek için daha iyi bir yol
mchid

Arka planda Ubuntu'da tor daemon'u çalıştırırken bulduğum başka bir komut ekledim.
mchid

Yanıtlar:


19

Ubuntu'da çalışan tor daemon için önce şunu deneyin:

killall -HUP tor

Bu işe yaramazsa torrc dosyanızdaki kontrol bağlantı noktasını etkinleştirin.

Ardından, kontrol portu için tor --hash-password şifresi ile bir şifre belirleyin.

Kontrol bağlantı noktasına bir telnet bağlantısı açın ve NEWNYM komutunu verin:

printf 'AUTHENTICATE "password"\r\nSIGNAL NEWNYM\r\n' | nc 127.0.0.1 9051

kaynaklar:


1
Orada yeni başlayanlar için, önce torrc'nizde karma şifreyi şu şekilde ayarlamanız gerekir: askubuntu.com/a/989108/52975
Ciro Santilli 新疆 改造 中心 法轮功 六四 事件

16

Sadece bash betiğinize yazabilir veya ekleyebilirsiniz:

service tor reload

İhtiyacım vardı sudo, ama bu işe yaradı.
Brian Z

Bana göre bu aslında Mchid'in verdiğinden daha iyi bir cevap. Reload komutu, yapılandırmayı yeniden yüklemek ve yeni bir devre kurmak (ve böylece yeni IP almak) için çalışan tor yürütülebilir dosyasını tetikler. Diğer cevap çalışan yürütülebilir dosyayı öldürür ve yeniden başlatır. Bu daha uzun sürebilir ve tor'un proxy'sine bağlı diğer hizmetlerin başarısız olmasına neden olabilir.
Alex

Bu basit çizgi sorunu çözebilirken neden başkalarının böyle karmaşık bir çözüm önerdiğini bilmiyorum
Mostafa Ahangarha

1
@MostafaAhangarha Çünkü bu birden fazla tor örneği için işe yaramıyor
MewX

4

Yöntem 1: HUP

En Söz terminalini kullanarak Tor tarafından verilen Değişim IP adresine biraz daha ayrıntı ama buraya gidin:

sudo killall -HUP tor

Ardından IP'nizin değiştiğinden emin olun:

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

sudo apt-get install tor1.6.0-5 sürümü ile Ubuntu 17.10'da test edilmiştir .

sudo işlem varsayılan olarak kök tarafından başlatıldığından gereklidir.

Bir HUP sinyalinin Tor daemonuna tam olarak ne yaptığı şu şekilde belgelenmiştir: https://gitweb.torproject.org/torspec.git/tree/control-spec.txt?id=03aaace9bd9459b0d4bf22a75012acf39d07bcec#n394 ve komut bağlantı noktası.

Tarayıcı Paketi 5.0.5 bundan etkilenmez, yalnızca TBB tarafından kullanılmayan varsayılan 9050 gibi arka plan bağlantı noktaları. Bu kullanım durumu için bkz. Https://tor.stackexchange.com/questions/1071/how-can-a-new-circuit-happen-without-closing-all-tabs

Burada belirtildiği gibi bir Tor IP ordusu konuşlandırıyorsanız , seçici olarak şunları gönderebilirsiniz:

kill -HUP $PID

Yöntem 2: Kontrol bağlantı noktası

Tarafından bahsedilen kat :

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

ancak bunun Ubuntu 17.10 üzerinde çalışması için önce :

  • kontrol portunu şu komutu vererek etkinleştirin:

    ControlPort 9051
    

    itibaren /etc/tor/torrc

  • Boş şifreyi ayarlayın, aksi takdirde verir 515 Authentication failed: Wrong length on authentication cookie.. İlk çalıştırma:

    tor --hash-password ''
    

    Bu şöyle bir şey çıkarır:

    16:D14CC89AD7848B8C60093105E8284A2D3AB2CF3C20D95FECA0848CFAD2
    

    Şimdi /etc/tor/torrcsatırı güncelleyin:

    HashedControlPassword 16:D14CC89AD7848B8C60093105E8284A2D3AB2CF3C20D95FECA0848CFAD2
    
  • Tor'u yeniden başlat:

    sudo service tor restart
    

Bonus: IP'nizin değişip değişmediğini nasıl kontrol edersiniz

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

Ayrıca bakınız:

İlgili konular


Böyle basit bir işlev için böyle karmaşık çözümler ( get new circuit). Artık artık güvenmiyorum. Kendimizi ifşa etmemizin hata ve hatalarla dolu olduğunu düşünüyorum
adrianTNT

3

Bir kontrol bağlantı noktası ayarlayabilir ve python komut dosyasını kullanabilirsiniz

from stem import Signal
from stem.control import Controller

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

Yeni ip ayarlanana kadar nasıl bekleyeceğinizi biliyor musunuz?
silgon
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.