วิธีใช้ Wget กับ Tor Bundle ใน Linux


10

ฉันเป็นผู้ใช้ Linux Mint (Lisa) และผู้ใช้ Tor Bundle พยายามใช้ wget มากกว่า Tor หลังจากทำตามคำแนะนำที่ฉันพบที่นี่สิ่งที่ฉันได้รับเมื่อเรียกใช้ wget คือไฟล์เอาต์พุตที่บอกว่า "ต้องการการรับรองความถูกต้อง 514"

นี่คือสิ่งที่ฉันทำ: ฉันดาวน์โหลด Tor Bundle เวอร์ชันล่าสุด (เวอร์ชัน 2.2.35-9) สำหรับ Linux แล้วแตกออกมา ฉันวิ่ง / เริ่มต้น - เบราว์เซอร์ จากนั้นในวิดาเลียฉันไปที่การตั้งค่า -> ขั้นสูงและยกเลิกการเลือก "กำหนดค่า ControlPort โดยอัตโนมัติ" (ต่อมาฉันได้ลองเปลี่ยน "รับรองความถูกต้อง" เป็น "ไม่มี" แต่ตอนนี้ยังใช้งานไม่ได้) ที่อยู่ IP ถูกตั้งค่าเป็น localhost และพอร์ตคือ 9051

จาก terminal ฉันพูดว่า:

export http_proxy="http://127.0.0.1:9051"
wget -proxy=on www.whatismyip.com

สิ่งนี้ทำให้ฉันมีไฟล์เอาต์พุตว่า "ต้องการการรับรองความถูกต้อง 514" แทนที่จะเป็น www.whatismyip.com ความคิดใด ๆ


ฉันได้อ่านแล้วว่าทั้ง TOR และ Vidalia มีไฟล์การกำหนดค่าค้นหาคำว่าผู้ใช้หรือรหัสผ่านที่นั่นและดูว่าไม่ใช่อย่างที่คุณคิดว่าอาจมีชื่อผู้ใช้หรือรหัสผ่านอยู่ที่นั่น
barlop

คำตอบ:


17

บน Ubuntu หรือ Debain ให้ติดตั้งแพ็คเกจ "torsocks"

sudo apt-get install torsocks

หลังจากนั้นใช้ wget ดังนี้:

torsocks wget http://foo.onion/data.bar

ไม่ได้ผลสำหรับฉัน 05:19:02 libtorsocks(22594): SOCKS server refused connectionTor ทำงานบน 9050 พอร์ตและมันน่าจะเป็นสัตว์นี้ไม่ได้เกี่ยวกับ 127.0.0.1:80
Holms

1
torify --helpพูดว่า,torify is now just a wrapper around torsocks(1) for backwards compatibility.
palswim

4

Tor สแตนด์อะโลนมีพร็อกซี SOCKS สำหรับการเชื่อมต่อกับเครือข่าย Tor เท่านั้นและชุดเบราว์เซอร์ของ Tor ไม่ได้เพิ่มพร็อกซีเพิ่มเติมใด ๆ

วิธีปกติในการจัดการกับโปรแกรมที่ต้องใช้พร็อกซี HTTP คือการติดตั้งหนึ่งในของคุณเองเช่น Privoxy หรือ Polipo จากนั้นเชื่อมโยงพร็อกซีนั้นกับ Tor ตัวอย่างเช่นในการกำหนดค่าของ Privoxy คุณต้องระบุ:

forward-socks5  /  127.0.0.1:9050 .

Privoxy แล้วฟังบนพอร์ต 8118 และคุณสามารถกำหนดค่าการตั้งค่าพร็อกซี HTTP http://localhost:8118ของคุณเพื่อ

น่าเสียดายที่ Linux Mint ไม่ได้พกพาแพ็คเกจเหล่านี้ในที่เก็บ คุณอาจพิจารณาเปลี่ยนการกระจายหรือรวบรวมด้วยตนเอง


ขั้นตอนตามคำแนะนำขั้นตอนที่นี่
Skippy le Grand Gourou

3

ใช้Torifyซึ่งเป็น wrapper อย่างง่ายสำหรับtorsocksและ Tor เช่น:

