جستجو برای:
سبد خرید 0
  • صفحه اصلی
  • دوره‌های آموزشی
  • وبلاگ
  • درباره ما
  • قوانین و مقررات
  • همکاری با ما
  • تماس با ما
محتوای باز
ورود
[suncode_otp_login_form]
گذرواژه خود را فراموش کرده اید؟
عضویت
[suncode_otp_registration_form]
  • خانه
  • کتاب آنلاین
  • درباره سایت
  • درباره لوگو
  • تماس با ما
محتوای باز
  • صفحه اصلی
  • دوره‌های آموزشی
  • وبلاگ
  • درباره ما
  • قوانین و مقررات
  • همکاری با ما
  • تماس با ما
شروع کنید
آخرین اطلاعیه ها
لطفا برای نمایش اطلاعیه ها وارد شوید
0
[wcas-search-form]

استفاده از gufw و ufw برای پیکربندی فایروال اوبونتو

10 خرداد 1401
ارسال شده توسط فرشید نوتاش حقیقت
اوبونتو، گنو/لینوکس

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

مروری بر gufw و ufw

همراه اوبونتو بسته‌ای به نام ufw است که سرنام Uncomplicated Firewall است. این بسته یک رابط خط فرمان برای مدیریت و پیکربندی قوانین فایروال مبتنی بر iptables Netfilter ارائه می‌دهد. ابزار gufw یک رابط گرافیکی کاربرپسند برای ufw فراهم می‌کند که مدیریت فایروال را بدون نیاز به صدور فرمان‌های ufw در خط فرمان ممکن می‌سازد.

نصب gufw در اوبونتو

در حالی که ufw به طور پیشفرض بر روی اوبونتو نصب شده است، بسته gufw اینگونه نیست. بنابراین برای نصب gufw، یک پنجره ترمینال (Ctrl-Alt-T) را باز کنید و 6فرمان زیر را در اعلان حاصل وارد کنید:

# apt install gufw

اجرا و فعالسازی gufw

پس از نصب، gufw را با فشار دادن Alt-F2 در دسکتاپ گنوم و وارد کردن gufw در کادر متنی دستور Run راه اندازی کنید. همانطور که در تصویر نشان داده شده است، هنگامی که برای اولین بار فراخوانی می‌شود، احتمالا فایروال غیرفعال می‌شود.

برای فعال کردن فایروال، سوئیچ وضعیت (A) را به موقعیت روشن ببرید. به‌طور پیش‌فرض، پانل اصلی (D) صفحه اصلی gufw را نشان می‌دهد که حاوی اطلاعات اولیه درباره ابزار است. انتخاب گزینه‌ها از ردیف دکمه‌ها (C) اطلاعات نمایش داده شده در پنل را تغییر می‌دهد. برای مثال، دکمه Rules را برای افزودن، حذف و مشاهده قوانین انتخاب کنید.

ابزار gufw با مجموعه کوچکی از پروفایل‌های از پیش تنظیم شده برای محل کار، خانه و محیط های عمومی ارائه شده است. برای تغییر پروفایل و مشاهده تنظیمات کافیست از منوی (B) Profile را انتخاب کنید. برای تغییر پروفایل موجود، آن را از منو انتخاب کنید و از منوهای Incoming و Outgoing برای تغییر انتخاب‌ها استفاده نمایید. برای پیکربندی قوانین خاص، صفحه Rules را نمایش دهید و قوانین را در صورت نیاز اضافه، حذف و اصلاح کنید. سپس این موارد در پروفایل انتخابی فعلی اعمال می‌شود.

پروفایل انتخاب شده در حال حاضر دیکته می‌کند که چگونه فایروال در غیاب قوانین خط مشی خاصی، ترافیک را مدیریت کند. به عنوان مثال، پروفایل Home به طور پیش‌فرض به گونه‌ای پیکربندی شده است که تمام ترافیک ورودی را رد کند و به همه ترافیک خروجی اجازه دهد. این تنظیمات خط مشی پیش‌فرض با استفاده از منوهای Incoming: و Outgoing: (E) تغییر می‌کنند.

استثناهای خط مشی پیشفرض از طریق ایجاد قوانین اضافی تعریف می‌شوند. برای مثال، با پروفایل Home که ترافیک ورودی را رد می‌کند، باید قوانینی اضافه شود تا انواع خاصی از اتصالات ورودی قابل قبول را فعال کند. از چنین قوانینی در جامعه امنیتی به عنوان لیست سفید یاد می‌شود.

