نحوه راه اندازی فایروال با UFW در دبیان ۱۰

نحوه راه اندازی فایروال با UFW در دبیان ۱۰

سعیده مهاجری

یک فایروال با کانفیگ مناسب یکی از مهمترین جنبه های امنیت کلی سیستم است. UFW یک جلوه ی کاربر پسند برای مدیریت قوانین فایروال iptables است. هدف اصلی آن آسانتر کردن مدیریت iptables یا همانطور که از نام آن مشخص است، ساده بودن است. در این مقاله با ما همراه باشید تا به شما عزیزان نحوه راه اندازی فایروال با UFW در Debian 10 را توضیح دهیم.

پیش نیارها:

فقط root یا کاربر با امتیازات sudo می تواند فایروال سیستم را مدیریت کند.

نصب UFW :

برای نصب بسته ufw دستور زیر را وارد کنید:

sudo apt updatesudo apt install ufw

بررسی وضعیت UFW :

UFW به طور پیش فرض غیرفعال است. با تایپ کردن دستور زیر می توانید وضعیت UFW را بررسی کنید:

sudo ufw status verbose

خروجی به شکل دستور زیر خواهد بود:

Status: inactive
اگر UFW فعال شود، خروجی مشابه تصویر زیر خواهد بود:

نحوه راه اندازی فایروال با UFW در Debian 10

سیاست های پیش فرض UFW :

به طور پیش فرض، UFW همه اتصالات ورودی را مسدود می کند و به همه اتصالات خروجی اجازه می دهد. این بدان معناست که هر کسی که سعی در دسترسی به سرور شما داشته باشد، نمی تواند متصل شود مگر اینکه به طور خاص پورت را باز کنید. برنامه ها و سرویس های در حال اجرا بر روی سرور قادر خواهند بود به دنیای خارج دسترسی داشته باشند. سیاست‌های پیش‌فرض در فایل /etc/default/ufw تعریف شده‌اند و با استفاده از دستور sudo ufw default <policy> <chain> قابل تغییر هستند. سیاست های فایروال پایه ای برای ایجاد قوانین پیچیده تر و تعریف شده توسط کاربر هستند. به طور کلی، سیاست های پیش فرض UFW نقطه شروع خوبی هستند.

پروفایل های برنامه :

اکثر برنامه ها با یک پروفایل برنامه ای که سرویس را توصیف می کند ارسال می شوند و شامل تنظیمات UFW هستند. پروفایل به طور خودکار در دایرکتوری نصب /etc/ufw/applications.d ایجاد می شود. با تایپ کردن با دستور زیر می توانید تمام پروفایل های برنامه موجود در سرور خود را لیست کنید:

sudo ufw utf --help
بسته به بسته های نصب شده روی سیستم شما، خروجی شبیه به دستورات زیر خواهد بود:
Available applications:
  DNS
  IMAP
  IMAPS
  OpenSSH
  POP3
  POP3S
  Postfix
  Postfix SMTPS
  Postfix Submission
  ...

برای یافتن اطلاعات بیشتر در مورد یک پروفایل خاص و قوانین شامل، از دستور app info و به دنبال آن نام پروفایل استفاده کنید. به عنوان مثال برای به دست آوردن اطلاعاتی درباره مشخصات OpenSSH که استفاده می کنید، از دستور زیر استفاده کنید:

sudo ufw app info OpenSSH
Profile: OpenSSH
Title: Secure shell server, an rshd replacement
Description: OpenSSH is a free implementation of the Secure Shell protocol.

Port:
  ۲۲/tcp

خروجی شامل نام پروفایل، عنوان، توضیحات و قوانین فایروال است.

مجاز به اتصالات SSH :

قبل از فعال کردن فایروال UFW، ابتدا باید اتصالات SSH ورودی را مجاز کنید. اگر به صورت ریموت به سرور خود متصل می شوید، اگر اجازه اتصال به SSH ورودی را ندهید، دیگر قادر به اتصال به سرور Debian خود نخواهید بود. برای کانفیگ فایروال UFW خود برای پذیرش اتصالات SSH، دستور زیر را اجرا کنید:

