منو سایت

  • خانه
  • وبلاگ
  • نحوه راه اندازی فایروال با UFW در سرورهای اوبونتو و دبیان را بیاموزید

نحوه راه اندازی فایروال با UFW در سرورهای اوبونتو و دبیان را بیاموزید

 تاریخ انتشار :
/
  وبلاگ
نحوه راه اندازی فایروال با UFW در سرورهای اوبونتو و دبیان را بیاموزید

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

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

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

  • قوانین پیش فرض UFW را تنظیم کنید.
  • پورت ها و آدرس های IP را برای اتصالات فعال یا مسدود کنید.
  • قوانین تنظیم شده را غیرفعال کنید.
  • UFW را غیرفعال یا فعال کنید.
  • همه چیز را به تنظیمات پیش فرض بازگردانید.

پیش نیازها

  • سرور اوبونتو یا دبیان
  • کاربر غیر ریشه با امتیازات sudo

از IPv6 با UFW استفاده کنید

اگر سرور مجازی VPS شما برای IPv6 پیکربندی شده است، مطمئن شوید که UFW نیز برای پشتیبانی از IPv6 برای پیکربندی قوانین فایروال IPv4 و IPv6 پیکربندی شده است. برای این کار ابتدا باید فایل پیکربندی UFW را در ویرایشگر متن دلخواه خود باز کنید. برای این کار می توانید از دستور nano استفاده کنید:

$ sudo nano /etc/default/UFW

مطمئن شوید IPV6 روی بله تنظیم شده است:

/etc/default/UFW
# /etc/default/UFW
#

# Set to yes to apply rules to support IPv6 (no means only IPv6 on loopback
# accepted). You will need to 'disable' and then 'enable' the firewall for
# the changes to take affect.
IPV6=yes
…

پس از انجام تغییرات، فایل را ذخیره کرده و از آن خارج شوید. اگر از دستور nano استفاده می کنید، CTRL + X، Y و سپس Enter را فشار دهید.

حالا فایروال خود را پس از غیرفعال کردن با استفاده از دستور زیر ریستارت کنید:

$ sudo UFW disable
Output
Firewall stopped and disabled on system startup

سپس آن را دوباره فعال کنید:

$ sudo UFW enable
Output
Firewall is active and enabled on system startup

فایروال قبلاً با UFW پیکربندی شده است و در صورت لزوم، قوانین فایروال IPv4 و IPv6 را پیکربندی می کند.

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

فایروال UFW را با IPV6 راه اندازی کنید

برای آشنایی بیشتر با فایروال وب یا wf و کاربرد آن مقاله زیر را مطالعه کنید.

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

UFW را روی پیش فرض قرار دهید

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

برای تنظیم تنظیمات پیش فرض UFW ابتدا باید از دستور زیر استفاده کنید:

$ sudo UFW default deny incoming
Output
Default incoming policy changed to 'deny'
(be sure to update your rules accordingly)

سپس از دستور زیر استفاده کنید:

$ sudo UFW default allow outgoing
Output
Default outgoing policy changed to 'allow'
(be sure to update your rules accordingly)

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

$ sudo UFW default deny outgoing

امکان اتصال به فایروال

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

$ sudo UFW allow ssh

در صورت موفقیت آمیز بودن تغییرات، خروجی زیر را دریافت خواهید کرد:

Output
Rule added
Rule added (v6)

UFW دارای برخی تنظیمات پیش فرض است، مانند دستور SSH که در مثال قبلی استفاده شد. همچنین می توانید اتصالات ورودی به پورت 22 / tcp را مجاز کنید:

$ sudo UFW allow 22/tcp

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

Output
Skipping adding existing rule
Skipping adding existing rule (v6)

اگر سرور SSH شما روی پورت 2222 اجرا می شود، فقط آن را با پورت 22 جایگزین کنید. این کار را به صورت زیر انجام دهید:

$ sudo UFW allow 2222/tcp
Output
Rule added
Rule added (v6)

فایروال UFW را در اوبونتو و دبیان پیکربندی کنید

چگونه اتصالات فایروال را بررسی کنم؟

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

دستورات فایروال لینوکس

امنیت وب سرور

برای محافظت از وب سرور با دسترسی به پروتکل انتقال فایل (FTP)، باید اتصالات به پورت 80 / tcp را فعال کنید. اجازه دادن به اتصالات پورت 80 در سرورهای وب مانند Apache و Nginx که به درخواست های اتصال HTTP پاسخ می دهند می تواند مفید باشد. با استفاده از دستور زیر اتصال به پورت 80 / tcp را فعال کنید:

