ایجاد هاست و دامین onion با nginx و tor

دامنه onionدامنه onion یک پسوند دامنه سطح‌بالا است که دسترسی را به سرویس‌های پنهانی ناشناس از طریق شبکه تور ممکن می‌سازد. چنین آدرس‌هاییدی‌اِن‌اِس واقعی نیستند، اما با نصب نرم‌افزار پروکسی مناسب، برنامه‌های اینترنتی مانند مرورگرهای وب می‌توانند به سایت‌هایی با آدرس‌های .onion با ارسال درخواست از طریق شبکه سرور تور دسترسی پیدا کنند. هدف اصلی استفاده از چنین سیستمی این است ردیابی شخص ارائه‌دهندهٔ اطلاعات (برای مثال فروشنده) و شخصی که قصد دسترسی به آن را دارد (خریدار) را دشوار یا غیرممکن کند.گام اول:حداقل نیازمندی سخت افزاری برای نصب بر روی سیستم عامل CentOS7CPU - 1CoreRAM - 1GBHDD - 20GBگام دوم:دانلود و نصب سیستم عامل لینوکس CentOS7 نسخه مینیمال از اینجا(یا هر کجا)گام سوم:نصب پکیج هابروزرسانی سیستم عاملsudo yum update -yنصب ریپازیتوری epel-releasesudo yum install epel-release -yنصب انجینکس(nginx) و تور(tor)sudo yum install nginx tor -yگام چهارم:پیکربندی انجینکس (nginx)وب سرور nginx بصورت پیش فرض پورت 80 را برای دریافت و ارسال درخواست ها استفاده می کند، می خواهیم بجای پورت 80 از پورت 9000 استفاده کنیم، چون پورت 80 قرار است توسط تور استفاده شود.sudo sed -i 's/listen \+80 default_server/listen 9000 default_server/' /etc/nginx/nginx.conf sudo sed -i 's/listen \+\[\:\:\]\:80 default_server/listen [::]:9000 default_server/' /etc/nginx/nginx.confوب سرور nginx را ابتدا در استارت آپ قرار می دهیم تا با هر بار راه اندازی سیستم عامل اجرا شودsudo systemctl enable nginxبعد از اعمال تغییرات باید وب سرور nginx را مجدداً راه اندازی کنیمsudo systemctl restart nginxبرای مطلع شدن از وضعیت وب سرور nginx دستور زیر را وارد می کنیم، در صورت ظاهر شدن نوشته سبز رنگ active، از راه اندازی بدون ایراد nginx مطمئن می شویم.sudo systemctl status nginxگام پنجم:پیکربندی تور(tor)فایل موجود در مسیر زیر را باز کرده /etc/tor/torrcسپس بعد از عبارت #HiddenServicePort 22 127.0.0.1:22 #خط 83خط های زیر را اضافه می کنیم:HiddenServiceDir /var/lib/tor/hidden_service_01/ HiddenServicePort 80 127.0.0.1:9000توجه: برای راحتی کار، دستور زیر این کار را بصورت خودکار انجام می دهد.sudo sed -i 's/\#HiddenServicePort 22 127\.0\.0\.1\:22/#HiddenServicePort 22 127.0.0.1:22\n\nHiddenServiceDir \/var\/lib\/tor\/hidden_service_01\/\nHiddenServicePort 80 127.0.0.1:9000/' /etc/tor/torrcپیکربندی انجام شده بصورت پیش فرض با SELinux حالت (enforcing mode) سازگار نیست. این سرویس در اولین راه اندازی tor به درستی اجرا می شود، بعد از راه اندازی مجدد سرویس تور یا راه اندازی مجدد سیستم عامل دیگر شروع نمی شود. برای رفع این مشکل به پیشنهاد آقای مایکل این تنظیمات را اعمال می کنیم:sudo sed -i 's/User toranon/#User toranon/' /usr/share/tor/defaults-torrc sudo mkdir /etc/systemd/system/tor.service.d; sudo touch /etc/systemd/system/tor.service.d/override.conf echo -e '[Service]\nUser=toranon\nGroup=toranon\nPermissionsStartOnly=no\n' | sudo tee --append /etc/systemd/system/tor.service.d/override.confهمانند وب سرور nginx، تور(tor) را ابتدا در استارت آپ قرار می دهیم تا با هر بار راه اندازی سیستم عامل اجرا شود.sudo systemctl enable torبعد از اعمال تغییرات باید تور(tor) را مجدداً راه اندازی کنیمsudo systemctl restart torبرای مطلع شدن از وضعیت تور(tor) دستور زیر را وارد می کنیم، در صورت ظاهر شدن نوشته سبز رنگ active، از راه اندازی بدون ایراد تور مطمئن می شویم.sudo systemctl status torهم اکنوان آدرس دامنه onion ما در مسیر زیر داخل فایل hostname ایجاد شده است:/var/lib/tor/hidden_service_01/hostnameبرای مشاهده دامنه دستور زیر را وار می کنیم:sudo cat /var/lib/tor/hidden_service_01/hostnameنتیجه اجرای دستور چیزی شبیه به این خواهد بود:skqjtnyiv2dityzsovang3xyh7bphktkodu4pcmpenuu6oxr4mv6hbyd.onionواین دامنه شما می باشد.برای مشاهده دامنه این آدرس را در مرورگر تور وارد کنید، صفحه پیش فرض وب سرور nginx را مشاهده خواهید کرد.برگرفته و ترجمه شده از اینجا