آموزش نصب فایروال UFW در اوبونتو 20.04 Ubuntu - وان سرور آکـادمی
آموزش نصب فایروال UFW در اوبونتو 20.04 Ubuntu
آموزش نصب فایروال UFW در اوبونتو 20.04 Ubuntu

آموزش نصب فایروال UFW در اوبونتو 20.04 Ubuntu

زمان تقریبی مطالعه: 5 دقیقه

آموزش نصب فایروال UFW در اوبونتو 20.04 Ubuntu

فایروال ابزاری برای نظارت و فیلتر کردن ترافیک شبکه ورودی و خروجی است. اوبونتو با یک ابزار پیکربندی فایروال به نام UFW کار می کند. UFW یک جلوی کاربرپسند برای مدیریت قوانین فایروال iptables است. هدف اصلی آن آسانتر کردن مدیریت فایروال است. در این مقاله آموزش نصب UFW برای پیکربندی و مدیریت فایروال در اوبونتو 20.04 ubuntu شرح داده شده است.

پیش نیازها

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

یک راز بزرگ درمورد 90 % هاستینگ های ایرانی، اورسل کردن بیش از حد است که باعث افت کیفیت سرورها میشود.

وان سرور با ارائه دسترسی های مختلف این امکان را به شما خواهد داد که تمامی منابع سرورتان را مدیریت و بررسی کنید و همچنین با ارائه گارانتی 100% برگشت وجه ریسک خرید شما را به %0 کاهش میدهد.

برای خرید سرور مجازی با گارانتی 100% بازگشت وجه کلیک کنید.

نصب فایروال UFW در اوبونتو 20.04 Ubuntu

UFW بخشی از نصب استاندارد اوبونتو 20.04 است و باید در سیستم شما نصب باشد. اگر به دلایلی نصب نشده است ، می توانید بسته را با تایپ کردن دستورات زیر نصب کنید:

sudo apt update
sudo apt install ufw

بررسی وضعیت UFW

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

sudo ufw status verbose

خروجی نشان می دهد که وضعیت فایروال غیرفعال است:

Status: inactive

اگر UFW فعال شود ، خروجی چیزی به شرح زیر خواهد یافت:

آموزش نصب فایروال UFW در اوبونتو 20.04 Ubuntu

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

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

سیاست های پیش فرض در پرونده /etc/default/ufw تعریف شده و می توانند با تغییر دستی پرونده یا با دستور sudo ufw default <policy> <chain> تغییر یابند.

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

پروفایل برنامه یک پرونده متنی با فرمت INI است که خدمات را شرح می دهد و شامل قوانین فایروال برای سرویس است. پروفایل های برنامه در حین نصب بسته در دایرکتوری /etc/ufw/applications.d ایجاد می شوند .

با تایپ کردن دستور زیر می توانید تمام پروفایل های برنامه موجود در سرور خود را لیست کنید:

sudo ufw app list

بسته به بسته های نصب شده روی سیستم شما ، خروجی شبیه به موارد زیر خواهد بود:

Available applications:
  Nginx Full
  Nginx HTTP
  Nginx HTTPS
  OpenSSH

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

sudo ufw app info 'Nginx Full'

خروجی نشان می دهد که پروفایل ‘Nginx Full’ پورت 80و 443 باز می کند.

خروجی:
Profile: Nginx Full
Title: Web Server (Nginx, HTTP + HTTPS)
Description: Small, but very powerful and efficient web server

Ports:
  80,443/tcp

همچنین می توانید پروفایل های دلخواه خود را برای برنامه های خود ایجاد کنید.

فعال کردن UFW

برای پیکربندی فایروال UFW خود برای اتصال به SSH ، دستور زیر را تایپ کنید:

sudo ufw allow ssh
خروجی:
Rules updated
Rules updated (v6)

اگر SSH روی پورتی بغیر از 22 کار می کند ، باید آن پورت را باز کنید.

به عنوان مثال ، اگر ssh شما روی پورت 7722 است، دستور زیر را وارد کنید تا اتصالات در آن پورت مجاز شود:

sudo ufw allow 7722/tcp

اکنون که دیوار آتش تنظیم شده است تا اتصالات 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 بزنید.

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

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

ufw allow port_number/protocol

در زیر چند روش در مورد چگونگی اجازه اتصال به HTTP وجود دارد.

اولین گزینه استفاده از نام سرویس است. UFW پرونده /etc/services و پورت و پروتکل سرویس مشخص شده را بررسی می کند:

sudo ufw allow http

همچنین می توانید شماره پورت و پروتکل را مشخص کنید:

sudo ufw allow 80/tcp

هنگامی که هیچ پروتکل داده نمی شود ، UFW قوانینی را برای هر دو tcpو ایجاد می کند udp.

