نوشته های یک برنامه نویس

تجربیات شخصی محمد باقری نسب
محمد باقری نسب

نوشته های یک برنامه نویس

تجربیات شخصی محمد باقری نسب

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

یکی از مهمترین راهکارهای تامین امنیت بر روی سیستم هایی که با شبکه و وب در ارتباط هستند، پیکربندی یک فایروال مطمئن (دیوار آتشین) جهت مدیریت راه های نفوذ به سیستم عامل است.

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

با یه مثال ساده متوجه میشین که مفهوم فایروال خیلی پیچیده نیست، فکر کنید تابستونه و هوا خیلی گرمه! توی خونه هستید و از شدت گرما دلتون میخواد پنجره اتاقتون رو باز کنید. اما یه مشکلی هست! وقتی پنجره رو باز میکنید حشرات موذی مثل پشه و مگس هجوم میارن توی اتاق! پس برای ورود هوای تازه به اتاق و جلوگیری از ورود حشرات موذی چه کاری باید کرد؟ نصب یک توری در قاب پنجره اتاقتون، با نصب این توری تبادل هوا به راحتی انجام میشه و دیگه نگرانی بابت ورود حشرات موذی هم نخواهید داشت.
سیستم فایروال هم دقیقا به همین شکل عمل میکنه و نقش یک توری محافظ برای سیستم عامل شما رو بازی میکنه. یعنی اجازه ورود و خروج های بی خطر و مفید امکان پذیر خواهد بود اما در مقابل با مسدود کردن راه های نفوذ ابزارهای ناشناس و خطرناک، اجازه آسیب رساندن به سیستم شما رو به دیگران نخواهد داد.

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

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

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

sudo apt-get install ufw


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

sudo ufw status


اگر تاکنون از ufw بر روی این سرور استفاده نکرده باشید، خروجی این دستور احتمالا به این صورت خواهد بود: Status: inactive و به این مفهوم است که سرویس ufw هنوز راه اندازی نشده و غیرفعاله!

تعریف قوانین در UFW

قبل از فعال کردن فایروال، ابتدا یک سری قوانین پیش فرض برای ufw تعریف میکنیم تا در عمل تمامی درخواست های ورودی به سرور (incoming) مسدود شده و تمامی خروجی ها (outgoing) آزاد باشند. برای این کار دستورات زیر رو اجرا میکنیم:

sudo ufw default deny incoming

sudo ufw default allow outgoing


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

sudo ufw allow 22


نکته: ممکنه شما قبلا پورت پیش فرض ssh رو تغییر داده باشین و از پورت 22 برای اتصال به سرور استفاده نکنید (جهت ارتقاء امنیت سرور این کار اکیدا توصیه میشود) پس در دستور بالا به جای پورت 22 پورت مورد نظر خودتون رو قرار داده و اجازه دسترسی به اون رو بدید.

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

sudo ufw allow 80


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

sudo ufw allow 53


اجازه دسترسی به بقیه پورت های مورد نیاز خودتون مثل ftp / smtp / https و غیره رو هم در صورت نیاز میتونید بعدا به لیست قوانین فایروال اضافه کنید.

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

sudo ufw enable


و حالا یه بار دیگه وضعیت فایروال رو بررسی کنید:

sudo ufw status


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

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

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

sudo ufw status numbered


توی خروجی و در ابتدای هر خط، عددی نمایش داده میشه که در واقع شماره اون قانون هست. حالا مثلا برای حذف قانون شماره [8] دستور زیر رو اجرا میکنیم:

sudo ufw delete 8


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

sudo ufw help


امیدوارم این مقاله برای شما مفید بوده باشه، سوال یا مشکلی بود کامنت بذارید حتما پاسخ میدم؛ موفق باشید!

نظرات  (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
تجدید کد امنیتی
این سایت رو تنها به دلیل علاقم به نوشتن و به اشتراک گذاری تجربیاتم با دیگران ایجاد کردم، گفتم شاید به درد کسی بخوره، پس کپی برداری از محتوا بدون ذکر منبع هیچ اشکالی نداره! اما اگه ذکر کردین هم خوشحالم میکنید :)
آخرین نظرات
  • ۲۴ شهریور ۹۶، ۱۱:۱۱ - دانلود آهنگ جدید
    عالی
دسته بندی ها