sudo ufw allow OpenSSH
Rules updated
Rules updated (v6)
اگر سرور SSH به درگاهی غیر از درگاه پیش‌فرض ۲۲  فراخوانی شود، باید آن پورت را باز کنید. به عنوان مثال، سرور ssh شما در پورت ۷۷۲۲ استفاده می کند، شما باید دستور زیر را اجرا کنید:
sudo ufw allow 7722/tcp

فعال کردن UFW :

اکنون که فایروال UFW کانفیگ شده است و به اتصالات SSH ورودی اجازه می دهد، آن را با اجرای دستور زیر فعال کنید:

sudo ufw enable
Command may disrupt existing ssh connections. Proceed with operation (y|n)? y
Firewall is active and enabled on system startup

به شما هشدار داده می شود که فعال کردن فایروال ممکن است اتصالات موجود در ssh را مختل کند. “y” را تایپ کرده و “Enter” را فشار دهید.

باز کردن پورت ها : 

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

باز کردن پورت ۸۰ – HTTP :

اتصالات HTTP را مجاز کنید:

sudo ufw allow http

به جای پروفایل http، می توانید از شماره پورت ۸۰ استفاده کنید:

sudo ufw allow 80/tcp

باز کردن پورت ۴۴۳ – HTTPS :

اتصالات HTTPS را مجاز کنید:

sudo ufw allow https

همچنین می توانید از شماره پورت ۴۴۳ استفاده کنید:

sudo ufw allow 443/tcp

باز کردن پورت ۸۰۸۰ :

اگر از Tomcat یا هر برنامه دیگری را که از پورت ۸۰۸۰ استفاده میکند، استفاده میکنید باید پورت را باز کنید:

sudo ufw allow 8080/tcp

باز کردن رنج پورت :

با استفاده از UFW، همچنین می توانید به محدوده پورت دسترسی داشته باشید. هنگام باز کردن دامنه، باید پروتکل پورت را مشخص کنید. به عنوان مثال، برای اجازه دادن پورت های ۷۱۰۰ تا ۷۲۰۰ در دو پروتکل tcp و udp، دستور زیر را اجرا کنید:

sudo ufw allow 7100:7200/tcpsudo ufw allow 7100:7200/udp

اجازه دادن به یک IP خاص :

برای اجازه دسترسی به تمام پورت ها از یک آدرس IP خاص، از دستور ufw allow from و سپس آن آدرس IP استفاده کنید:

sudo ufw allow from 64.63.62.61

اجازه دادن آدرس های IP خاص در پورت خاص :

برای اجازه دسترسی به یک پورت خاص، فرض کنید پورت ۲۲ از دستگاه کاری خود با آدرس IP 64.63.62.61، از دستور زیر استفاده کنید:
sudo ufw allow from 64.63.62.61 to any port 22

اجازه دادن به زیرشبکه ها :

روش اجازه دادن به اتصالات به یک زیرشبکه از آدرس های IP مشابه با استفاده از یک آدرس IP واحد است. تنها تفاوت این است که شما باید netmask را مشخص کنید. به عنوان مثال، اگر می‌خواهید دسترسی به آدرس‌های IP از ۱۹۲٫۱۶۸٫۱٫۱ تا ۱۹۲٫۱۶۸٫۱٫۲۵۴ در پورت ۳۳۶۰ (MySQL) دسترسی داشته باشید، می‌توانید از این دستور استفاده کنید:
sudo ufw allow from 192.168.1.0/24 to any port 3306

اجازه اتصال به یک کارت شبکه خاص :

برای اجازه دسترسی به یک پورت خاص، مثلاً پورت ۳۳۶۰ فقط به کارت شبکه eth2، از allow in on و نام کارت شبکه استفاده کنید:

sudo ufw allow in on eth2 to any port 3306

