پروژه آزمایشگاه مدار منطقی
Iptable Tutorial
حق چاپ ، توزیع و تغییر این سند تحت شرایط و مفاد و جواز مستند سازی GNU FREE ، نسخه یک عملی است . و این جا بخش های غیر متغیر مقدمه هستند و بخش های زیرین با متون Front - Cover مىتوانند اطلاعات محقق Oskar Andreasson را بیان کنند و متون Back - Cover استفاده نشده اند نسخه ای از این جواز در بخش جواز مستند سازی GNU FREE آمده است .
تمام دست نوشته ها در این آیین نامه با جواز عمومی GNU طراحی شده اند این دست نوشته ها منبع آزاد دارند . شما مىتوانید مجدد آنها را توزیع کنید و تحت شرایط جواز کلی GNU تغییر دهید همان طور در نهاد نرم افزاری FREE نسخه 2 جواز دیده شد. این دست نوشته ها با این امید توزیع مىشوند که مفید واقع شوند ولی شماتتی در این جا وجود ندارد . بدون مجوز توانایی تجاری و یا تناسب اهداف خاص به این هدف دست مىیابید . جهت جزئیات بیشتر به جواز عمومی GNU مراجعه کنید .
شما باید نسخه ای از این جواز را در این آیین نامه بیابید که تحت بخش جواز عمومی GNU آمده است . در غیر این صورت با موسسه به آدرس زیر تماس بگیرید .
اهداهای مربوطه
ابتدا مىخواهم این سند را به دوست دختر خود Ninel اهدا کنم . او بیش از آنچه که تصور مىکردم حامی من بود . من امیدوارم که بتوانم با این اهدا شما را نیز خوشحال کنم . دوم آنکه مایل هستم این اثر را به تمام موسسه دهندگان linux تقدیم کنم . این افراد سیستم عامل جالب را طراحی کرده اند .
در مورد محقق
من دارای کامپیوترهای فراوان هستم . من یک کامپیوتر LAN دارم و تمام ماشین ها بر اینترنت وصل هستند ولی باید LAN ایمن حفظ شود . iptables جدید یک نسخه ارتقا یافته از ipchain مىتوانید یک شبکه ایمن بسازید و این امر با حذف بسته های آتی عملی است . با این وجود FTP انفعالی و یا DGE در TRC مسائلی به دنبال دارند . مسائل دندانه ای کردن در کد iptables در سطح آغازین حل نشده اند . امروزه هر کس را که از آنها استفاده مىکند به سوی نسخه تولید کامل راهنمایی مىکنم و ipfwadm را ارتقا دارم . این که فعلی مىتواند در صورت نیاز استفاده شود .
چگونگی خواندن :
این سند به درستی نوشته شده است . بنابراین مىتوانید به نکات جالب iptables پی ببرید . این به معنای اطلاعات خاصی در مورد اشکالات ایمنی خاص در iptables یا Netfilter نیست اگر اشکالات خاص و رفتارهایی را در iptables و هر زیر مولف یافتید با لیت پست Netfilter تماس بگیرید و سپس خواهید توانست اشکالات واقعی را بشناسید و حل کنید اشکالات ایمنی واقعی در iptable و Netfilter فراوان هستند و یک یا دو اشکال در آن واحد گزارش شده است . آنها در صفوف اصلی Netfilter آمده اند باید اطلاعات را در مورد موضوع ارائه کنند .
مىتوان گفت مجموعه قوانین موجود در این سند پیرامون اشکالات واخل Netfilter نمىباشند . هدف اصلی توصیف چگونگی نصب قوانین در یک حالت ساده است به طوری که بتوان مسائل داخل کرد به عنوان مثال این سند نشان نمىدهد که چگونه HTTP PORT به دلایل مفاد بسته میشود آنطور که Apache در نسخه 12-2-1 گزارش کرد. این سند برای هر کس قابل استفاده است و مىتواند نشان دهد که چگونه با iptable مىتوان کار را آغاز کرد ولی در آن واحد یک روند تکامل را نیز پیچیده است . این جا اهداف و هماهنگی ها در patch - matic بیان نمىشوند . ارتقا نیاز است . اگر اطلاعات بیشتر در مورد این ارتقا لازم دارید باید patch - matic و دیگر اسناد را در صفوف اصلی Netfilter مطالعه کنید .
شرط لازم :
این سند به معلومات در مورد linux linux ، دست نوشته لایه ای ، و چگونگی کامپایل کردن kernel و بخش درونی آن نیاز دارد .
من سعی کرده ام تا تمام شرایط را قبل از توصیف این سند بررسی کنم ولی نمىتوان تمام اطلاعات قبلی را مطرح کرد .
نهادهای مورد استفاده در این سند : این نهادهای در سند زمان دستورات ، فایل و دیگر اطلاعات خاص استفاده مىشوند .
گلچین کد و خروجی دستور این چنین است و تمام خروجی ها در فونت پهنای ثابت و دستور مکتوب کاربر به صورت bold هستند:
تمام دستورات و نام های برنامه در این سند در حالت bold هستند:
تمام item سیستم مانند سخت افزار و مولف درونی kernel و item سیستم انژای مانند روابط حلقه ای که در حالت italic آمده اند
خروجی کامپیوتر به شکل this way در متن ظاهر مىشوند .
نام فایل و مسیر در سیستم فایل به شکل ….
فصل 1 : مقدمه
1-1 : چرا این سند نوشته شد :
من فضای خالی بزرگی را در HOW TOS یافتم و در آنجا اطلاعات در مورد iptable و نقش Netfilter در linux 1/4x kernel جدید کافی نبود . در بین آنها مىخواهم به سوالاتی پاسخ دهم که در مورد احتمال جدید مانند مطابق حالت بوده اند . بخش اعظم آن به صورت فایل rc…. است که در دست نوشته etc…. آمده است . این فایل اصولاً بر اساس ارتقای idowt. است .
یک دست نوشته کوچک در مورد اجرای برنامه و راه اندازی سیستم به صورت rc…. در دسترس است .
2-1 : چگونگی نوشتن :
من با مارک باکر و دیگران در سیستم Netfilter مشورت کردم . بسیاری از آنها در این اثر مستند به من کمک نموده اند و در این جا سعی کرده ام از سایت Fr.zentux.Net خود استفاده کنم . این سند فرآیند نصب را مرحله به مرحله نشان مىدهد و در مورد طرح iptables است . من مثالهای فایل re.Firewall و مثالهای یادگیری استفاده از iptables را نیز ارائه کرده ام در این جا باید تابع زنجیره های اصولی باشید و آنها را در کنار هم قرار دهید . به این ترتیب سند مىتواند آماده شود و روش منطقی تر را نشان دهد . هر زمان که این درک مشکل باشد به این سند مراجعه کنید .
3-1 : اصطلاحات مورد استفاده در سند :
این سند دارای اصطلاحاتی است که به تشریح نیاز دارند قبل از اینکه آنرا مطالعه کنید . در این بخش توصیف آنها و چگونگی انتخاب آنها در سند آمده است .
ترجمه آدرس شبکه مقصد - DNAT - روش ترجمه آدرس IP مقصد در بسته اشتاره دارد و یا تغییر آنرا نشان مىدهد . این با SNAT استفاده شد و به کاربرها در به اشتراک گذاری آدرس IP اینترنت کمک مىکند و خدمات سرویس دهنده را ارائه مىنماید. این روند با تعیین port متفاوت با آدرس IP عملی است و مسیر linux را برای ارسال ترافیک نشان مىدهد .
جریان- این اصطلاح به روابط ارسال و دریافت بسته ها در رابطه با روش جدید اشاره دارد . اصولاً این اصطلاح برای یک نوع ارتباط به کار مىرود که دو یا چند بسته را در دو جهت ارسال مىکند . در TCP این به معنای ارتباطی است که یک SYN را ارسال مىکند و سپس با SYN/ACK جواب مىدهد ولی ارتباط ارسالی SYN و جواب میزبان ICMP نیز مهم است . به عبارت دیگر از این اصطلاح به خوبی استفاده نمیکنم .
SNAT - ترجمه آدرس شبکه منبع این اصطلاح به روش ترجمه آدرس منبع به دیگری اشاره دارد . این برای چندین میزبان وجه اشتراک گذاری آدرس IP اینترنت به کار میرود زیرا نقص آدرس IP در IP 74 مطرح است ( IP 74 این را حل مىکند )
حالت - این اصطلاح بحالت بسته طبق پروتکل کنترل انتقال RFC 793 اشاره دارد و در Netfilter/iptable به کار مىرود . توجه کنید که حالات درونی و خارجی تابع ویژگی RFC 793 است . دلیل اصلی آن است که Netfilter باید چندمین فرضیه در مورد ارتباط و بسته ها ارائه کند . فضای کاربر - این اصطلاح به هر چیز که در خارج kernel روی دهد اشاره دارد به عنوان مثال تحریک iptable-h در خارج kernel است ولی iptable - A Forward p - tcp jAce Ept در kernel است زیرا قانون جدید به مجموعه قوانین اضافه میشود .
فضای kernel - این نکاتش برخلاف فضای کاربر است این اقدامات را در kernel نشان مىدهد و همه در خارج آن .
قلمرو کاربر - به فضای کاربر مراجعه کنید .
فصل 2 : آماده سازی : این فصل توصیف درک نقش Netfilter و iptable در linux است . در این جا باید کار با آزمایش آغاز شود و نصب عملی شود . با زمان کافی مىتوانید آنرا دقیقاً اجرا کنید .
1-2 : کجا به iptable دست یابیم :
بسته فضای کاربر iptables مىتواند از آدرس زیر down load شود :
http……….
این بسته iptable تسهیلات خاص فضای kernel را نشان مىدهد که در طی تولید سیستم طراحی شده اند مراحل لازم به تفصیل بررسی خواهند شد .
2-2 :نصب kernel :
برای اجرای اساس iptable باید گزینه ها در kernel راه اندازی شوند و سیستم با دستورات مربوط آماده شود .
CONFIG- PAKET- این گزینه تولید برنامه را برای ارتباط کاری سیستم با ابزار شبکه نشان مىدهد . نمونه ها به صورت tcpdump و snort است .
CONFIG- PAKET- یک نیاز برای عملکرد iptable نیست بلکه دارای موارد استعمال فراوان است . در این جا باید طرح در نظر گرفته شود . اگر آنرا نخواهید حذف مىکنید .
CONFIG - NETFILER - این گزینه در صورتی نیاز است که بخواهید از کامپیوتر به عنوان ورود به اینترنت استفاده کنید . به عبارت دیگر این روند برای هر چیز در سند نیاز است زیرا طرح اصولی هستند . البته باید ابزار درست برای رابط اضافه شوند مانند آداپتور اینترنت ، ppp و رابط SLIP . این موارد اصول iptable هستند . شما نمىتوانید چهارچوب را به kernel اضافه کنید . اگر از گزینه ها در iptable استفاده کنید باید نصب سیستم را در kernel انجام دهید . در این جا گزینه ها در kernel 9-4-2 آمده اند.
CONFIG -NF - FTP - این مدل در صورتی نیاز است که بخواهید ارتباط را بر FTP برقرار کنید . جون ارتباطات FTP به راحتی در موارد طبیعی اجرا نمیشوند باید از helper استفاده کنید . اگر این مدل را اضافه نکنید . نمىتوانید FTP را به درستی اجرا کنید .