گزینه دیگر استفاده از پروفایل برنامه است؛ در این حالت ، ‘Nginx HTTP’ :

sudo ufw allow 'Nginx HTTP'

UFW همچنین از روش دیگری برای تعیین پروتکل با استفاده از proto پشتیبانی می کند:

sudo ufw allow proto tcp to any port 80

محدوده پورت

UFW همچنین به شما امکان می دهد محدوده پورت را باز کنید. پورت های شروع و انتها توسط یک ( :) جدا می شوند ، و شما باید پروتکل را مشخص کنید ، یا tcpیا udpاست.

برای مثال، اگر شما می خواهید اجازه استفاده از پورت 7100 تا 7200در هر دو پروتکل tcpو udpرا بدهید، شما می توانید دستور زیر را اجرا کنید:

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

IP و پورت خاص

برای دسترسی به اتصالات در همه پورت ها از یک منبع IP خاص ، از from به دنبال آدرس منبع استفاده کنید.

در اینجا مثالی از لیست سفید کردن آدرس IP آورده شده است:

sudo ufw allow from 64.63.62.61

اگر می خواهید آدرس IP داده شده فقط به یک پورت خاص دسترسی پیدا کند ، از to any port و به دنبال آن شماره پورت استفاده کنید.

به عنوان مثال برای اجازه دسترسی به پورت22از یک دستگاه دارای آدرس IP 64.63.62.61، وارد کنید:

sudo ufw allow from 64.63.62.61 to any port 22

سابنت ها

روش اجازه به برقراری اتصال به یک سابنت همانند IP آدرس است . تنها تفاوت این است که شما باید netmask را مشخص کنید.

در مثال زیر، نشان میدهد که چگونه به آی پی آدرس ها از رنج192.168.1.1تا 192.168.1.254 در پورت 3360 (MySQL)اجازه دسترسی داده شود:

sudo ufw allow from 192.168.1.0/24 to any port 3306

کارت شبکه خاص

برای اجازه دادن به اتصالات در یک کارت شبکه خاص ، از in onبه دنبال نام کارت شبکه استفاده کنید:

sudo ufw allow in on eth2 to any port 3306

رد کردن اتصالات

خط مشی پیش فرض برای همه اتصالات ورودی deny تنظیم شده است ، و اگر آن را تغییر نداده اید ، UFW تمام اتصالات ورودی را مسدود می کند مگر اینکه شما به طور خاص اتصال را باز کنید.

نوشتن قوانین رد کردن همان کار نوشتن قوانین است. فقط به جای deny از کلمه allow استفاده باید کرد.

فرض کنیم شما پورت باز 80و 443 را باز کرده اید و سرور شما از 23.24.25.0/24 مورد حمله قرار گرفت. برای جلوگیری از اتصالات از طریق 23.24.25.0/24شما ، دستور زیر را اجرا می کنید:

sudo ufw deny from 23.24.25.0/24

اینجا یک مثال از عدم دسترسی به پورت 80و 443از 23.24.25.0/24را نشان میدهیم. شما می توانید از دستور زیر استفاده کنید:

sudo ufw deny proto tcp from 23.24.25.0/24 to any port 80,443

حذف قوانین UFW

دو روش مختلف برای حذف قوانین UFW توسط شماره رول و با تعیین رول وجود دارد.

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

sudo ufw status numbered
Status: active

     To                         Action      From
     --                         ------      ----
[ 1] 22/tcp                     ALLOW IN    Anywhere
[ 2] 80/tcp                     ALLOW IN    Anywhere
[ 3] 8080/tcp                   ALLOW IN    Anywhere

برای حذف شماره قانون 3، وارد کنید:

sudo ufw delete 3

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

sudo ufw delete allow 8069

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

اگر به هر دلیلی می خواهید UFW را متوقف کنید و کلیه قوانینی را که می توانید استفاده کنید غیرفعال کنید:

sudo ufw disable

بعداً اگر می خواهید UFW و کلیه قوانین را دوباره فعال کنید، فقط تایپ کنید:

sudo ufw enable

ریست کردن UFW

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

برای تنظیم مجدد UFW ، دستور زیر را تایپ کنید:

sudo ufw reset

نتیجه گیری

ما به شما نشان داده ایم که چگونه فایروال UFW را روی سرور Ubuntu 20.04 خود نصب و پیکربندی کنید. حتماً تمام اتصالات ورودی را که برای عملکرد صحیح سیستم شما ضروری است ، اجازه دهید ضمن اینکه تمام اتصالات غیر ضروری را محدود کنید.

برای اطلاعات بیشتر در مورد این موضوع ، به صفحه Man UFW مراجعه کنید .

5/5 - (7 امتیاز)