پایان نامه بررسی دیوار آتش مبتنی بر سیستم عامل لینوکس

دسته: فنی و مهندسی

فرمت فایل: doc

حجم فایل: 323 کیلوبایت

تعداد صفحات فایل: 105

پایان نامه بررسی دیوار آتش مبتنی بر سیستم عامل لینوکس در 105 صفحه ورد قابل ویرایش

پیشگفتار:

این قابلیت که بتوان یک کامپیوتر را در هر کجا به کامپیوتری دیگر در جایی دیگر متصل کرد، به منزله یک سکه دو رو است؛ برای اشخاصی که در منزل هستند گردش در اینترنت بسیار لذت بخش است در حالی که برای مدیران امنیت در سازمان ها، یک کابوس وحشتناک به حساب می آید.

«دیوار آتش» پیاده سازی مدرنی از روش قدیمی حصارهای امنیتی است: خندقی عمیق دور تا دور قلعه حفر می کردند. این الگو همه را مجبور می کند تا برای ورود یا خروج از قلعه، از یک پل متحرک و واحد بگذرند و بتوان همه را توسط پلیس حراست بازرسی کرد. در دنیای شبکه های کامپیوتری، همین راهکار ممکن خواهد بود: یک سازمان می تواند هر تعداد شبکه محلی داشته باشد که به صورت دلخواه به هم متصل شده اند، اما تمام ترافیک ورودی یا خروجی سازمان صرفاً از طریق یک پل متحرک (همان دیوار آتش) میسر است.

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

فهرست مطالب

فهرست مطالب… 3

فهرست شکل ها… 9

فهرست جدول ها… 11

چکیده (فارسی)… 12

فصل اول: دیوارهای آتش شبکه… 13

1-1 : مقدمه… 14

1-2 : یک دیوار آتش چیست؟… 15

1-3 : دیوارهای آتش چه کاری انجام می دهند؟… 16

1-3-1 : اثرات مثبت… 16

1-3-2 : اثرات منفی… 17

1-4 : دیوارهای آتش، چه کارهایی را نمی توانند انجام دهند؟… 18

1-5 : چگونه دیوارهای آتش عمل می کنند؟… 20

1-6 : انواع دیوارهای آتش… 21

1-6-1 : فیلتر کردن بسته… 22

1-6-1-1 : نقاط قوت… 24

1-6-1-2 : نقاط ضعف… 25

1-6-2 : بازرسی هوشمند بسته… 28

1-6-2-1 : نقاط قوت… 31

1-6-2-2 : نقاط ضعف… 32

1-6-3 : دروازه برنامه های کاربردی و پراکسیها… 32

1-6-3-1 : نقاط قوت… 35

1-6-3-2 : نقاط ضعف… 36

1-6-4 : پراکسیهای قابل تطبیق… 38

1-6-5 : دروازه سطح مداری… 39

1-6-6 : وانمود کننده ها… 40

1-6-6-1 : ترجمه آدرس شبکه… 40

1-6-6-2 : دیوارهای آتش شخصی… 42

1-7 : جنبه های مهم دیوارهای آتش کارآمد… 42

1-8 : معماری دیوار آتش… 43

1-8-1 : مسیریاب فیلترکننده بسته… 43

1-8-2 : میزبان غربال شده یا میزبان سنگر… 44

1-8-3 : دروازه دو خانه ای… 45

1-8-4 : زیر شبکه غربال شده یا منطقه غیرنظامی… 46

1-8-5 : دستگاه دیوار آتش… 46

1-9 : انتخاب و پیاده سازی یک راه حل دیوار آتش… 48

1-9-1 : آیا شما نیاز به یک دیوار آتش دارید؟… 48

1-9-2 : دیوار آتش، چه چیزی را باید کنترل یا محافظت کند؟… 49

1-9-3 : یک دیوار آتش، چه تاثیری روی سازمان، شبکه و کاربران

خواهد گذاشت؟… 50

1-10 : سیاست امنیتی … 51

1-10-1 : موضوعات اجرایی… 52

1-10-2 : موضوعات فنی… 53

1-11 : نیازهای پیاده سازی… 54

1-11-1 : نیازهای فنی… 54

1-11-2 : معماری… 54

1-12 : تصمیم گیری… 55

1-13 : پیاده سازی و آزمایش… 56

1-13-1 : آزمایش، آزمایش، آزمایش!… 57

1-14 : خلاصه … 58

فصل دوم: پیاده سازی دیوار آتش با استفاده از iptables … 60

2-1 : مقدمه… 61

2-2 : واژگان علمی مربوط به فیلترسازی بسته… 62

2-3 : انتخاب یک ماشین برای دیوار آتش مبتنی بر لینوکس… 65

2-4 : به کار بردن IP Forwarding و Masquerading… 65

2-5 : حسابداری بسته… 70

2-6 : جداول و زنجیرها در یک دیوار آتش مبتنی بر لینوکس… 70

