Multitor - أداة تسمح لك بإنشاء مثيلات متعددة TOR مع موازنة التحميل
أداة تسمح لك بإنشاء مثيلات TOR متعددة مع حركة مرور موازنة التحميل بينها بواسطة HAProxy . يوفر نقطة نهاية واحدة للعملاء. بالإضافة إلى ذلك ، يمكنك عرض عمليات TOR التي كانت قيد التشغيل سابقًا وإنشاء هوية جديدة لجميع العمليات أو العمليات المحددة.
و multitor تم إعادة كتابة تماما على أساس:
- مشروع متعدد TOR كتبها Jai Seidl : متعدد TOR
- المصدر الأصلي هو ( مشروع سيباستيان وين ): القشطالموزع مع دوائر TOR المتعددة
المعلمات
يوفر الخيارات التالية:
Usage:
multitor <option|long-option>
Examples:
multitor --init 2 --user debian-tor --socks-port 9000 --control-port 9900
multitor --show-id --socks-port 9000
Options:
--help show this message
--debug displays information on the screen (debug mode)
--verbose displays more information about TOR processes
-i, --init <num> init new tor processes
-s, --show-id show specific tor process id
-n, --new-id regenerate tor circuit
-u, --user <string> set the user (only with -i|--init)
--socks-port <port_num|all> set socks port number
--control-port <port_num> set control port number
--proxy <socks|http> set load balancer
المتطلبات يستخدم
Multitor أدوات مساعدة خارجية ليتم تثبيتها قبل التشغيل:
كيفية الاستخدام
إنها بسيطة - للتثبيت:
./setup.sh install
./setup.sh uninstall
bin/multitor
يتم وضع الارتباطفي/usr/local/bin
- يتم وضع صفحة الرجل في
/usr/local/man/man8
إنشاء العمليات
ثم مثال على بدء الأداة:
multitor --init 2 -u debian-tor --socks-port 9000 --control-port 9900
--init 2
-u debian-tor
--socks-port 9000
--control-port 9900
مراجعة العمليات
أمثلة على الحصول على معلومات حولعملية TOR معينةتم إنشاؤها بواسطة multitor :
multitor --show-id --socks-port 9000
--show-id
يمكنك استخدام جميع القيم لعرض جميع العمليات.يحدد رقم المنفذ للاتصال. يتيح لك العثور على العملية بعد رقم المنفذ هذا:
--socks-port 9000
الهوية الجديدة TOR
يوجد زر " استخدام هوية جديدة " في متصفح TOR أو Vidalia. يرسل إشارة إلى منفذ التحكم في TOR ، للتبديل إلى هوية جديدة. الحل البديل هو إعادة تشغيل multitor أو الانتظار للوقت المحدد في NewCircuitPeriod
المتغير ، الذي القيمة الافتراضية هي 30s .
إذا كانت هناك حاجة لإنشاء هوية جديدة:multitor --new-id --socks-port 9000
--new-id
يمكنك استخدام جميع القيمة لتجديد الهوية لجميع العمليات. خيار بديل لإعطاء هوية جديدة هو إعادة تشغيل multitor.يحدد رقم المنفذ للاتصال. يتيح لك العثور على العملية بعد رقم المنفذ هذا:
--socks-port 9000
وكيل
انظر موازنة تحميل .
مثال المخرجات
حتى إذا قمنا بإنشاءعمليات TOR 2بواسطة Multitor سيتم إعطاء المثال:
موازنة
Multitor يستخدم اثنين من التقنيات لإنشاء آلية موازنة - وهذه هيالجوارب وكيل و كيل المتشعب . كل من هذه الأنواع من موازنة التحميل جيدة ولكن الغرض منها مختلف قليلاً.
لتصفح مواقع الويب (بشكل عاملحركة مرور http / https ) من المستحسن استخدام http proxy . في هذا التكوين ،يتم استخدام خدمة polipo ، التي تحتوي على العديد من الوظائف المفيدة جدًا (بما في ذلك الذاكرة المؤقتة) التيلا تهدف دائمًا إلى الوصول إلى TOR . بالإضافة إلى ذلك ، نحن على ثقة في التعامل بشكل أفضل مع حركة مرور SSL.
و الجوارب وكيل النوع هو أيضا يمكن الاعتماد عليها، ولكن عندما تصفح المواقع من خلالعقد TOR يمكن أن يسبب المزيد من المشاكل. يستخدم
Multitor HAProxy لإنشاء خادم وكيل محلي لجميع مثيلات TOR أو Polipo التي تم إنشاؤها وتوزيع حركة المرور فيما بينها. التكوين الافتراضي في
templates/haproxy-template.cfg
.يستخدم HAProxy 16379 للتواصل ، لذا يجب أن تحتوي جميع خدماتك لاستخدام موازن التحميل على رقم المنفذ هذا.
بنية الاتصال بالبروكسي SOCKS :
Client
|
|--------> HAProxy (127.0.0.1:16379)
|
|--------> TOR Instance (127.0.0.1:9000)
|
|--------> TOR Instance (127.0.0.1:9001)
--proxy socks
المعلمةإلى الأمر المحدد في المثال.multitor --init 2 -u debian-tor --socks-port 9000 --control-port 9900 --proxy socks
netstat -tapn | grep LISTEN | grep "tor\|haproxy\|polipo"
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 28976/tor
tcp 0 0 127.0.0.1:9001 0.0.0.0:* LISTEN 29039/tor
tcp 0 0 127.0.0.1:9900 0.0.0.0:* LISTEN 28976/tor
tcp 0 0 127.0.0.1:9901 0.0.0.0:* LISTEN 29039/tor
tcp 0 0 127.0.0.1:16379 0.0.0.0:* LISTEN 29104/haproxy
tcp 0 0 127.0.0.1:16380 0.0.0.0:* LISTEN 29104/haproxy
for i in $(seq 1 4) ; do \
printf "req %2d: " "$i" ; \
curl -k --location --socks5 127.0.0.1:16379 http://ipinfo.io/ip ; \
done
req 1: 5.254.79.66
req 2: 178.175.135.99
req 3: 5.254.79.66
req 4: 178.175.135.99
وكيل HTTP
:
Client
|
|--------> HAProxy (127.0.0.1:16379)
|
|--------> Polipo Instance (127.0.0.1:8000)
| |
| |---------> TOR Instance (127.0.0.1:9000)
|
|--------> Polipo Instance (127.0.0.1:8001)
|
|---------> TOR Instance (127.0.0.1:9001)
--proxy http
المعلمة إلى الأمر المحدد في المثال.multitor --init 2 -u debian-tor --socks-port 9000 --control-port 9900 --proxy http
netstat -tapn | grep LISTEN | grep "tor\|haproxy\|polipo"
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 32168/tor
tcp 0 0 127.0.0.1:9001 0.0.0.0:* LISTEN 32246/tor
tcp 0 0 127.0.0.1:9900 0.0.0.0:* LISTEN 32168/tor
tcp 0 0 127.0.0.1:9901 0.0.0.0:* LISTEN 32246/tor
tcp 0 0 127.0.0.1:16379 0.0.0.0:* LISTEN 32327/haproxy
tcp 0 0 127.0.0.1:16380 0.0.0.0:* LISTEN 32327/haproxy
tcp 0 0 127.0.0.1:8000 0.0.0.0:* LISTEN 32307/polipo
tcp 0 0 127.0.0.1:8001 0.0.0.0:* LISTEN 32320/polipo
for i in $(seq 1 4) ; do \
printf "req %2d: " "$i" ; \
curl -k --location --proxy 127.0.0.1:16379 http://ipinfo.io/ip ; \
done
req 1: 178.209.42.84
req 2: 185.100.85.61
req 3: 178.209.42.84
req 4: 185.100.85.61
يمكنك التحقق من ذلك على سبيل المثال في متصفحاتفايرفوكس عن طريق تثبيت الوظيفة الإضافية " Empty Cache Button by mvm " وإدخال http://myexternalip.com/website.
اصطلاح
المنفذيتم تعيينأرقام منافذ TOR بواسطة المستخدم باستخدام
--socks-port
المعلمة. بالإضافة إلى ذلك ، فإن المنفذ القياسي الذييستمع عليه HAProxy هو 16379 . تستخدم Polipo منافذ 1000أصغر من تلك التي تم تعيينها لـ TOR . واجهة إحصائيات HAProxy
إذا كنت ترغب في عرض إحصائيات حركة المرور ، فانتقل إلىhttp://127.0.0.1:16380/stats .
تسجيل الدخول: ha_admin
كلمة السر: تم إنشاؤها تلقائيا (انظر في
etc/haproxy.cfg
)واجهة التكوين Polipo
إذا كنت وات لعرض أو تغييرparams Polipo ، وصلت إلىhttp://127.0.0.1:8000/polipo/config(تذكر رقم المنفذ الصحيح).
البوابة
إذا كنت تقوم ببناء بوابة لاتصالات TOR ، فيمكنك وضع HAProxy على عنوان IP خارجي عن طريق تغيير
bind
التوجيه في haproxy-template.cfg :bind 0.0.0.0:16379 name proxy
مصادقة كلمة المرور يستخدم
Multitor كلمة مرور للمصادقة على منفذ التحكم. يتم إنشاء كلمة المرور تلقائيًا وتحتوي على 18 حرفًا عشوائيًا - يتم عرضها في التقرير النهائي بعد إنشاء العمليات الجديدة.
التسجيل
بعد تشغيل البرنامج النصي ،
log/
يتم إنشاء الدليل وفيه الملفات التالية مع السجلات:<script_name>.<date>.log
-_logger()
يتم حفظ جميع المكالمات وظيفة في ذلكstdout.log
- يتم كتابة الإخراج القياسي وأخطاء من_init_cmd()
وظيفة أخرى في ذلك
بنية المشروع
|-- LICENSE.md # GNU GENERAL PUBLIC LICENSE, Version 3, 29 June 2007
|-- README.md # this simple documentation
|-- CONTRIBUTING.md # principles of project support
|-- .gitignore # ignore untracked files
|-- .travis.yml # continuous integration with Travis CI
|-- setup.sh # install multitor on the system
|-- bin
|-- multitor # main script (init)
|-- doc # includes documentation, images and manuals
|-- man8
|-- multitor.8 # man page for multitor
|-- etc # contains configuration files
|-- lib # libraries, external functions
|-- log # contains logs, created after init
|-- src # includes external project files
|-- helpers # contains core functions
|-- import # appends the contents of the lib directory
|-- __init__ # contains the __main__ function
|-- settings # contains multitor settings
|-- templates # contains examples and template files
|-- haproxy-template.cfg # example of HAProxy configuration
|-- polipo-template.cfg # example of Polipo configuration
Commentaires
Enregistrer un commentaire