From 7f573a72f657c861dbf729c8e6ade3444dfaa249 Mon Sep 17 00:00:00 2001 From: lymanjre <125398461+lymanjre@users.noreply.github.com> Date: Tue, 17 Dec 2024 07:53:17 -0500 Subject: [PATCH] Update and rename How-to-use-HiddifyCli-in-OpenWrt.fa.md to How-to-use-HiddifyCli-on-OpenWrt.fa.md --- .../How-to-use-HiddifyCli-in-OpenWrt.fa.md | 393 ------------------ .../How-to-use-HiddifyCli-on-OpenWrt.fa.md | 168 ++++++++ 2 files changed, 168 insertions(+), 393 deletions(-) delete mode 100644 docs/app/How-to-use-HiddifyCli-in-OpenWrt.fa.md create mode 100644 docs/app/How-to-use-HiddifyCli-on-OpenWrt.fa.md diff --git a/docs/app/How-to-use-HiddifyCli-in-OpenWrt.fa.md b/docs/app/How-to-use-HiddifyCli-in-OpenWrt.fa.md deleted file mode 100644 index 5fbb58343..000000000 --- a/docs/app/How-to-use-HiddifyCli-in-OpenWrt.fa.md +++ /dev/null @@ -1,393 +0,0 @@ ---- -title: آموزش کامل نصب و راه‌اندازی HiddifyCli در سیستم‌عامل OpenWrt ---- - - -### آموزش کامل نصب و راه‌اندازی HiddifyCli در سیستم‌عامل OpenWrt - -برای نصب **HiddifyCli** در سیستم‌عامل OpenWrt، تمام مراحل زیر را به ترتیب انجام دهید. این آموزش شامل دانلود، استخراج، نصب و پیکربندی کامل است. - ---- -#### 1. **دانلود فایل HiddifyCli** -برای دانلود نسخه مناسب معماری روتر، ابتدا از دستور زیر برای دانلود مستقیم فایل استفاده کنید: -
- ```bash - wget -O /tmp/HiddifyCli.tar.gz https://github.com/hiddify/hiddify-core/releases/download/{نسخه_مناسب}/HiddifyCli-{معماری}.tar.gz - ``` -
- **توضیح:** - - - `{نسخه_مناسب}` را با نسخه مورد نظر جایگزین کنید (مثلاً `v1.0.0`). - - `{معماری}` را با معماری روتر خود جایگزین کنید (مثلاً `mips`, `arm`, یا `x86_64`). - ---- - -#### 2. **استخراج فایل** -پس از دانلود، فایل را با دستور زیر استخراج کنید: - -
-```bash -tar -xvzf /tmp/HiddifyCli.tar.gz -C /tmp -``` -
-**توضیحات دستور:** -- `x-` برای استخراج فایل. -- `v-` برای نمایش جزئیات فرآیند. -- `z-` برای باز کردن فایل‌های فشرده gzip. -- `f-` برای مشخص کردن نام فایل. -- `tmp/` مسیری است که فایل در آن استخراج می‌شود (می‌توانید مسیر دلخواه خود را جایگزین کنید). - ---- - -#### 3. **انتقال فایل اجرایی به مسیر مناسب** -فایل اجرایی `HiddifyCli` را به مسیر `/usr/bin/` منتقل کنید: - -
-```bash -mv /tmp/HiddifyCli /usr/bin/ -``` -
- ---- - -#### 4. **تنظیم مجوز اجرا** -برای فعال کردن قابلیت اجرا برای فایل، دستور زیر را وارد کنید: - -
-```bash -chmod +x /usr/bin/HiddifyCli -``` -
- ---- - -#### 5. **ساخت فایل راه‌اندازی (Init Script)** -برای ایجاد سرویس خودکار: -1. یک فایل در مسیر `/etc/init.d/` با نام `HiddifyCli` ایجاد کنید: - -
- ```bash - touch /etc/init.d/HiddifyCli - ``` -
- -3. فایل را با محتوای زیر پر کنید: - - -
- ```bash - #!/bin/sh /etc/rc.common - START=91 - USE_PROCD=1 - - start_service() { - procd_open_instance - procd_set_param command /usr/bin/HiddifyCli run -c /root/config.conf - procd_set_param stdout 1 - procd_set_param stderr 1 - procd_set_param respawn - procd_close_instance - } - ``` -
-4. مجوز فایل را تنظیم کنید: - - -
- ```bash - chmod 755 /etc/init.d/HiddifyCli - ``` -
- ---- - -#### 6. **فعال‌سازی و اجرای سرویس** -دستورات زیر را برای فعال‌سازی و راه‌اندازی سرویس اجرا کنید: - -
-```bash -service HiddifyCli enable -service HiddifyCli start -``` -
- ---- - -#### 7. **تنظیم کانفیگ** -1. **استخراج کانفیگ از اپ دسکتاپ هیدیفای:** - - - تنظیمات دلخواه را در اپلیکیشن انجام دهید. - - کانفیگ را استخراج کرده و در یک فایل متنی ذخیره کنید. - - پسوند فایل را به `conf.` تغییر دهید (مثلاً `config.conf`). - - -2. **فایل کانفیگ را به مسیر `/root/` در روتر انتقال دهید:** - -
- ```bash - mv config.conf /root/ - ``` -
- ---- - -#### 8. **راه‌اندازی مجدد روتر** -روتر را ری‌استارت کنید تا تغییرات اعمال شوند: - -
-```bash -reboot -``` -
- -پس از راه‌اندازی مجدد، سرویس HiddifyCli فعال شده و **Socks5 Proxy** در آدرس زیر در دسترس خواهد بود: - -
-```plaintext -127.0.0.1:12334 -``` -
- ---- - -### نکات تکمیلی: -- برای بررسی معماری روتر، دستور زیر را اجرا کنید: - -
- ```bash - uname -m - ``` -
- -- اگر در هر مرحله مشکلی پیش آمد، می‌توانید با دستور زیر لاگ‌های سرویس را بررسی کنید: - -
- ```bash - logread | grep HiddifyCli - ``` -
- ---- - -??? success "استفاده از اینترنت آزاد در کلاینت‌های پشت روتر" - برای استفاده از اینترنت آزاد در کلاینت‌های پشت روتر به دو روش می‌توان اقدام نمود: - - ??? info " استفاده از پروکسی برای کلاینت‌های پشت روتر در OpenWrt - - اگر می‌خواهید کلاینت‌های متصل به روتر (مانند لپ‌تاپ، گوشی و سایر دستگاه‌ها) از پروکسی **127.0.0.1:12334** استفاده کنند، می‌توانید تنظیمات زیر را اعمال کنید تا این پروکسی به عنوان سرویس مرکزی برای کل شبکه قابل دسترسی باشد. - - --- - - #### 1. **فعال کردن Port Forwarding در روتر**" - پروکسی **127.0.0.1:2334** که روی روتر تنظیم شده، به صورت پیش‌فرض فقط در خود روتر قابل استفاده است. برای دسترسی کلاینت‌ها، این پورت باید روی آدرس LAN روتر نیز باز شود. - - 1. **اضافه کردن قانون NAT:** - برای این کار، باید ترافیک ورودی روی این پورت را به پروکسی هدایت کنید: -
- ```bash - iptables -t nat -A PREROUTING -i br-lan -p tcp --dport 2334 -j DNAT --to-destination 127.0.0.1:12334 - iptables -A FORWARD -i br-lan -p tcp --dport 12334 -j ACCEPT - ``` -
- **توضیح:** - - `br-lan`: اینترفیس LAN روتر است. - - `2334`: پورت پروکسی HiddifyCli. - - 2. **ذخیره قوانین Iptables:** - برای ذخیره قوانین و اعمال آنها پس از هر راه‌اندازی مجدد، دستور زیر را اجرا کنید: - ```bash - service firewall restart - ``` - - --- - - #### 2. **اعلام تنظیمات به کلاینت‌ها** - دستگاه‌های متصل به روتر باید تنظیمات مربوط به **پروکسی دستی** را انجام دهند. در کلاینت‌ها، مراحل زیر را دنبال کنید: - - ##### **برای ویندوز:** - 1. وارد بخش **Settings** شوید. - 2. به **Network & Internet** > **Proxy** بروید. - 3. در قسمت **Manual proxy setup**: - - **Address** را روی آی‌پی LAN روتر (معمولاً `192.168.1.1`) تنظیم کنید. - - **Port** را `2334` قرار دهید. - 4. تنظیمات را ذخیره کنید. - - ##### **برای اندروید:** - 1. به تنظیمات شبکه Wi-Fi متصل شوید. - 2. روی شبکه Wi-Fi فعلی کلیک کرده و **Modify Network** یا **Advanced Settings** را باز کنید. - 3. **Proxy** را روی **Manual** تنظیم کنید: - - **Proxy hostname**: آی‌پی LAN روتر (مثلاً `192.168.1.1`). - - **Proxy port**: `2334`. - 4. تنظیمات را ذخیره کنید. - - ##### **برای iOS:** - 1. به تنظیمات Wi-Fi بروید. - 2. روی شبکه متصل شده کلیک کنید و **Configure Proxy** را روی **Manual** قرار دهید. - 3. آی‌پی روتر را در **Server** و پورت را `2334` وارد کنید. - 4. تنظیمات را ذخیره کنید. - - ##### **برای مک‌اواس (macOS):** - 1. به **System Preferences** > **Network** بروید. - 2. روی اتصال فعلی خود کلیک کرده و **Advanced** را انتخاب کنید. - 3. در تب **Proxies**، گزینه **SOCKS Proxy** را فعال کنید و: - - **SOCKS Proxy Server**: آی‌پی روتر (مثلاً `192.168.1.1`). - - **Port**: `2334`. - 4. تنظیمات را ذخیره کنید. - - --- - - #### 3. **تست اتصال کلاینت‌ها** - برای اطمینان از عملکرد پروکسی: - - مرورگر کلاینت را باز کرده و سعی کنید به سایتی که بدون پروکسی فیلتر است متصل شوید. - - اگر اتصال برقرار شد، تنظیمات به درستی اعمال شده است. - - --- - - #### 4. **نکات تکمیلی** - - اگر کلاینت‌ها نیاز به استفاده خودکار از پروکسی دارند، می‌توانید از یک فایل **PAC (Proxy Auto-Configuration)** استفاده کنید و آن را در تنظیمات کلاینت‌ها معرفی کنید. - - آدرس PAC: - ``` - http://192.168.1.1/proxy.pac - ``` - فایل PAC می‌تواند مسیرها و استثنائات دلخواهی را برای استفاده از پروکسی تعریف کند. - - - - - - - - ??? info "2. راه‌اندازی روتینگ در OpenWrt برای عبور تمام ترافیک از **Socks5 Proxy**" - - برای هدایت تمام ترافیک اینترنت از طریق **Socks5 Proxy**، باید از ابزارهایی مانند `redsocks` یا `iptables` استفاده کنید. مراحل زیر را دنبال کنید: - - --- - - ### 1. **نصب ابزارهای مورد نیاز** - ابتدا ابزارهای لازم را نصب کنید. در OpenWrt، `redsocks` برای روتینگ ترافیک از طریق **Socks5 Proxy** استفاده می‌شود. - - 1. به‌روزرسانی لیست بسته‌ها: - ```bash - opkg update - ``` - - 2. نصب `redsocks` و سایر ابزارها: - ```bash - opkg install redsocks iptables-mod-nat-extra iptables-mod-tproxy - ``` - - --- - - ### 2. **پیکربندی Redsocks** - فایل پیکربندی `redsocks` را در مسیر `/etc/redsocks.conf` ایجاد کنید: - ```bash - nano /etc/redsocks.conf - ``` - - و محتوای زیر را در آن قرار دهید: - ```plaintext - base { - log_debug = off; - log_info = on; - log = "syslog:daemon"; - daemon = on; - user = "nobody"; - group = "nogroup"; - redirector = iptables; - } - - redsocks { - local_ip = 127.0.0.1; - local_port = 12345; # پورت محلی برای ترافیک پروکسی - ip = 127.0.0.1; # آدرس سرور Socks5 - port = 2334; # پورت سرور Socks5 - type = socks5; - } - ``` - - **توضیح:** - - `local_ip` و `local_port`: آدرس و پورتی که Redsocks به آن گوش می‌دهد. - - `ip` و `port`: آدرس و پورت **Socks5 Proxy**. - - --- - - ### 3. **تنظیمات iptables برای روتینگ** - برای هدایت ترافیک به Redsocks، قوانین `iptables` را اضافه کنید: - - 1. یک اسکریپت با نام `redsocks-routing` در `/etc/init.d/` ایجاد کنید: - ```bash - touch /etc/init.d/redsocks-routing - chmod +x /etc/init.d/redsocks-routing - ``` - - 2. اسکریپت را با محتوای زیر پر کنید: - ```bash - #!/bin/sh /etc/rc.common - START=99 - STOP=10 - - start() { - iptables -t nat -N REDSOCKS - iptables -t nat -A REDSOCKS -d 0.0.0.0/8 -j RETURN - iptables -t nat -A REDSOCKS -d 127.0.0.0/8 -j RETURN - iptables -t nat -A REDSOCKS -d 192.168.0.0/16 -j RETURN - iptables -t nat -A REDSOCKS -d 10.0.0.0/8 -j RETURN - iptables -t nat -A REDSOCKS -d 172.16.0.0/12 -j RETURN - iptables -t nat -A REDSOCKS -p tcp -j REDIRECT --to-ports 12345 - - iptables -t nat -A OUTPUT -p tcp -j REDSOCKS - iptables -t nat -A PREROUTING -p tcp -j REDSOCKS - } - - stop() { - iptables -t nat -F REDSOCKS - iptables -t nat -X REDSOCKS - } - ``` - - 3. اسکریپت را فعال و اجرا کنید: - ```bash - service redsocks-routing enable - service redsocks-routing start - ``` - - --- - - ### 4. **فعال‌سازی Redsocks** - برای فعال‌سازی و اجرای خودکار Redsocks: - ```bash - service redsocks enable - service redsocks start - ``` - - --- - - ### 5. **بازنشانی روتر** - برای اعمال تغییرات، روتر را ری‌استارت کنید: - ```bash - reboot - ``` - - --- - - ### 6. **بررسی عملکرد** - برای بررسی وضعیت و لاگ‌ها: - - وضعیت `redsocks`: - ```bash - ps | grep redsocks - ``` - - لاگ‌های سیستم: - ```bash - logread | grep redsocks - ``` - - --- - - ### نتیجه: - پس از اجرای این تنظیمات: - - تمام ترافیک TCP از طریق **Socks5 Proxy** عبور می‌کند. - - ترافیک شبکه‌های داخلی (`192.168.0.0/16`, `10.0.0.0/8`) و آدرس‌های محلی از پروکسی عبور نمی‌کنند. - - **نکته:** اگر به ترافیک UDP نیز نیاز دارید، باید از ابزارهای دیگری مانند `dns2socks` یا تنظیمات اضافی `redsocks` استفاده کنید. - - - diff --git a/docs/app/How-to-use-HiddifyCli-on-OpenWrt.fa.md b/docs/app/How-to-use-HiddifyCli-on-OpenWrt.fa.md new file mode 100644 index 000000000..25ca64708 --- /dev/null +++ b/docs/app/How-to-use-HiddifyCli-on-OpenWrt.fa.md @@ -0,0 +1,168 @@ +--- +title: آموزش کامل نصب و راه‌اندازی HiddifyCli در سیستم‌عامل OpenWrt +--- + + +### آموزش کامل نصب و راه‌اندازی HiddifyCli در سیستم‌عامل OpenWrt + +برای نصب **HiddifyCli** در سیستم‌عامل OpenWrt، تمام مراحل زیر را به ترتیب انجام دهید. این آموزش شامل دانلود، استخراج، نصب و پیکربندی کامل است. + +--- +#### 1. **دانلود فایل HiddifyCli** +برای دانلود نسخه مناسب معماری روتر، ابتدا از دستور زیر برای دانلود مستقیم فایل استفاده کنید: +
+ ```bash + wget -O /tmp/HiddifyCli.tar.gz https://github.com/hiddify/hiddify-core/releases/download/{نسخه_مناسب}/HiddifyCli-{معماری}.tar.gz + ``` +
+ **توضیح:** + + - `{نسخه_مناسب}` را با نسخه مورد نظر جایگزین کنید (مثلاً `v1.0.0`). + - `{معماری}` را با معماری روتر خود جایگزین کنید (مثلاً `mips`, `arm`, یا `x86_64`). + +--- + +#### 2. **استخراج فایل** +پس از دانلود، فایل را با دستور زیر استخراج کنید: + +
+```bash +tar -xvzf /tmp/HiddifyCli.tar.gz -C /tmp +``` +
+**توضیحات دستور:** +- `x-` برای استخراج فایل. +- `v-` برای نمایش جزئیات فرآیند. +- `z-` برای باز کردن فایل‌های فشرده gzip. +- `f-` برای مشخص کردن نام فایل. +- `tmp/` مسیری است که فایل در آن استخراج می‌شود (می‌توانید مسیر دلخواه خود را جایگزین کنید). + +--- + +#### 3. **انتقال فایل اجرایی به مسیر مناسب** +فایل اجرایی `HiddifyCli` را به مسیر `/usr/bin/` منتقل کنید: + +
+```bash +mv /tmp/HiddifyCli /usr/bin/ +``` +
+ +--- + +#### 4. **تنظیم مجوز اجرا** +برای فعال کردن قابلیت اجرا برای فایل، دستور زیر را وارد کنید: + +
+```bash +chmod +x /usr/bin/HiddifyCli +``` +
+ +--- + +#### 5. **ساخت فایل راه‌اندازی (Init Script)** +برای ایجاد سرویس خودکار: +1. یک فایل در مسیر `/etc/init.d/` با نام `HiddifyCli` ایجاد کنید: + +
+ ```bash + touch /etc/init.d/HiddifyCli + ``` +
+ +3. فایل را با محتوای زیر پر کنید: + + +
+ ```bash + #!/bin/sh /etc/rc.common + START=91 + USE_PROCD=1 + + start_service() { + procd_open_instance + procd_set_param command /usr/bin/HiddifyCli run -c /root/config.conf + procd_set_param stdout 1 + procd_set_param stderr 1 + procd_set_param respawn + procd_close_instance + } + ``` +
+4. مجوز فایل را تنظیم کنید: + + +
+ ```bash + chmod 755 /etc/init.d/HiddifyCli + ``` +
+ +--- + +#### 6. **فعال‌سازی و اجرای سرویس** +دستورات زیر را برای فعال‌سازی و راه‌اندازی سرویس اجرا کنید: + +
+```bash +service HiddifyCli enable +service HiddifyCli start +``` +
+ +--- + +#### 7. **تنظیم کانفیگ** +1. **استخراج کانفیگ از اپ دسکتاپ هیدیفای:** + + - تنظیمات دلخواه را در اپلیکیشن انجام دهید. + - کانفیگ را استخراج کرده و در یک فایل متنی ذخیره کنید. + - پسوند فایل را به `conf.` تغییر دهید (مثلاً `config.conf`). + - +2. **فایل کانفیگ را به مسیر `/root/` در روتر انتقال دهید:** + +
+ ```bash + mv config.conf /root/ + ``` +
+ +--- + +#### 8. **راه‌اندازی مجدد روتر** +روتر را ری‌استارت کنید تا تغییرات اعمال شوند: + +
+```bash +reboot +``` +
+ +پس از راه‌اندازی مجدد، سرویس HiddifyCli فعال شده و **Socks5 Proxy** در آدرس زیر در دسترس خواهد بود: + +
+```plaintext +127.0.0.1:12334 +``` +
+ +--- + +### نکات تکمیلی: +- برای بررسی معماری روتر، دستور زیر را اجرا کنید: + +
+ ```bash + uname -m + ``` +
+ +- اگر در هر مرحله مشکلی پیش آمد، می‌توانید با دستور زیر لاگ‌های سرویس را بررسی کنید: + +
+ ```bash + logread | grep HiddifyCli + ``` +
+