تو این مقاله میخوایم یاد بگیریم چطور یک وبسایت خیلی ساده که فقط شامل یک فایل index.html هست رو روی شبکه Tor راهاندازی کنیم.
توضیحاتی درباره تور (Tor) و نحوه کارش
Tor (مخفف The Onion Router) یک شبکهی غیرمتمرکز و رمزنگاری شدهست که ترافیک اینترنت شما رو از چندین سرور (یا نود) عبور میده تا هویتتون مخفی بمونه.
تو بستر Tor، شما میتونید وبسایتهایی ایجاد کنید که فقط از طریق مرورگر Tor قابل دسترسی هستن، و این سایتها دامنههایی با پسوند .onion دارند. این مدل وبسایتها تحت عنوان Hidden Service یا سرویس مخفی شناخته میشن و امنیت و ناشناس بودن بیشتری نسبت به اینترنت معمولی (clearnet) ارائه میدن.
چیزهایی که نیاز داریم
- یک سیستم لینوکسی که بتونیم روش پکیج Tor رو نصب کنیم.
- یک فایل ساده HTML به عنوان وبسایت.
نصب Tor
روی آرچ لینوکس (Arch Linux):
sudo pacman -S tor
روی دبیان و اوبونتو (Debian/Ubuntu):
sudo apt update
sudo apt install tor
روی فدورا (Fedora):
sudo dnf install tor
ساخت فایلهای وبسایت
یک دایرکتوری برای پروژه وبسایتتون بسازید:
mkdir mywebsite
cd mywebsite
داخل این پوشه یک فایل index.html ایجاد کنید و داخلش یک محتوای خیلی ساده بنویسید:
<h1>Hello, welcome to my website on Tor</h1>
فایل رو ذخیره کنید.
حالا برای تست اولیه میتونید یک سرور محلی راه بندازید:
python3 -m http.server 8080
اگر پروژهتون با Django یا Flask نوشته شده، همونطوری که قبلاً ران میکردید رانش کنید.
بعد برید به آدرس localhost:8080 توی مرورگر و ببینید که صفحهی HTML لود شده یا نه.
تنظیم کانفیگ Tor
حالا نوبتشه که Tor رو جوری کانفیگ کنیم که وبسایتمون رو به عنوان یک Hidden Service منتشر کنه.
فایل پیکربندی Tor رو باز کنید:
sudo vim /etc/tor/torrc
و این خطوط رو به انتهای فایل اضافه کنید:
HiddenServiceDir /var/lib/tor/my_hidden_service/
HiddenServicePort 80 127.0.0.1:8080
توضیح این تنظیمات:
- HiddenServiceDir: جایی که Tor اطلاعات مربوط به سرویس مخفی (مثل کلیدهای خصوصی و hostname) رو ذخیره میکنه.
- HiddenServicePort: پورت لوکال شما (8080) رو به پورت 80 در شبکهی Tor متصل میکنه. یعنی وقتی کسی با دامین .onion شما وصل شد، ترافیکش میاد روی localhost:8080.
ریستارت کردن سرویس Tor
بعد از تغییرات، باید سرویس Tor رو ریستارت کنید:
sudo systemctl restart tor
اگه خواستید وضعیتش رو چک کنید:
sudo systemctl status tor
دریافت آدرس .onion
بعد از ریستارت، Tor یه دامین .onion برای شما ساخته. برای دیدنش:
sudo cat /var/lib/tor/my_hidden_service/hostname
مثلاً خروجی چیزی شبیه این میشه:
6z4uoiz7nb5lakazz6sugelrpchqeztla76lindk3h73igqwwoxr3zyd.onion
این آدرس فقط از طریق مرورگر Tor قابل دسترسی هست!
نکات امنیتی و تفاوت این روش با سرورهای معمولی
- سرورهای Hidden Service نیازی به آیپی ثابت یا حتی قابل دیدن ندارن. حتی فایروالهای سختگیر هم جلوی دسترسی بهشون رو نمیگیرن.
- شما نیازی ندارید پورتهای خاصی رو در اینترنت باز کنید. فقط کافیه Tor بتونه به اینترنت متصل شه.
- کل هویت سرور شما (آیپی، مکان و...) برای بازدیدکنندهها مخفی میمونه.
- اما یادتون باشه: اگر روی همین سرور اطلاعات دیگهای (مثل اسکریپتهای آسیبپذیر یا اطلاعات لو دهنده) باشه، احتمال لو رفتن هویت وجود داره.
- حتماً سعی کنید سرور و فایلهاتون رو امن نگه دارید و فقط اطلاعات لازم رو به اشتراک بذارید.
شما میتونید یه نسخهی حرفهایتر هم بنویسید که با Nginx و Tor HiddenService بهتر و امنتر این کار رو انجام بدید!