از طرف دیگر، اگر خط مشی ورودی به Allow all traffic تغییر داده شود، تمام ترافیک ورودی مجاز خواهد بود مگر اینکه قوانینی برای انواع خاصی از اتصالات ایجاد شده باشد که باید مسدود شوند. این قوانین، بدون تعجب، به عنوان یک لیست سیاه نامیده می‌شوند. رویکرد لیست سیاه/لیست سفید به طور یکسان برای اتصالات ورودی و خروجی اعمال می‌شود.

ایجاد پروفایل جدید

در حالی که امکان تغییر پروفایل‌های از پیش تعریف شده وجود دارد، معمولا ایجاد یک یا چند پروفایل برای پیکربندی فایروال برای نیازهای خاص شما منطقی تر خواهد بود. پروفایل‌های جدید با انتخاب Edit -> Preferences… ایجاد می شوند تا پنجره نشان داده شده  تصویر زیر نمایش داده شود:

برای افزودن یک پروفایل جدید، روی دکمه «+» واقع در زیر لیست پروفایل‌ها کلیک کنید. پروفایل جدیدی به نام Profile 1 در لیست ظاهر می‌شود. برای دادن نام توصیفی‌تر به پروفایل، روی ورودی دوبار کلیک کنید تا وارد حالت ویرایش شوید و نام جدیدی وارد کنید:

پس از ایجاد و نامگذاری پروفایل، روی دکمه Close کلیک کنید تا به صفحه اصلی بازگردید و آن را از منوی Profile انتخاب کنید:

افزودن قوانین فایروال از پیش تنظیم شده

قوانین جدید با کلیک بر روی دکمه Rules و سپس دکمه + واقع در پایین پانل قوانین همانطور که در تصویر مشخص شده است ایجاد می‌شود:

پس از انتخاب، پنجره نشان داده شده در تصویر با انتخاب زبانه Preconfigured ظاهر می‌شود.

پانل Preconfigured اجازه می‌دهد تا قوانینی انتخاب شوند که با برنامه‌ها و خدمات خاص مطابقت داشته باشند. برای مثال، ترافیک ابزارهایی مانند Skype و BitTorrent را می‌توان با انتخاب ورودی از منوی برنامه و منوهای Policy و Direction برای محدود کردن یا مجاز کردن ترافیک، فعال کرد.

برای کمک به یافتن یک برنامه یا سرویس خاص، از منوهای Category و Subcategory برای فیلتر کردن مواردی که در منوی برنامه ظاهر می‌شوند استفاده کنید. همچنین، به سادگی نام برنامه یا سرویس را در قسمت Application Filter وارد کنید تا آیتم‌های منو فیلتر شوند:

منوی Policy گزینه‌های زیر را برای کنترل ترافیک برنامه یا سرویس انتخابی ارائه می‌دهد:

  • Allow: تردد در پورت مجاز است.
  • Deny: تردد در پورت ممنوع است. سیستم درخواست کننده از رد اطلاع داده نمی‌شود. بسته داده به سادگی حذف می‌شود.
  • Reject: تردد در پورت ممنوع است. بسته داده حذف می‌شود و سیستم درخواست کننده از رد آن مطلع می‌شود.
  • Limit: اگر همان آدرس IP تلاش کرده باشد 6 یا بیشتر در یک بازه زمانی 30 ثانیه برقرار کند، اتصالات رد می‌شوند.

هنگامی که یک قانون تعریف شد، با کلیک بر روی دکمه Add، قانون اجرا می‌شود، کادر گفتگوی Add Rule حذف می‌شود و قانون جدید در صفحه اصلی ابزار gufw (با قوانین برای پروتکل‌های IPv4 و IPv6) فهرست می‌شود:

برای حذف یک قانون، آن را در لیست انتخاب کنید و روی دکمه “-” واقع در پایین پنجره کلیک کنید. به طور مشابه، با انتخاب آن و کلیک بر روی دکمه چرخ‌دنده در سمت راست دکمه “-“، قوانین موجود را ویرایش کنید.

افزودن قوانین پیشرفته

تاکنون قوانینی را برای کنترل تنها نوع ترافیکی که باید مسدود شود (به عنوان مثال ترافیک ورودی در پورت 22) بدون توجه به منبع یا مقصد ترافیک بررسی کرده‌ایم. با این حال، اغلب اوقات لازم است قوانینی برای اجازه یا رد ترافیک بر اساس یک آدرس IP یا محدوده‌ای از آدرس‌های IP تعریف شوند.

