جایگاه لیست های دستیابی در روتر

امنیت شبکه های کامپیوتری به یکی از داغ ترین مباحث در دنیای فناوری اطلاعات و ارتباطات تبدیل شده است . ایجاد و نگهداری یک شبکه ایمن و مطمئن از جمله اهداف مشترک ( حداقل بر روی کاغذ!  ) تمامی سازمان ها و موسسات تجاری در عصر حاضر می باشد .کارشناسان امنیت اطلاعات از امکانات سخت افزاری و نرم افزاری متعددی در این رابطه استفاده می نمایند.بکارگیری پتانسیل های موجود در برخی دستگاه های شبکه ای( نظیر لیست های دستیابی در روتر ) نمونه ای در این رابطه است .
با استفاده از لیست های دستیابی (Access Lists) می توان دستیابی به یک شبکه را در سطح روتر کنترل و  ترافیک های خاصی را به منظور ورود و یا خروج از شبکه فیلتر نمود.لیست های دستیابی را می توان برای تمامی پروتکل های شبکه ای قابل روت ( نظیر IP ,AppleTalk ) پیکربندی نمود  .
در ادامه با جایگاه و ماهیت لیست های دستیابی به منظور پیکربندی روتر در جهت افزایش امنیت یک شبکه کامپیوتری بیشتر آشنا می شویم .

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

ضرورت پیکربندی و استفاده از لیست های دستیابی 
برای پیکربندی و  استفاده از لیست های دستیابی دلایل متعددی وجود دارد :

  • اعمال محدودیت در خصوص بهنگام سازی محتویات روتینگ و یا کنترل بر روی ترافیک ورودی و یا خروجی

  • ارائه یک سطح اولیه امنیت در شبکه. با استفاده از لیست های دستیابی می توان یک سطح اولیه امنیتی را به منظور دستیابی به یک شبکه تعریف نمود .

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

  • با استفاده از لیست های دستیابی می توان امکان دستیابی یک هاست به یک بخش خاص از شبکه را فراهم نمود و برای هاست دیگر ، امکان دستیابی به همان بخش را سلب نمود . 

  • از لیست های دستیابی می توان به منظور اتخاذ تصمیم در خصوص ترافیک مجاز و یا غیرمجاز در سطح اینترفیس های روتر استفاده نمود . به عنوان نمونه ، می توان تمامی ترافیک e-mail  را روت و یا تمامی ترافیک Telnet را بلاک نمود .

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

لیست های دسیابی اولیه و پیشرفته
در این مطلب با نحوه استفاده از لیست های دستیابی استاندارد و استاتیک توسعه یافته آشنا خواهیم شد که از آنها به عنوان لیست های دستیابی اولیه نام برده می شود. برخی از لیست های دستیابی اولیه می بایست با هر پروتکل روت شده که بر روی اینترفیس های روتر پیکربندی شده است ،‌استفاده گردد .
علاوه بر لیست های دستیابی اولیه که در این مطلب به تشریح آنها خواهیم پرداخت ، لیست های دستیابی پیشرفته تری نیز وجود دارد که با استفاده از آنها می توان ویژگی های امنیتی اضافه تری را به منظور  کنترل بیشتر بر روی مبادله بسته های اطلاعاتی اعمال نمود .

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

  • مرحله اول : ایجاد یک لیست دستیابی

  • مرحله دوم : نسب دادن لیست دستیابی به یک اینترفیس

در ادامه به تشریح هر یک از مراحل فوق خواهیم پرداخت .

مرحله اول : ایجاد لیست های دستیابی
برای هر پروتکلی که قصد فیلترینگ آن را بر روی هر اینترفیس روتر داریم ، می بایست لیست های دستیابی را ایجاد نمود . برای برخی پروتکل ها می بایست یک لیست دستیابی را برای فیلترینگ ورودی و یک لیست دستیابی دیگر را برای کنترل ترافیک خروجی تعریف نمود . جداول 1 و 2 ، پروتکل هائی را که می توان با استفاده از لیست های دستیابی آنها را فیلتر نمود مشخص می نماید .

پروتکل

Apollo Domain
 IP
IPX
ISO CLNS
NetBIOS IPX
Source-route bridging NetBIOS

   جدول 1 : مراجعه به پروتکل ها در لیست های دستیابی بر اساس نام     

 محدوده

پروتکل

99 - 1

IP

199 - 100