2-7 : قوانین… 74

2-8 : تطبیق ها… 75

2-9 : اهداف… 75

2-10 : پیکربندی iptables… 76

2-11 : استفاده از iptables… 77

2-11-1 : مشخصات فیلترسازی… 78

2-11-1-1 : تعیین نمودن آدرس IP مبدا و مقصد… 78

2-11-1-2 : تعیین نمودن معکوس… 79

2-11-1-3 : تعیین نمودن پروتکل… 79

2-11-1-4 : تعیین نمودن یک رابط… 79

2-11-1-5 : تعیین نمودن قطعه ها… 80

2-11-2 : تعمیم هایی برای iptables (تطبیق های جدید)… 82

2-11-2-1 : تعمیم های TCP… 82

2-11-2-2 : تعمیم های UDP… 86

2-11-2-3 : تعمیم های ICMP… 86

2-11-2-4 : تعمیم های تطبیق دیگر… 87

2-11-3 : مشخصات هدف… 92

2-11-3-1 : زنجیرهای تعریف شده توسط کاربر… 92

2-11-3-2 : هدف های تعمیمی … 92

2-11-4 : عملیات روی یک زنجیر کامل… 94

2-11-4-1 : ایجاد یک زنجیر جدید… 94

2-11-4-2 : حذف یک زنجیر … 94

2-11-4-3 : خالی کردن یک زنجیر … 95

2-11-4-4 : فهرست گیری از یک زنجیر … 95

2-11-4-5 : صفر کردن شمارنده ها… 95

2-11-4-6 : تنظیم نمودن سیاست… 95

2-11-4-7 : تغییر دادن نام یک زنجیر… 96

2-12 : ترکیب NAT با فیلترسازی بسته… 96

2-12-1 : ترجمه آدرس شبکه… 96

2-12-2 : NAT مبدا و Masquerading… 98

2-12-3 : NAT مقصد… 99

2-13 : ذخیره نمودن و برگرداندن قوانین… 101

2-14 : خلاصه… 102

نتیجه گیری… 105

پیشنهادات… 105

فهرست شکل ها

فصل اول

شکل 1-1 : نمایش دیوار آتش شبکه… 15

شکل 1-2 : مدل OSI… 22

شکل 1-3 : دیوار آتش از نوع فیلترکننده بسته… 23

شکل 1-4 : لایه های OSI در فیلتر کردن بسته… 23

شکل 1-5 : لایه های OSI در بازرسی هوشمند بسته… 28

شکل 1-6 : دیوار آتش از نوع بازرسی هوشمند بسته… 30

شکل 1-7 : لایه مدل OSI در دروازه برنامه کاربردی… 33

شکل 1-8 : دیوار آتش از نوع دروازه برنامه کاربردی… 34

شکل 1-9 : مسیریاب فیلتر کننده بسته… 44

شکل 1-10 : دیوار آتش میزبان غربال شده یا میزبان سنگر… 45

شکل 1-11 : دروازه دو خانه ای… 46

شکل 1-12 : زیر شبکه غربال شده یا منطقه غیرنظامی… 46

شکل 1-13 : دستگاه دیوار آتش… 47

فصل دوم

شکل 2-1 : یک سیستم مبتنی بر لینوکس که به عنوان یک مسیریاب به

جلو برنده پیکربندی شده است… 67

شکل 2-2 : تغییر شکل شبکه 10.1.2.0 به عنوان آدرس 66.1.5.1 IP… 69

شکل 2-3 : مسیر حرکت بسته شبکه برای filtering… 72

شکل 2-4 : مسیر حرکت بسته شبکه برای Nat… 73

شکل 2-5 : مسیر حرکت بسته شبکه برای mangling… 73

فهرست جدول ها

فصل اول

فصل دوم

جدول 2-1 : جداول و زنجیرهای پیش فرض… 71

جدول 2-2 : توصیف زنجیرهای پیش فرض… 71

جدول 2-3 : هدف های پیش فرض… 76

جدول 2-4 : حالت های ردیابی ارتباط… 91

جدول 2-5 : سطوح ثبت وقایع… 93

جدول 2-6 : ماجول های کمکی NAT… 97

چکیده:

تامین امنیت شبکه، بخش حساسی از وظایف هر مدیر شبکه محسوب می شود. از آنجاییکه ممکن است محافظت های متفاوتی موردنیاز باشد، لذا مکانیزم های گوناگونی هم برای تامین امنیت در شبکه وجود دارد. یکی از این مکانیزم ها استفاده از دیوار آتش می باشد. مدیر شبکه باید درک بالایی از انواع دیوار آتش، نقاط قوت و ضعف هر نوع، حملات تهدید کننده هر نوع، معماری های دیوار آتش، تاثیرات آن بر شبکه و کاربران، سیاست امنیتی سازمان و همچنین نیازهای فنی پیاده سازی داشته باشد تا بتواند راه حل مناسب را انتخاب و به درستی پیاده سازی نماید و سپس آنرا مورد آزمایش قرار دهد. در همین راستا، سیستم عامل «Linux» برای پیاده سازی نرم افزاری دیوار آتش فیلتر کننده بسته، ابزاری را به نام «iptables» در اختیار کاربر قرار می دهد تا با استفاده از دستورات این ابزار بتواند قوانین و فیلترهای موردنیاز را برای کنترل مطلوب دسترسی، خواه از داخل شبکه به خارج و خواه بالعکس، پیکربندی نماید.