برای اهداف یک مثال، فرض کنید که سیستم محلی دارای آدرس آی‌پی 192.168.0.102 است. فایروال ممکن است طوری پیکربندی شود که فقط اجازه دسترسی به پورت 22 را از سیستمی با آدرس IP مثلا 192.168.0.105 بدهد. برای دستیابی به این هدف، قسمت From: پانل Advanced پیشرفته باید روی آدرس IP سیستمی که درخواست اتصال از آن منشا می‌گیرد تنظیم شود (در این مورد 192.168.0.105).

فیلدهای To: گزینه ای را برای تعیین آدرس IP و پورت سیستمی که اتصال به آن برقرار می‌شود ارائه می‌دهد. در این مثال، این پورت 22 در سیستم محلی (192.168.0.102) خواهد بود. آدرس آی‌پی To: در واقع اختیاری است و ممکن است خالی بماند:

با فرض اینکه سیاست پیش‌فرض ورودی همچنان روی Deny یا Reject در صفحه اصلی تنظیم شده است، قانون فوق به SSH از طریق پورت 22 به سیستم لوکال فقط از سیستم راه دور با آدرس آی‌پی 92.168.0.105 دسترسی خواهد داشت. تلاش‌های دسترسی SSH از سیستم‌هایی با آدرس‌های IP دیگر با شکست مواجه خواهند شد. توجه داشته باشید که اگر سیستم مورد نظر سیستم لوکال باشد، قسمت آدرس آی‌پی To: ممکن است خالی بماند. فیلد Insert در پنجره فوق اجازه می‌دهد تا قانون جدید در مکان مشخص شده در لیست قوانین موجود درج شود، بنابراین به شما امکان می‌دهد ترتیب اعمال قوانین را در فایروال کنترل کنید.

همچنین با استفاده از bitmask آدرس IP می‌توان محدوده‌ای از آدرس‌ها را مشخص کرد. به عنوان مثال، برای ایجاد یک قانون برای محدوده‌ای از آدرس‌های IP از 192.168.0.1 تا 192.168.0.255، آدرس IP باید در قسمت From: به عنوان 192.168.0.0/24 وارد شود.

به طور مشابه، برای تعیین قاعده‌ای که محدوده آدرس آی‌پی 192.168.0.1 تا 192.168.0.30 را پوشش می‌دهد، از bitmask 27 استفاده می‌شود، یعنی 192.168.0.0/27.

یک ماشین حساب مفید برای شناسایی محدوده آدرس تحت پوشش هر مقدار bitmask به صورت آنلاین در http://subnet-calculator.com موجود است.

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

تمام گزینه‌های پیکربندی فایروال که از طریق ابزار گرافیکی gufw در دسترس هستند نیز از طریق خط فرمان زیرین با استفاده از فرمان ufw در دسترس هستند. برای فعال یا غیرفعال کردن فایروال:

# ufw enable
# ufw disable

وضعیت فعلی فایروال را می‌توان با استفاده از گزینه status بدست آورد:

# ufw status
Status: active
 
To                         Action      From
--                         ------      ----
22                         ALLOW       192.168.86.30

برای اطلاعات بیشتر وضعیت، فرمان بالا را با گزینه verbose ترکیب کنید:

# ufw status verbose
Status: active
Logging: on (full)
Default: deny (incoming), allow (outgoing), deny (routed)
New profiles: skip
 
To                         Action      From
--                         ------      ----
22                         ALLOW IN    192.168.86.30

خروجی در مثال بالا نشان می‌دهد که سیاست پیش‌فرض فایروال این است که تمام اتصالات ورودی و مسیریابی را رد کند و در عین حال همه اتصالات خروجی را مجاز کند. برای تغییر هر یک از این تنظیمات پیش‌فرض، از فرمان ufw با گزینه پیش‌فرض با استفاده از سینتکس زیر استفاده کنید:

# ufw default <policy> <direction>

به عنوان مثال، برای فعال کردن تمام اتصالات ورودی به طور پیش‌فرض:

# ufw default allow incoming

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

# ufw <policy> <port number>/<optional protocol>

به عنوان مثال، برای اجازه دادن به ترافیک ورودی TCP و UDP در پورت 30:

# ufw allow 30

به طور مشابه، برای رد ترافیک TCP ورودی در پورت 5700:

# ufw deny 5700/tcp

