۱. به‌روز‌رسانی‌های خودکار نرم‌افزار را به‌کار اندازید

یکی از مهم‌ترین چیزهایی که برای حفظ امنیت رله‌تان وجود دارد، نصب به‌روزرسانی‌های امنیتی به‌موقع و ترجیحاً خودکار است تا آن را فراموش نکنید. دستورالعمل‌ها را دنبال کنید تا به‌روزرسانی خودکار نرم‌افزار را برای سیستم‌عامل خود به‌کار اندازید.

۲. مخزن پروژهٔ Tor را پیکربندی کنید

پیکربندی مخزن بستهٔ پروژهٔ Tor برای Debian/Ubuntu توصیه شده و در درگاه پشتیبانی مستند شده است. لطفاً قبل از ادامه این دستورالعمل‌ها را دنبال کنید.

توجه: کاربران Ubuntu باید Tor را از مخزن پروژهٔ Tor دریافت کنند.

۳. Tor را نصب کنید

مطمئن شوید که پایگاه داده بسته‌ها را قبل از نصب بسته به‌روز کرده‌اید، سپس برای نصب آن apt را فراخوانی کنید:

# apt update
# apt install tor

۴. obfs4proxy را نصب کنید

On Debian, the obfs4proxy package is available in unstable, testing, and stable. On Ubuntu, bionic, cosmic, disco, eoan, and focal have the package. If you're running any of them, sudo apt-get install obfs4proxy should work.

If not, you can build it from source.

۵. فایل پیکربندی Tor خود که معمولاً در ‎/etc/tor/torrc قرار دارد را ویرایش کرده و محتوای آن را با این جایگزین کنید:

BridgeRelay 1

# «TODO1» را با درگاه Tor منتخب خود جایگزین کنید.
# این درگاه باید از بیرون دسترس‌پذیر باشد.
# از درگاه ۹۰۰۱ اجتناب کنید چون عموماً با Tor مرتبط است و سانسور کنندگان ممکن است اینترنت را برای این درگاه پویش (scan) کنند.
ORPort TODO1

ServerTransportPlugin obfs4 exec /usr/bin/obfs4proxy

# «TODO2» را با درگاه obfs4 منتخب خود جایگزین کنید.
# این درگاه باید از بیرون دسترس‌پذیر بوده و باید از درگاه مشخص‌شده برای ORPort متفاوت باشد.
# از درگاه ۹۰۰۱ اجتناب کنید چون عموماً با Tor مرتبط است و سانسور کنندگان ممکن است اینترنت را برای این درگاه پویش (scan) کنند.
ServerTransportListenAddr obfs4 0.0.0.0:TODO2

# درگاه ارتباط محلی بین Tor و obfs4. همیشه این را روی «auto» تنظیم کنید.
# «Ext» به معنای «تعمیم یافته» است، نه «بیرونی». سعی نکنید شمارهٔ درگاه خاصی را تنظیم کرده و یا روی 0.0.0.0 گوش کنید.
ExtORPort auto

# «<address@email.com>» را با نشانی ایمیل خود جایگزین کنید تا در صورت بروز مشکل بتوانیم با شما ارتباط برقرار کنیم.
# این انتخابی است ولی تشویق می‌شود.
اطلاعات مخاطب <address@email.com>

# یک نام مستعار مورد پسند برای پل خود انتخاب کنید. این کار اختیاری است.
Nickname PickANickname

فراموش نکنید تا گزینه‌های ORPort, ‏ServerTransportListenAddr,‏ ContactInfo, و Nickname را تغییر دهید.

Note that both Tor's OR port and its obfs4 port must be reachable. If your bridge is behind a firewall or NAT, make sure to open both ports. You can use our reachability test to see if your obfs4 port is reachable from the Internet.

(Optional) Configure systemd to allow obfs4 binding on privileged ports

If you decide to use a fixed obfs4 port smaller than 1024 (for example 80 or 443), you will need to configure systemd and give obfs4 CAP_NET_BIND_SERVICE capabilities to bind the port with a non-root user:

sudo setcap cap_net_bind_service=+ep /usr/bin/obfs4proxy

To work around systemd hardening, you will also need to edit and change the configuration.

Run the command:

sudo systemctl edit tor@.service tor@default.service

In the editor, enter the following text, then save and quit.

[Service]
NoNewPrivileges=no

In the second editor that appears, enter the same text, then save and quit.

[Service]
NoNewPrivileges=no

If everything worked correctly, you will now have two files /etc/systemd/system/tor@.service.d/override.conf and /etc/systemd/system/tor@default.service.d/override.conf containing the text you entered.

Now restart tor service:

sudo service tor restart

There is no need to run systemctl daemon-reload because systemctl edit does it automatically. For more details, see ticket 18356.

۶. Tor را دوباره راه‌اندازی کنید

tor را به‌کار انداخته و راه‌اندازی کنید:

# systemctl enable --now tor.service

یا اگر از پیش درحال اجرا بوده آن را دوباره راه‌اندازی کنید. تا پیکربندی‌ها اعمال شوند:

# systemctl restart tor.service

۷. رویدادنگار‌های خود را پایش کنید

برای تأیید اینکه پل شما بدون مشکل درحال اجرا است، باید چیزی شبیه به این را ببینید (معمولاً در ‎/var/log/syslog یا با اجرای ‎# journalctl -e -u tor@default):

[notice] Your Tor server's identity key fingerprint is '<NICKNAME> <FINGERPRINT>'
[notice] Your Tor bridge's hashed identity key fingerprint is '<NICKNAME> <HASHED FINGERPRINT>'
[notice] Registered server transport 'obfs4' at '[::]:46396'
[notice] Tor has successfully opened a circuit. Looks like client functionality is working.
[notice] Bootstrapped 100%: Done
[notice] Now checking whether ORPort <redacted>:3818 is reachable... (this may take up to 20 minutes -- look for log messages indicating success)
[notice] Self-testing indicates your ORPort is reachable from the outside. Excellent. Publishing server descriptor.

۸. نکات پایانی

اگر در راه‌اندازی پل خود مشکل دارید، به بخش راهنمای ما‏ نگاهی بیندازید. اگر پل شما درحال اجرا است، نکات پس از نصب‏ را وارسی کنید.