Extended IP

299 - 200

Ethernet type code

799 - 700

Ethernet address

299 - 200

Transparent bridging (protocol type)

799 - 700

Transparent bridging (vendor code)

1199 - 1100

Extended transparent bridging

399 - 300

DECnet and extended DECnet

499 - 400

XNS

599 - 500

Extended XNS

699 - 600

AppelTalk

299 - 200

Source-route bridging (protocol type)

799 - 700

Source-route bridging (vendor code)

899 - 800

IPX

999 - 900

Extended IPX
1099 - 1000IPX SAP
100 - 1Standard VINES
200 - 101Extended VINES
300 - 201Simple VINES

   جدول 2 : مراجعه به پروتکل ها در لیست های دستیابی بر اساس اعداد     

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

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

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

مفهوم عبارت  Deny All Traffic
در انتهای هر لیست دستیابی از یک عبارت Deny all traffic استفاده خواهد شد . بنابراین ، اگر یک بسته اطلاعاتی با هیچیک از شرایط مشخص شده مطابقت ننماید ، بسته اطلاعاتی بلاک خواهد شد .

اولویت عبارات در یک لیست دستیابی 
هر عبارت جدید در یک لیست دستیابی ، به انتهای لیست اضافه خواهد شد . همچنین توجه داشته باشید که نمی توان عبارات خاصی را در لیست دستیابی حذف نمود و در صورت نیاز می بایست تمام لیست دستیابی حذف و مجددا" با شرایط جدید ایجاد گردد .
اولویت عبارات موجود در یک لیست دستیابی بسیار حائز اهمیت است . نرم افزار IOS ، بسته اطلاعاتی را متناسب با هر یک از ضوابط تعریف شده در عبارات با توجه به اولویت تعریف شده، بررسی می نماید و در صورت مطابقت با یکی از ضوابط تعریف شده ، از سایر عبارات صرفنظر خواهد کرد (نظیر عبارت معروف IF Then Else در دنیای برنامه نویسی است ) .
در صورتی که عبارتی تعریف شده است که در آن با صراحت مجوز لازم برای تمامی ترافیک صادر شده باشد ، سایر عبارات موجود در لیست بررسی نخواهند شد . همچنین ، در صورتی که لازم باشد به یک لیست دستیابی عبارات جدیدی اضافه گردد ،‌ می بایست لیست دستیابی را حذف و مجددا" آن را به همراه موجودیت های جدید ایجاد نمود .

ایجاد و ویرایش عبارات لیست دستیابی بر روی یک سرویس دهنده TFTP
با توجه به اهمیت اولویت عبارات موجود در یک لیست دستیابی و عدم امکان تغییر و یا حذف اولویت ها  ، شرکت سیسکو توصیه نموده است که تمامی عبارات لیست دستیابی بر روی‌ یک سرویس دهنده TFTP تعریف و در ادامه تمامی لیست دستیابی بر روی روتر download گردد .
برای استفاده از یک سرویس دهنده TFTP ،  در ابتدا لازم است که با بکارگیری یک ویرایشگر متن عبارات مورد نظر در لیست دستیابی را درج و فایل را با فرمت اسکی بر روی یک سرویس دهنده TFTP که برای روتر در دسترس است ،‌ ذخیره نمود . در ادامه و از طریق روتر ، از دستور copy tftp running-config file_id   به منظور کپی لیست دستیابی بر روی روتر استفاده می گردد . در نهایت از دستور  copy running-config startup-config به منظور ذخیره لیست دستیابی درون حافظه NVRAM روتر استفاده می گردد . در صورتی که لازم است تغییراتی در لیست دستیابی اعمال گردد ، تغییرات را در فایل متن بر روی سرویس دهنده TFTP اعمال و فایل متن ویرایش شده را بر روی روتر کپی می نمائیم .
توجه داشته باشید که اولین دستور در یک فایل حاوی لیست دستیابی ویرایش شده ، حذف لیست دستیابی قبلی است . ( مثلا" استفاده از دستور no access-list در ابتدای فایل ) . در صورت عدم انجام این کار ، پس از کپی فایل ویرایش شده به روتر عبارات اضافی به انتهای لیست دستیابی موجود اضافه خواهند شد .

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

  
نویسنده : ali gooliof ; ساعت ۱٠:٤۳ ‎ب.ظ روز ۱۳۸٧/٢/٢
تگ ها :