قوانین همچنین ممکن است با ارجاع به نام سرویس مربوط به پورت اعلام شوند. به عنوان مثال برای فعال کردن دسترسی SSH در پورت 22:

# ufw allow ssh

همانند ابزار gufw، ufw همچنین اجازه می‌دهد تا دسترسی از آدرس‌های IP خارجی خاص کنترل شود. به عنوان مثال، برای اجازه دادن به تمام ترافیک ورودی از آدرس آی‌پی 192.168.0.20:

# ufw allow from 192.168.0.20

برای رد کردن ترافیک از یک آدرس IP:

# ufw deny 192.168.0.20

برای محدود کردن دسترسی به آدرس آی‌پی 192.168.0.20 فقط به پورت 22:

# ufw allow from 192.168.0.22 to any port 22

برای محدود کردن بیشتر دسترسی به آدرس IP فقط به بسته‌های TCP، از فرمان زیر استفاده کنید:

# ufw allow from 192.168.0.20 to any port 22 proto tcp

موقعیت یک قانون جدید در لیست قوانین موجود ممکن است با استفاده از گزینه درج اعلام شود. به عنوان مثال برای ایجاد یک قانون جدید و درج آن در موقعیت 3 در لیست قوانین:

# ufw insert 3 allow from 192.168.0.123 to any port 2 

برای نمایش لیست قوانین با اعداد مرتبط:

# ufw status numbered
Status: active
 
     To                         Action      From
     --                         ------      ----
[ 1] 22                         ALLOW IN    192.168.86.30             
[ 2] 30                         ALLOW IN    Anywhere                  
[ 3] 22                         ALLOW IN    192.168.0.123             
[ 4] 5700/tcp                   DENY IN     Anywhere                  
[ 5] 22/tcp                     ALLOW IN    Anywhere                  
[ 6] Anywhere                   ALLOW IN    192.168.0.20              
[ 7] 22                         ALLOW IN    192.168.0.4               
[ 8] 30 (v6)                    ALLOW IN    Anywhere (v6)             
[ 9] 5700/tcp (v6)              DENY IN     Anywhere (v6)             
[10] 22/tcp (v6)                ALLOW IN    Anywhere (v6)

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

# ufw delete 4

برای به دست آوردن لیست کاملی از قابلیت‌های ابزار ufw دستور را با آرگومان –help اجرا کنید:

# ufw help

ثبت فعالیت فایروال را می‌توان با استفاده از گزینه خط فرمان logging به سیستم فعال و غیرفعال کرد:

# ufw logging on
# ufw logging off

میزان ثبت گزارش انجام شده توسط ufw ممکن است در هنگام روشن کردن ورود به سیستم شامل تنظیمات کم، متوسط، زیاد یا کامل نیز اعلام شود، به عنوان مثال:

# ufw logging on low

فایل لاگ ufw را می‌توانید در آدرس زیر پیدا کنید:

/var/log/ufw.log

از گزینه reload برای راه اندازی مجدد فایروال و بارگیری مجدد تمام تنظیمات فعلی استفاده کنید:

# ufw reload

در نهایت، برای بازنشانی فایروال به تنظیمات پیش‌فرض (در نتیجه حذف تمام قوانین و تنظیمات موجود):

# ufw reset

خلاصه

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

منبع: answertopia.com
درباره فرشید نوتاش حقیقت

همیشه نیازمند یک منبع آموزشی فارسی در حوزه نرم‌افزارهای آزاد/ متن‌باز و سیستم‌عامل گنو/لینوکس بودم. از این رو این رسالت رو برای خودم تعریف کردم تا رسانه «محتوای باز» رو بوجود بیارم.

نوشته‌های بیشتر از فرشید نوتاش حقیقت
قبلی فایروال اوبونتو
بعدی پیکربندی اولیه فایروال اوبونتو با firewalld

دیدگاهتان را بنویسید لغو پاسخ

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

