نکته مهم: این مقاله به مرور زمان، ویرایش و یا تکمیل میشود! لذا در صورتی که به مشکل تایپی، دستوری و یا مفهومی در آن برخورد کردید، خوشحال میشوم که مرا در جریان قرار داده، تا آن را ویرایش و یا تکمیل نمایم. با تشکر داریوش تصدیقی
نسخه ۱.۰
برای سادگی کار، به جای آن که در ابتدای هر یک از دستورات این مقاله، از کلمه sudo استفاده نماییم! ابتدا یکی از دستورات sudo -i یا su را اجرا کرده، تا به عنوان کاربر root وارد سیستم عامل لینوکس اوبونتو شده و سپس دستورات این مقاله را اجرا میکنیم.
در اکثر سیستم عاملهای لینوکس (Linux) اوبونتو (Ubuntu) برنامهای (Package) به نام ufw وجود دارد، که نقش دیوار آتش (Firewall) را در این سیستم عامل بازی میکند. این برنامه به صورت پیشفرض (بعد از نصب اولیه سیستم عامل اوبونتو) غیر فعال میباشد.
برای بررسی وضعیت فایروال، یکی از دستورات ذیل را استفاده میکنیم:
ufw status
و یا
ufw status verbose
و یا
ufw status numbered
توجه: دستور آخر (سومی) مناسبتر است!
همانطور که در ابتدا عنوان شد، این فایروال به صورت پیشفرض غیرفعال بوده و ما بعد از اجرای دستور فوق، باید با عبارت ذیل مواجه شویم:
Status: inactive
در صورتی که اجرای دستور ufw با خطا مواجه گردید، این بدان معنا است که این برنامه بر روی سیستم عامل لینوکس اوبونتو نصب نشده است! لذا برای نصب آن از دستورات ذیل استفاده میکنیم:
apt update -y apt upgrade -y apt install -y ufw
نکته بسیار مهم: در صورتی که با استفاده از دستور ذیل، فایروال را فعال (اجرا) نماییم، ممکن است که پورت مربوط به پروتکل ssh (که معمولا برابر عدد ۲۲ میباشد)، در داخل فایل تنظیمات فایروال، به عنوان پروتکل یا پورت مجاز، ثبت (تعریف) نشده باشد، و پس از فعال کردن فایروال، دسترسی ما به ترمینال سرور، از بین رفته و پس از آن نیز دیگر نتوانیم با استفاده از پروتکل ssh به ترمینال سرور متصل شویم! چرا که در اکثر موارد، ما دسترسی مستقیمی به سرور نداریم و این مساله میتواند مشکلات زیادی را برای ما ایجاد نماید!
لذا بهتر است، قبل از آن که فایروال را فعال نماییم، ابتدا دسترسی پروتکل ssh یا پورت ۲۲ را برای فایروال تعریف و آزاد کرده و سپس اقدام به راهاندازی آن کنیم!
با استفاده از دستور ذیل، فایروال راهاندازی میشود:
ufw enable
Command may disrupt existing ssh connections. Proceed with operation (y|n)? y
Firewall is active and enabled on system startup
بعد از اجرای دستور فوق، برای اینکه اطمینان حاصل نماییم که آیا فایروال راهاندازی شده است یا خیر، از دستور ذیل استفاده میکنیم:
ufw status
Status: active
با استفاده از دستور ذیل، میتوانیم مجددا فایروال را غیرفعال نماییم:
ufw disable
Firewall stopped and disabled on system startup
مجددا برای اینکه اطمینان حاصل نماییم که آیا فایروال غیرفعال شده است یا خیر، از دستور ذیل استفاده میکنیم:
ufw status
Status: inactive
حال (به عنوان مثال) برای این که پورتهای ۲۲ مربوط به پروتکل ssh و ۲۱ مربوط به پروتکل ftp و ۸۰ مربوط به پروتکل http و ۴۴۳ مربوط به پروتکل https را به عنوان پورتهای مجاز به فایروال معرفی نماییم، به ترتیب مراحل ذیل را انجام میدهیم.
برای آزاد کردن پروتکل ssh و یا پورت پیشفرض ۲۲ مربوط به آن، میتوانیم یکی از دستورات ذیل را استفاده نماییم:
ufw allow ssh
و یا
ufw allow 22
و یا
ufw allow 22/tcp
توجه: دستور آخر (سومی) دقیقتر میباشد!
برای آزاد کردن پروتکل ftp و یا پورت پیشفرض ۲۱ مربوط به آن، میتوانیم یکی از دستورات ذیل را استفاده نماییم:
ufw allow ftp
و یا
ufw allow 21
و یا
ufw allow 21/tcp
توجه: دستور آخر (سومی) دقیقتر میباشد!
برای آزاد کردن پروتکل http و یا پورت پیشفرض ۸۰ مربوط به آن، میتوانیم یکی از دستورات ذیل را استفاده نماییم:
ufw allow http
و یا
ufw allow 80
و یا
ufw allow 80/tcp
توجه: دستور آخر (سومی) دقیقتر میباشد!
برای آزاد کردن پروتکل https و یا پورت پیشفرض ۴۴۳ مربوط به آن، میتوانیم یکی از دستورات ذیل را استفاده نماییم:
ufw allow https
و یا
ufw allow 443
و یا
ufw allow 443/tcp
توجه: دستور آخر (سومی) دقیقتر میباشد!
در صورتی که بخواهیم به عنوان مثال، دسترسی https و یا پورت پیشفرض ۴۴۳ مربوط به آن را از فایل تنظیمات فایروال حذف نماییم، یکی از دستورات ذیل را استفاده میکنیم:
ufw delete allow https
و یا
ufw delete allow 443
و یا
ufw delete allow 443/tcp
در صورتی که بخواهیم به صورت گرافیکی از برنامه ufw استفاده نماییم، میتوانیم برنامه gufw را به صورت ذیل نصب نماییم:
apt update -y apt upgrade -y apt install -y gufw
پایان