मैं stem.process.launch_tor_with_config
के साथ बनाए गए टोर नोड को नियंत्रित करने के लिए stem
का उपयोग कर रहा हूं। मैंने stem.control.Controller
भी बनाया है जो उपर्युक्त प्रक्रिया 'नियंत्रण पोर्ट पर चल रहा है।मैं अपनी टोर प्रक्रिया 'स्टेम में एंडपॉइंट कैसे बदल सकता हूं?
मैं निकास नोड कैसे बदल सकता हूं? मैंने stem.controller.Controller.new_circuit
पर देखा, लेकिन यह इंटरमीडिएट नोड्स को बदलता है, जो एंडपॉइंट को संरक्षित करता है।
क्या कोई जानता है कि यह कैसे किया जा सकता है?
धन्यवाद!
संपादित करें:
तो मुझे लगता है कि मैं कुछ मौलिक गलतफहमी हो सकती है, लेकिन मैं इसे चारों ओर मेरे सिर लपेटो नहीं कर पा रहे। मैंने Controller.get_circuits()
पर कॉल करने का प्रयास किया और CircuitEvent
ऑब्जेक्ट्स की एक सूची मिली। क्या इसका मतलब यह है कि एक ही प्रक्रिया एकाधिक सर्किट को संभाल सकती है? यदि हां, तो मैं उपयोग के लिए एक का चयन कैसे करूं?
ध्यान दें कि मैं HTTP अनुरोधों को Privoxy के माध्यम से निर्देशित कर रहा हूं, जो बदले में इसे टोर प्रोसेस 'सॉक्स पोर्ट पर अग्रेषित कर रहा है।
संपादित करें 2:
मैं कुछ है कि काम करता है पाया है, लेकिन मैं नहीं जानता कि कैसे यह काम करता है, जो मुझे चिंता।
- के बारे में बताएं क्यों मेरे दृष्टिकोण से काम करता है
- दिखाएँ एक बेहतर दृष्टिकोण हो सकता है और है कि कैसे काम करता है
यहाँ मैं क्या किया है समझाने: मैं खुशी किसी को एक जवाब जो या तो कर सकते हैं अवार्ड होगी:
for circuit in controller.get_circuits():
controller.close_circuit(circuit.id)
वहां है। बाहरी आईपी बदल गया, इसलिए मुझे पता है कि मैंने कुछ किया है लेकिन नरक अगर मुझे पता है कि वास्तव में क्या है।
सबसे पहले, आपके उत्तर के लिए धन्यवाद। सबसे दूसरा, कृपया मेरा आश्वासन दें कि मैं टीओआर नेटवर्क का दुरुपयोग नहीं कर रहा हूं। मेरा गोआ * वास्तव में, एंडपॉइंट आईपी पर कुछ नियंत्रण रखने के लिए है, लेकिन मैं इसे (जो मुझे लगता है) के लिए कर रहा है एक अच्छा कारण है। मैं टीओआर नेटवर्क के कुछ गुणों की जांच के लिए विभिन्न आईपी के साथ टीओआर प्रक्रियाओं का एक पूल चलाने की कोशिश कर रहा हूं। दूसरे शब्दों में, मैं हैकिंग (रचनात्मक अर्थ में) हूं। मुझे उम्मीद है कि यह ठीक है! इसे ध्यान में रखते हुए, क्या एंडपॉइंट आईपी में गारंटीकृत परिवर्तन करने का कोई तरीका है? – blz
सुनने के लिए खुशी हुई! यदि आप बस अलग-अलग निकास रिले के पूल की तलाश में हैं तो सबसे आसान विकल्प घाव शायद उस सेट को ढूंढना है जिसे आप एटलस (http://atlas.torproject.org/) में उपयोग करना चाहते हैं, फिर create_circuit() को कॉल करने के लिए कॉल करें उनमें से प्रत्येक के माध्यम से एक सर्किट। अप्रिय बिट यह है कि आपको 'कौन सी धारा कौन सी आईपी प्राप्त होती है' निर्धारित करने के लिए आपको सर्किट में स्ट्रीम को मैन्युअल रूप से संलग्न करने की आवश्यकता होगी। इसके लिए attach_stream() देखें (https://stem.torproject.org/api/control.html#stem.control.Controller.attach_stream)। – Damian
बढ़िया! मैं उसमें देख लूंगा। आपकी सहायता के लिए एक बार फिर से धन्यवाद! – blz