جستجو
جستجو برای:
دسته‌بندی موضوعی مقالات
  • برنامه‌نویسی
    • پایتون
    • دواپس
  • پایگاه‌داده
    • MariaDB
    • MySQL
  • تجارت الکترونیک
    • بازاریابی اینترنتی
    • دیجیتال مارکتینگ
    • شبکه‌های اجتماعی
  • جامعه کاربری
    • لاگ
  • دسته‌بندی نشده
  • شبکه و امنیت
  • طراحی وب
    • سئو
    • سیستم مدیریت محتوا
      • وردپرس
  • فناوری‌های نوظهور
    • اینترنت اشیاء
    • رایانش ابری
      • OpenStack
    • کلان‌داده‌ها
  • گنو/لینوکس
    • توزیع
      • CentOS
      • اوبونتو
      • دبیان
      • فدورا
    • چیست
    • خط فرمان
  • مهاجرت به آزاد/متن‌باز
  • نرم‌افزار
    • اداری
      • لیبره آفیس
        • ایمپرس
        • بیس
        • دراو
        • رایتر
        • کالک
    • کاربردی
    • گرافیک و انیمیشن
      • بلندر
      • گیمپ
نماد الکترونیکی (اینماد)
پرداخت‌یار

محتوای باز؛ مرجع آموزشی نرم‌افزارهای آزاد/ متن‌باز

از اینکه قصد همکاری با رسانه «محتوای باز» را دارید بسیار خرسندیم و این مایه مباهات ماست.

نحوه همکاری با ما چندان پیچیده نیست و شرایط آن در ادامه، ارائه گردیده است.

دستمزد مدرسین

پیش از بیان شرایط ضبط ویدئو شایان ذکر است اشاره‌ای به دستمزد مدرسین سایت داشته باشیم.

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

صرف نظر از هر حالت ممکنه، می‌بایست شرایطی که در ادامه ذکر شده‌اند را رعایت کرده باشید.

در حالت اول (رایگان) رسانه محتوای باز (Open Content)، نه وجهی از شما برای نشر ویدئو می‌گیرد و نه وجهی به شما پرداخت می‌نماید و دوره آموزشی شما را به رایگان منتشر می‌کند.

اما در حالت بعدی طریقه همکاری به روش درآمد از فروش خواهد بود، به گونه‌ای که 70 درصد از کل مبلغ فروش دوره آموزشی متعلق به مدرس دوره بوده و 30 درصد مابقی به رسانه محتوای باز تعلق می‌گیرد.

شرایط کلی ضبط دوره آموزشی

دوره آموزشی مربوطه، صرف نظر از هر محتوایی که دارد می‌بایست در یکی از توزیعات گنو/لینوکسی ضبط شده باشد. (به‌عنوان مثال دوره دروپال در اوبونتو، دوره آموزشی کار با آردوینو در دبیان و امثالهم). اگر دوره آموزشی شما در محیط ویندوز و یا هر پلتفرم/سیستم‌عامل دیگری ضبط شده باشد از همکاری با شما معذوریم.

پیشنهاد می‌گردد برای ضبط دوره آموزشی در توزیع گنو/لینوکس از ابزار قدرتمند OBS استفاده نمایید. البته این صرفا یک پیشنهاد است و شما می‌توانید از هر ابزار مناسب دیگری برای این کار بهره ببرید.

برای آشنایی یا تسلط بیشتر می‌توانید دوره رایگان آموزش OBS محمد عابدینی را ببینید:

مشاهده دوره آموزش OBS
شرایط کیفی ضبط دوره آموزشی

کیفیت صدا از اهمیت ویژه‌ای برخوردار می‌باشد و می‌بایست فاقد هر گونه نویز یا صدای اضافی دیگری (صدای محیط پیرامون) باشد.

دوره آموزشی تهیه شده صرفا باید برای رسانه محتوای باز تدوین شده باشد و در هیچ سایت مشابه دیگری قرار نگرفته باشد.

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

دوره آموزشی ضبط شده می‌باید فاقد هر گونه لوگو یا آدرس سایت دیگری (در گوشه تصویر یا بک‌گراند صفحه دسکتاپ و هر جای دیگری) باشد.

در حین دوره، مدرس نباید به برند خاصی اشاره کند که جز رقبای ما به‌شمار می‌آیند.

مدرس باید در ابتدا در اواسط و در انتهای دوره به برند ما یعنی رسانه محتوای باز (Open Content) بصورت کلامی اشاره نماید.

مدرس، هنگام تدریس نباید تپق زده، سرفه یا عطسه کند یا صدای قورت دادن بزاقش شنیده شود و بایستی با صدای رسا، دوستانه و پرانرژی به تدریس بپردازد.

قبل از تدوین دوره آموزشی حتما با ما در تماس باشید و یک ویدیوی چنددقیقه‌ای (ترجیحا 5 الی 10 دقیقه)، بصورت نمونه‌کار برای ما بفرستید.

از همکاری با شما سپاسگزاریم.

فراخوان همکاری