فصل اول: دیوارهای آتش شبکه

1-1 : مقدمه

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

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

1-2 : یک دیوار آتش چیست؟

دیوارهای آتش شبکه، سدی مابین شبکه ها به وجود می آورند که از ترافیک (traffic) ناخواسته یا بدون مجوز (unauthorized) جلوگیری می کند.

تعریف: دیوار آتش شبکه، سیستم یا گروهی از سیستمهاست که با استفاده از قوانین (rules) یا فیلترهای از پیش پیکربندی شده، دسترسی مابین دوشبکه- یک شبکه مطمئن (Trusted) و یک شبکه نامطمئن (Untrusted)- را کنترل می کند.

شکل 1-1: نمایش دیوار آتش شبکه

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

1-3 : دیوارهای آتش چه کاری انجام می دهند؟

1-3-1 : اثرات مثبت

اگر دیوارهای آتش، به درستی پیاده سازی شوند می توانند دسترسی به شبکه و از شبکه را کنترل کنند. دیوارهای آتش طوری می توانند پیکربندی شوند که از دسترسی کابران بیرونی یا بدون مجوز به شبکه ها و سرویسهای داخلی یا محرمانه جلوگیری نمایند؛ و نیز می توانند طوری پیکربندی شوند که از دسترسی کاربران داخلی به شبکه ها و سرویس های بیرونی یا بدون مجوز جلوگیری کنند. برخی از دیوارهای آتش می توانند داخل یک سازمان طوری قرار بگیرند که دسترسی به سرویسها را مابین بخشها و دیگر شبکه های محرمانه کنترل کنند.

-11-1-2 : تعیین نمودن معکوس

بسیاری از نشانه ها (flags)، مانند -s یا -d می توانند قبل از آرگومانهای خود یک علامت ‘!’ (یعنی نقیض) داشته باشند تا آدرس های غیر از آدرس داده شده را تطبیق دهند. به عنوان مثال، -s ! localhost هر بسته ای را که از localhost نیاید تطبیق می دهد.

2-11-1-3 : تعیین نمودن پروتکل

پروتکل را می توان با استفاده از نشانه -p یا -protocol تعیین نمود. پروتکل می تواند یا شماره معادل یک پروتکل باشد مانند 23 برای پروتکل TCP و یا یک نام مانند TCP ، UDP یا ICMP. بزرگ یا کوچک بودن حروف اهمیتی ندارد، پس هردوی tcp و TCP درست هستند. پیشوند ‘!’ را می توان برای معکوس کردن، قبل از نام پروتکل قرار داد. به عنوان مثال -p ! TCP برای مشخص کردن بسته های غیر TCP است.

2-11-1-4 : تعیین نمودن یک رابط (interface)

گزینه های -i یا -in-interface و -o یا -out-interface نام رابطی را مشخص می کنند که باید تطبیق یابد. یک رابط، وسیله فیزیکی است که بسته، به آن وارد می شود

(-i) یا از آن خارج می شود (-o). با استفاده از دستور ifconfig می توان فهرست رابط هایی را که فعال هستند، مشاهده نمود.

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

dial-up که از پروتکل نقطه به نقطه (ppp) استفاده می کنند بسیار مفید خواهد بود. اولین رابط از این نوع را با ppp0 نشان می دهیم.

اگر در انتهای نام رابط یک علامت ‘ + ‘ قرار دهیم، تمام رابط هایی که نامشان با آن رشته شروع می شود، تطبیق خواهند یافت چه در حال حاضر موجود باشند و چه نباشند. به عنوان مثال، برای تعیین قانونی که تمام رابط های ppp را تطبیق خواهد کرد، از گزینه -i ppp+ استفاده می شود.

عبارات کلیدی

  • پایان نامه بررسی دیوار آتش مبتنی بر سیستم عامل لینوکس
  • پایان نامه بررسی دیوار آتش مبتنی بر سیستم عامل لینوکس
  • مقاله بررسی دیوار آتش مبتنی بر سیستم عامل لینوکس
  • پروژه بررسی دیوار آتش مبتنی بر سیستم عامل لینوکس
  • تحقیق بررسی دیوار آتش مبتنی بر سیستم عامل لینوکس
  • دانلود پایان نامه بررسی دیوار آتش مبتنی بر سیستم عامل لینوکس
  • بررسی دیوار آتش
  • سیستم عامل لینوکس

خرید فایل

ارسال شده در