رد اتصالات :

خط مشی پیش‌فرض برای همه اتصالات ورودی روی deny تنظیم شده است، به این معنی که UFW همه اتصالات ورودی را مسدود می‌کند مگر اینکه اتصال را به طور خاص باز کنید. فرض کنید پورت های ۸۰ و ۴۴۳ را باز کرده اید و سرور شما از سوی شبکه ۲۳٫۲۴٫۲۵٫۰/۲۴ مورد حمله بدافزارها قرار گرفته است. برای رد کردن تمام اتصالات از ۲۳٫۲۴٫۲۵٫۰/۲۴، از دستور زیر استفاده کنید:
sudo ufw deny from 23.24.25.0/24

اگر فقط می خواهید دسترسی به پورت های ۸۰ و ۴۴۳ را از ۲۳٫۲۴٫۲۵٫۰/۲۴ رد کنید، از دستور زیر استفاده کنید:

sudo ufw deny from 23.24.25.0/24 to any port 80sudo ufw deny from 23.24.25.0/24 to any port 443
نوشتن قوانین deny همان نوشتن قوانین allow است. شما فقط باید به جای allow از کلمه کلیدی deny استفاده کنید.

حذف قوانین UFW :

دو روش مختلف برای حذف قوانین UFW وجود دارد. یکی با شماره قانون و دیگری با مشخص کردن قانون واقعی است. حذف قوانین UFW با شماره قانون ساده تر است، به خصوص اگر در UFW تازه کار هستید. برای حذف یک قانون با شماره آن، ابتدا باید شماره قانونی را که می خواهید حذف کنید پیدا کنید. برای انجام این کار، دستور زیر را اجرا کنید:

sudo ufw status numbered
Status: active

     To                         Action      From
     --                         ------      ----
[ ۱] ۲۲/tcp                     ALLOW IN    Anywhere
[ ۲] ۸۰/tcp                     ALLOW IN    Anywhere
[ ۳] ۸۰۸۰/tcp                   ALLOW IN    Anywhere

برای حذف قانون شماره ۳، قانونی که اجازه اتصال به پورت ۸۰۸۰ را می دهد، می توانید از دستور زیر استفاده کنید:

sudo ufw delete 3

روش دوم حذف یک قانون با مشخص کردن قانون واقعی است. به عنوان مثال ، اگر برای باز کردن پورت ۸۰۶۹ قانونی اضافه کرده اید، می توانید آن را با دستورات زیر حذف کنید:

sudo ufw delete allow 8069

غیرفعال کردن UFW :

اگر به هر دلیلی می‌خواهید UFW را متوقف کنید و تمام قوانین را غیرفعال کنید، دستور زیر را اجرا کنید:
sudo ufw disable
بعداً اگر می‌خواهید UTF را دوباره فعال کنید و همه قوانین را فعال کنید، فقط دستور زیر را تایپ کنید:
sudo ufw enable

ریست کردن UFW :

تنظیم مجدد UFW ،UFW را غیرفعال می کند و کلیه قوانین فعال را حذف می کند. اگر می خواهید همه تغییرات خود را برگردانید و دوباره شروع کنید ، این کار مفید است. برای بازنشانی UFW کافیست دستور زیر را تایپ کنید:

sudo ufw reset

جمع بندی :

شما یاد گرفته اید که چگونه فایروال UFW را روی دستگاه Debian 10 خود نصب و کانفیگ کنید.  اطمینان حاصل کنید که به تمام اتصالات ورودی که برای عملکرد صحیح سیستم شما ضروری هستند اجازه دهید و در عین حال تمام اتصالات غیر ضروری را محدود کنید

امیدواریم مطالب مورد پسند بوده و از آن بهره لازم را برده باشید. خوشحال میشویم نظرات و سوالات خود را در قسمت دیدگاه به اشتراک بگذارید و ما را در شتابان هاست همراهی کنید.😊

برچسب ها: دستورات لینوکس

ارسال دیدگاه جدید