پرش به محتویات

آموزش تنظیم فایروال سرور

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

فایروال چیست؟

فایروال (Firewall یا دیواره‌ی آتش) نرم‌افزار یا سخت‌افزاری است که تعیین می‌کند کدام ترافیک شبکه اجازه دارد به کامپیوتر یا سرور برسد و بقیه را مسدود می‌کند. اینجا فقط با فایروال نرم‌افزاری روی سرورهای لینوکسی سر و کار داریم.

نحوه‌ی کار فایروال

یکی از ابزارهای رایج فایروال در لینوکس iptables است. به این ابزار فهرستی از قانون‌ها (Rule) می‌دهید. هر قانون مشخص می‌کند کدام ترافیک (مثلا کدام پورت، یعنی «در» شماره‌داری که سرویس پشت آن منتظر اتصال است) اجازه‌ی عبور دارد و کدام مسدود می‌شود. هیدیفای از iptables استفاده می‌کند.

فایروال در پنل هیدیفای

هیدیفای می‌تواند فایروال سرور را برای شما مدیریت کند. وقتی این فایروال روشن است:

  • فقط پورت‌هایی که هیدیفای لازم دارد باز می‌مانند: SSH (پورت 22 و پورتی که سرور SSH شما واقعا از آن استفاده می‌کند)، 80، 443، 53 و همه‌ی پورت‌هایی که پروکسی‌های فعال شما استفاده می‌کنند (همان فهرست صفحه‌ی Public ports در پنل).
  • بقیه‌ی اتصال‌های ورودی مسدود می‌شوند.
  • پینگ (ICMP) همچنان مجاز است، پس هنوز می‌توانید تمیز بودن آیپی را تست کنید.
  • وقتی در پنل پورتی را عوض می‌کنید یا پروکسی‌ای را روشن و خاموش می‌کنید، هیدیفای هنگام اعمال تغییرات قانون‌های فایروال را خودش به‌روز می‌کند.

فایروال به طور پیش‌فرض خاموش است. پیشنهاد ما این است که آن را روشن کنید، چون حمله به سرور را سخت‌تر می‌کند.

برای روشن کردن آن:

  1. وارد پنل هیدیفای شوید.
  2. به تنظیمات ← تنظیمات عمومی بروید.
  3. گزینه‌ی 🛡️ فایروال را روشن کنید.
  4. ذخیره کنید و وقتی پنل خواست، تغییرات را اعمال کنید.

تنظیم فایروال در پنل (نسخه‌ی قدیمی)

قبل از روشن کردن

اگر روی همین سرور برنامه‌های دیگری دارید که پورت مخصوص خودشان را لازم دارند (مثلا یک پنل دیگر یا وب‌سرور)، اول پورت آن‌ها را مثل روش زیر دستی باز کنید. در غیر این صورت بعد از روشن شدن فایروال از کار می‌افتند.

باز کردن دستی یک پورت

این کار را فقط برای برنامه‌هایی انجام دهید که هیدیفای مدیریت‌شان نمی‌کند. هیدیفای پورت پروکسی‌های خودش را خودش باز می‌کند.

قبل از شروع، با SSH (روشی امن برای وارد کردن دستور روی سرور از راه دور) به سرور وصل شوید. اگر نمی‌دانید چطور، آموزش اتصال به سرور با SSH را ببینید. اگر منوی هیدیفای باز شد، Cancel (یا کلید Esc) را بزنید تا بسته شود. اگر منو هنوز روی صفحه بود، clear را تایپ کنید و Enter بزنید.

  1. این دستور را روی سرور و از طریق SSH اجرا کنید. این مثال پورت TCP شماره‌ی 1234 را باز می‌کند. به جای 1234 شماره‌ی پورتی را که لازم دارید بنویسید:

    iptables -I INPUT -p tcp --dport 1234 -j ACCEPT
    
اگر برنامه از UDP استفاده می‌کند، همین دستور را با `-p udp` به جای `-p tcp` اجرا کنید. اگر سرور شما IPv6 دارد، همین دستور را یک بار دیگر با `ip6tables` به جای `iptables` اجرا کنید.
  1. بررسی کنید قانون اضافه شده باشد:

    iptables -L INPUT -n --line-numbers
    

    باید خطی با ACCEPT و dpt:1234 (شماره‌ی پورت شما) ببینید.

  2. قانون‌ها را ذخیره کنید تا بعد از ریبوت هم باقی بمانند:

    netfilter-persistent save
    

    اگر پیام داد این دستور پیدا نشد، با apt install iptables-persistent آن را نصب کنید و دوباره اجرا کنید.

بستن پینگ (اختیاری)

قانون‌های فایروال هیدیفای همیشه اجازه‌ی پینگ را می‌دهند. بهتر است همین طور بماند، چون پینگ به شما کمک می‌کند بفهمید سرور در دسترس است یا نه. اگر باز هم می‌خواهید پینگ را ببندید، این دستور را روی سرور و از طریق SSH اجرا کنید:

iptables -I INPUT -p icmp -j DROP

برای باز کردن دوباره‌ی پینگ، همان قانون را حذف کنید:

iptables -D INPUT -p icmp -j DROP

یادتان باشد تا وقتی پینگ بسته است، تست‌های آنلاین پینگ جواب نمی‌دهند. به جای آن از تست TCP روی پورت 443 استفاده کنید.

عیب‌یابی

  • بعد از روشن کردن فایروال نمی‌توانید با SSH وصل شوید: هیدیفای هنگام اعمال قانون‌های فایروال، پورت 22 و پورتی را که سرور SSH در آن لحظه استفاده می‌کند باز می‌کند. اگر بعد از آن پورت SSH را عوض کرده‌اید، تنظیمات پنل را دوباره اعمال کنید، یا از کنسول وب سرویس‌دهنده‌ی سرور وارد شوید و دستور hiddify apply را اجرا کنید.
  • برنامه‌ی دیگری روی سرور از کار افتاده: پورت آن بسته شده است. آن را مثل روش بالا دستی باز کنید.
  • پورتی که دستی باز کرده بودید بعد از ریبوت دوباره بسته شده: قانون‌ها را ذخیره نکرده‌اید. دستور netfilter-persistent save را اجرا کنید.

اخرین بروزرسانی: 6 نوامبر 2026

نظرات