$ sudo UFW allow 80/tcp

UFW معمولاً نمایه ها را با قوانین مورد نیاز برای کار با وب سرور ارائه می دهد. در غیر این صورت، پروفایل های وب سرور را می توان به عنوان WWW ذخیره کرد و به صورت ftp یا tcp باز کرد، مانند مثال های زیر:

$ sudo UFW allow www

همچنین می توانید از ftp یا پورت 21 برای اتصال به FTP استفاده کنید:

$ sudo UFW allow ftp
$ sudo UFW allow 21/tcp

برای اتصالات FTP، باید اتصالات پورت 20 را نیز فعال کنید. برای این کار از دستور زیر استفاده کنید:

$ sudo UFW allow 20/tcp

تنظیمات شما به پورت ها و سرویس هایی که باید باز کنید بستگی دارد. به همین دلیل، می توانید چندین بار یک مسیر را امتحان کنید تا آنها را پیدا کنید. همچنین فراموش نکنید که اتصال SSH خود را فعال کنید.

محدوده پورت ها را تعیین کنید

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

برای مثال برای فعال کردن پورت های 1000 تا 2000 از دستور زیر استفاده کنید:

$ sudo UFW allow 1000:2000/tcp

علاوه بر این، دستور زیر از اتصال پورت های 1234 به 4321 خودداری می کند:

$ sudo UFW deny 1234:4321/udp

آدرس های IP را مشخص کنید

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

$ sudo UFW allow from your_server_ip

فایروال UFW را در اوبونتو و دبیان پیکربندی کنید

چگونه فایروال UFW را در اوبونتو و دبیان نصب و پیکربندی کنیم؟

روش های کاربردی افزایش امنیت VPS را در مقاله بعدی از دست ندهید.

9 راه برای افزایش امنیت سرور مجازی

انکار پیوندها

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

$ sudo UFW deny 80/tcp

قوانین را حذف کنید

اگر می خواهید برخی از قوانینی را که اعمال کرده اید حذف کنید، از دستور Delete استفاده کنید و قانون زیر را حذف کنید:

$ sudo UFW delete allow 80/tcp
Output
Rule deleted
Rule deleted (v6)

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

$ sudo UFW status numbered

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

$ sudo UFW delete number
Output
Status: active
To Action From
-- ------ ----
[ ۱] OpenSSH ALLOW IN Anywhere
[ ۲] ۲۲/tcp ALLOW IN Anywhere
[ ۳] ۲۲۲۲/tcp ALLOW IN Anywhere
[ ۴] ۸۰ ALLOW IN Anywhere
[ ۵] ۲۰/tcp ALLOW IN Anywhere
…

به عنوان مثال، اگر پورت 80 شماره 4 در لیست است، از دستور زیر برای حذف آن استفاده کنید. همچنین ممکن است از شما پرسیده شود که آیا می خواهید عملیات را ادامه دهید. با وارد کردن بله (y) یا خیر (n)، می توانید تصمیم بگیرید:

$ sudo UFW delete 4
Output
Deleting:
allow 80
Proceed with operation (y|n)? y
Rule deleted (v6)

UFW را فعال کنید

هنگامی که تمام قوانین مورد نظر خود را تعریف کردید، اکنون می توانید UFW را فعال کنید. اگر از طریق SSH وصل می شوید، حتما پورت SSH خود را که معمولاً پورت 22 است راه اندازی کنید تا اتصالات فعال شود. اکنون UFW را با استفاده از دستور زیر فعال کنید:

$ sudo UFW enable
Output
Firewall is active and enabled on system startup

برای تایید تغییرات خود، وضعیت را با دستور زیر بررسی کنید و لیست قوانین را مرور کنید:

$ sudo UFW status
Output
Status: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
۲۲/tcp ALLOW Anywhere
۲۲۲۲/tcp ALLOW Anywhere
۲۰/tcp ALLOW Anywhere
۸۰/tcp DENY Anywhere
…

همچنین می توانید از دستور verbose برای دریافت خروجی جامع تر استفاده کنید:

$ sudo UFW status verbose

برای غیرفعال کردن UFW کافیست از دستور زیر استفاده کنید:

$ sudo UFW disable
Output
Firewall stopped and disabled on system startup

تنظیمات پیش فرض را بازیابی کنید

اگر به دلایلی نیاز دارید که قوانین سرور ابری را به تنظیمات پیش فرض بازنشانی کنید، می توانید با دستور UFW reset این کار را انجام دهید. توجه داشته باشید که قبل از تنظیم مجدد از شما خواسته می شود y یا n را تایپ کنید. زیرا ممکن است اتصالات SSH موجود را خراب کند:

$ sudo UFW reset
Output
Resetting all rules to installed defaults. This may disrupt existing ssh
connections. Proceed with operation (y|n)? y
Backing up 'user.rules' to '/etc/UFW/user.rules.20220217_190530'
Backing up 'before.rules' to '/etc/UFW/before.rules.20220217_190530'
Backing up 'after.rules' to '/etc/UFW/after.rules.20220217_190530'
Backing up 'user6.rules' to '/etc/UFW/user6.rules.20220217_190530'
Backing up 'before6.rules' to '/etc/UFW/before6.rules.20220217_190530'
Backing up 'after6.rules' to '/etc/UFW/after6.rules.20220217_190530'

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

نتیجه

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

در این مقاله وبلاگ پارس پک به شما آموزش دادیم که چگونه سرور ابری خود را راه اندازی و پیکربندی کنید تا دسترسی به زیرمجموعه ای از پورت ها یا آدرس های IP را مجاز یا محدود کنید. همچنین توضیح دادیم که چگونه فایروال UFW را فعال و غیرفعال کنید و تنظیمات پیش فرض را بازنشانی کنید تا به راحتی سرور ابری خود را مدیریت و محافظت کنید.

سوالات متداول

1. فرآیند راه اندازی فایروال UFW در لینوکس چیست؟

نحوه راه اندازی فایروال با UFW در اوبونتو 18.04 به شرح زیر است:

  • UFW را نصب کنید.
  • وضعیت UFW را بررسی کنید.
  • قوانین پیش فرض UFW را بررسی کنید.
  • پروفایل های برنامه را بررسی کنید.
  • اتصالات SSH را فعال کنید.
  • UFW را فعال کنید
  • اجازه اتصال به پورت های دیگر. پورت های 80 – HTTP و 443 – HTTPS و 8080 را باز کنید.
  • در نهایت، محدوده پورت ها را در نظر بگیرید.

2. آیا به فایروال روی سرور اوبونتو نیاز داریم؟

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

3. آیا سرور ابری دبیان UFW دارد؟

همانطور که گفته شد، دبیان UFW را به طور پیش فرض نصب نمی کند. اگر تمام موارد گفته شده در این مقاله را دنبال کرده اید، قبلاً UFW را نصب و فعال کرده اید. در غیر این صورت، اکنون با استفاده از دستور apt آن را نصب کنید:

$ sudo apt install UFW

{“@context”: “https://schema.org”، “@type”: “FAQPage”، “mainEntity”: [{
“@type”: “Question”,
“name”: “فرایند راه‌اندازی فایروال UFW در لینوکس چگونه است؟”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “نحوه راه‌اندازی فایروال با UFW در اوبونتو ۱۸٫۰۴ به‌صورت زیر است:

UFW را نصب کنید.
وضعیت UFW را بررسی کنید.
خط‌‌مشی پیش‌فرض UFW را بررسی کنید.
پروفایل‌های برنامه را بررسی کنید.
اتصالات SSH را مجاز کنید.
UFW را فعال کنید.
اجازه اتصال به سایر پورت‌ها را بدهید. پورت‌های ۸۰ – HTTP و ۴۴۳ – HTTPS و ۸۰۸۰ را باز کنید.
درنهایت، محدوده پورت را مجاز کنید.”
}
},{
“@type”: “Question”,
“name”: “آیا به فایروال روی سرور اوبونتو نیاز داریم؟”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “درمجموع، باید بگوییم که نیاز به نگرانی نیست؛ زیرا لینوکس حتی بدون فایروال فعال همچنان امن است. به‌طور پیش‌فرض، اکثر توزیع‌هایی مانند اوبونتو و لینوکس مینت پورت باز ندارند؛ بنابراین، عوامل مخرب نمی‌توانند به کامپیوترتان دسترسی داشته باشند. باوجوداین‌، توصیه می‌کنیم فایروال را فعال کنید.”
}
},{
“@type”: “Question”,
“name”: “آیا سرور ابری دبیان UFW دارد؟”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “همان‌طور‌که اشاره کردیم، دبیان به‌طور پیش‌فرض UFW را نصب نمی‌کند. اگر تمام مطالب گفته‌شده در این مقاله را دنبال کرده باشید، UFW را قبلاً نصب و فعال کرده‌اید؛ وگر‌نه همین‌حالا آن را با استفاده از دستور apt نصب کنید:
$ sudo apt install UFW”
}
}]
}

آموزش راه اندازی فایروال با UFW روی سرور اوبونتو و دبیان برای اولین بار در پارسوپک. به نظر می رسد.