$ torify curl ifconfig.me
$ torify wget -qO- -U curl ifconfig.me

ก่อนใช้ตรวจสอบให้แน่ใจว่าเซิร์ฟเวอร์ Tor ของคุณพร้อมใช้งาน

ดูเพิ่มเติม: จะลบโปรแกรมออกจากเทอร์มินัลได้อย่างไร? ที่ Tor SE


นี่อาจเป็นทางออกที่ง่ายที่สุดสำหรับคนส่วนใหญ่
A.Danischewski

ในฐานะที่torify --helpกล่าวว่าtorify is now just a wrapper around torsocks(1) for backwards compatibility.ดังนั้นคำตอบนี้เป็นเหมือนคำตอบ torsocks
palswim

0

บางที www.whatismyip.com กำลังตรวจสอบส่วนหัวX-Forwarded-Forและทำให้เกิดข้อผิดพลาด

ฉันแนะนำให้คุณทดสอบอีกตัวหนึ่ง (นี่คือของฉันเองดังนั้นฉันจึงรู้ว่าไม่มีการตรวจจับใด ๆ เพียงที่อยู่สาธารณะของคุณ): http://sputnick-area.net/ip

แก้ไข:ฉันคิดว่าคุณควรเอาสวิทช์ในขณะที่มันไม่ได้อยู่ใน-proxy man wgetIIRC, wget สามารถตรวจจับ proxy ได้ :

wget -q -O - www.whatismyip.com

ฉันมีปัญหาเดียวกันกับ sputnick-area.net/ip แต่การคิดที่ดีมันเป็นความคิดที่ดีที่จะทดสอบสิ่งนั้น
Asher Walther

ดูโพสต์ที่แก้ไขของฉันด้านบน
Gilles Quenot

สามารถวาง -q ด้วยการค้นหาจาก man page thta -q เกี่ยวกับการเอาท์พุท -0 คืออะไร
barlop

1
-qเพียงซ่อนมิเตอร์ความคืบหน้า
Gilles Quenot

1
คุณยังไม่ได้ตอบคำถาม = /
holms

0

proxychains ยังทำงานด้วยการกำหนดค่าต่อไปนี้

ถุงเท้า 5 127.0.0.1 9150

$ proxychains curl ifconfig.me ProxyChains-3.1 ( http://proxychains.sf.net ) | คำร้องขอ DNS | ifconfig.me | S-chain | - <> - 127.0.0.1:9150-<><>-4.2.2.2.2:53-<><>-OK | DNS-response | ifconfig.me คือ 219.94.235.40 | S-chain | - <> - 127.0.0.1:9150-<><>-219.94.235.40:80-<><>-OK 178.63.97.34


0

torify ดูเหมือนจะทำงานให้ฉัน:

 torify wget https://www.some_url.com

นี่คือรายการ access.log จากเว็บเซิร์ฟเวอร์ของฉัน:

207.244.70.35 - - [13/Sep/2018:03:57:25 +0000] "GET / HTTP/1.1" 200 8446 "-" "Wget/1.17.1 (linux-gnu)" "207.244.70.35" response-time=0.02

207.244.70.35 ไม่ใช่ IP จริงของฉันดังนั้นคำสั่งนี้ใช้งานได้

นี่คือสคริปต์หลามที่ทำสิ่งเดียวกับที่ฉันพบที่นี่

#! /usr/bin/python3
import subprocess
from subprocess import Popen, PIPE
import sys
import os


# use torify to make a wget 
class Wgettor():
    def __init__(self, url):
        if not self.__is_activated():
            print("Ensure Tor service is running")
            sys.exit()
        else:
            self.url = url
            self.wget()

    # ensure Tor service is running
    def __is_activated(self):
        service_cmd = "service --status-all | grep tor"
        p = subprocess.Popen(service_cmd,
                             shell=True,
                             stdout=PIPE).communicate()[0]
        return "+" in str(p)

    def wget(self):
        prox = [
            "torify", "wget", self.url
        ]
        os.system(" ".join(prox))


if __name__ == "__main__":
    Wgettor("https://www.some_url_here.com")
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.