Product SiteDocumentation Site

فصل 14. امنیت

14.1. تعریف خط‌مشی امنیتی
14.2. فایروال یا فیلترینگ بسته
14.2.1. nftables Behavior
14.2.2. Moving from iptables to nftables
14.2.3. Syntax of nft
14.2.4. اجرای قوانین در هر مرتبه راه‌اندازی
14.3. نظارت: پیشگیری، شناسایی، بازدارندگی
14.3.1. مانیتورینگ گزارش‌ها با استفاده از logcheck
14.3.2. فعالیت مانیتورینگ
14.3.3. Avoiding Intrusion
14.3.4. تشخیص تغییرات
14.3.5. تشخیص نفوذ (IDS/NIDS)
14.4. مقدمه‌ای بر AppArmor
14.4.1. اصول
14.4.2. فعال‌سازی و مدیریت پروفایل‌های AppArmor
14.4.3. ایجاد یک پروفایل جدید
14.5. مقدمه‌ای بر SELinux
14.5.1. اصول
14.5.2. راه‌اندازی SELinux
14.5.3. مدیریت یک سیستم SELinux
14.5.4. انطباق قوانین
14.6. سایر ملاحظات مرتبط با امنیت
14.6.1. خطرات ذاتی در برنامه‌های تحت وب
14.6.2. انتظار چه چیزی را داشته باشیم
14.6.3. انتخاب آگاهانه نرم‌افزار
14.6.4. مدیریت یک ماشین به صورت کلی
14.6.5. کاربران به عنوان بازیکنان اصلی
14.6.6. امنیت فیزیکی
14.6.7. مسئولیت قانونی
14.7. مواجهه با یک ماشین نفوذپذیر
14.7.1. شناسایی و مشاهده نفوذ خرابکار
14.7.2. خاموش کردن سرور
14.7.3. نگهداری هر آنچه که می‌تواند به عنوان مدرک استفاده شود
14.7.4. نصب مجدد
14.7.5. بررسی و تحلیل قضایی
14.7.6. بازسازی سناریوی حمله
یک سیستم اطلاعاتی با توجه به محیط خود می‌تواند سطوح مختلفی از اهمیت را دارا باشد. در برخی موارد، این شرایط برای بقای شرکت حیاتی است. بنابراین باید نسبت به انواع مختلف خطر محافظت گردد. فرآیندی که برای ارزیابی این خطرات، تعریف و پیاده‌سازی لایه حفاظتی انجام می‌شود “فرآیند امنیت” نام دارد.

14.1. تعریف خط‌مشی امنیتی

واژه “امنیت” خود مفاهیم، ابزارها و فرآیندهای گسترده‌ای را شامل می‌شود که هیچکدام به صورت کامل معنای آن را نمی‌رسانند. انتخاب از میان ‌آن‌ها مستلزم ایده‌ای دقیق راجع به اهداف مورد نظر شماست. ایمن‌سازی یک سیستم با پاسخ به چند پرسش اولیه آغاز می‌شود. اینکه از ابتدا با پیاده‌سازی عجله‌ای چند ابزار تمرکز خود را روی یک حوزه معطوف کنیم، ما را در جنبه‌های اشتباه از امنیت قرار می‌دهد.
یکی از اولین کارهایی که باید انجام داد تشخیص هدف است. رویکرد خوبی که می‌تواند در این تشخیص به ما یاری رساند با پرسش‌های زیر آغاز می‌شود:
  • از چه چیزی می‌خواهیم محافظت کنیم؟ خط‌مشی امنیت نسبت به اینکه قصد محافظت از رایانه یا داده را داریم متفاوت خواهد بود. در مورد دوم، همچنین باید بدانیم از کدام نوع داده می‌خواهیم محافظت کنیم.
  • از روی دادن چه اتفاقی می‌خواهیم پیشگیری کنیم؟ آیا اطلاعات محرمانه نشت یافته است؟ داده‌ها به صورت تصادفی از بین رفته‌اند؟ سود تجاری با مختل شدن سرویس از بین رفته است؟
  • همچنین، قصد محافظت مقابل چه کسانی را داریم؟ معیارهای امنیتی برای مقابله با اشتباه یک کاربر عادی در مقایسه با یک گروه مهاجم بسیار متفاوت خواهد بود.
عبارت “خطر” به طور معمول در مورد این سه عامل ارجاع داده می‌شود: از چه چیز محافظت شود، از روی دادن چه اتفاقی می‌خواهیم پیشگیری کنیم و قصد محافظت مقابل چه کسانی را داریم. مدل‌سازی خطر نیازمند پاسخ به این سه پرسش است. از این مدل خطر، یک خط‌مشی امنیتی می‌تواند ایجاد گردد که این خط‌مشی می‌تواند با اقدامات مستحکم پیاده‌سازی شود.
محدودیت‌های اضافی نیز در این مورد باید به حساب آیند، چرا که می‌توانند محدوده خط‌مشی موجود را کوچک سازند. برای ایمن‌سازی یک سیستم تا کجا پیش خواهیم رفت؟ این پرسش تاثیر اساسی روی خط‌مشی قابل پیاده‌سازی می‌گذارد. پاسخ در اغلب موارد به صورت هزینه‌های مالی تعریف می‌شود، اما سایر عناصر نیز باید در آن گنجانده شوند، از جمله میزان ناراحتی که بر کاربران سیستم تحمیل می‌شود یا کاهش عملکرد کلی.
زمانی که مدل‌سازی خطر صورت گرفت، می‌توان راجع به طراحی یک خط‌مشی امنیتی حقیقی فکر کرد.
در اکثر موارد، سیستم اطلاعاتی می‌تواند به زیر مجموعه‌های یکپارچه و اغلب مستقل تقسیم شود. هر زیر مجموعه نیازمندی‌ها و محدودیت‌های خود را خواهد داشت که ارزیابی خطر و طراحی خط‌مشی سیاسی به صورت جداگانه برای هر کدام باید محاسبه گردد. یک قاعده خود که باید مد نظر قرار دهیم این است که درک یک محیط کوچک و خوش-تعریف نسبت به یک جنگل بزرگ و طولانی آسان‌تر است. سازماندهی شبکه نیز باید به همین صورت طراحی گردد: خدمات حساس باید روی تعداد کمی از ماشین‌ها قرار داشته باشند و این ماشین‌ها تنها باید از حداقل تعداد نقاط ممکن قابل دسترس باشند؛ ایمن‌سازی این نقاط نسبت به ایمن‌سازی تمام ماشین‌های حساس در مقابل دنیای خارج راحت‌تر است. در این نقطه است که کاربردپذیری فیلترینگ شبکه (که شامل فایروال‌ها می‌شود) مشخص می‌شود. این فیلترینگ می‌تواند با استفاده از یک سخت‌افزار اختصاصی انجام شود، اما یک راهکار ساده‌تر و موثرتر استفاده از نرم‌افزار فایروال از جمله نسخه ادغام شده در کرنل لینوکس است.