در توضیحات قبلی در خصوص مفاهیم کلی اکسس لیستها برایتان مواردی را ارائه کردیم. در این قسمت قصد داریم با نحوه نوشتن Access List در سطح نیاز CCNA از مهارتهای شبکه شما را آشنا کنیم.
استراتژی در نوشتن اکسس لیست
برای نوشتن اکسس لیست و مشخص کردن استراتژی، در ابتدا باید احتیاجات امنیتی یا security requirments را شناسایی کنیم. سپس براساس سبک ترین و کم تعدادترین خطوط اکسس لیست به تعریف انواع اکسس لیست بپردازیم.
پس از ایجاد اکسس لیستها بایستی مطمئن شویم تا اکسس لیست های موجود و در حال اجرا چیست تا در صورتیکه لیستهایی با یکدیگر تداخل یا همپوشانی دارند را اصلاح کنیم.
اولویت لیستها، از بالا به پایین میباشد. روش متداول در نوشتن لیستها به صورت نوشتن لیستهای permit و سپس لیستهای deny میباشد.
هر اکسس لیست میتواند چندین فرمان داخل خود داشته باشد. هر خط فرمان دارای شمارهای به نام sequence است که ترتیب اعمال آنها را مشخص میکند. به صورت پیش فرض زمانی که چندین دستور در یک لیست وارد میکنیم، sequence ها با فاصلهی 10 تایی انتخاب میشوند. شماره sequence ها را میتوان به دلخواه تعیین کرد.
برای اینکه خطی بین فرمانهای قبلی اضافه کنیم میتوان از دستور زیر استفاده نمود.
اکسس لیست استاندارد
همانطور که در تصویر بالا دیده میشود، در Roleهای استاندار (که شماره های 1 تا 99 را شامل میشوند)، فقط آدرس مقصد را میتوان تنظیم کرد. در این حالت تمامی سیاستهای مورد نظرمان را بایستی بر اساس آدرس مبدا تنظیم کنیم. یا اجازه بدهیم (Permit)، یا مانع انجام شویم (deny)، و یا توسط دستور remark که توضیحی برای آن شماره از access-list است و برای خوانایی دستورات کاربرد دارد.
در تعیین آدرس مبدا به سه صورت آدرس را تعریف میکنیم. به همه (any)، به یک شبکه خاص (NET-ID + Wild-Card)، و یا تنها به یک IP (host) که معادل IP+255.255.255.255 میباشد.
نکته: در دستور اکسس لیست، در صورتیکه wild card را وارد نکنیم منظور فقط همان آدرس میباشد.
در تعداد زیاد اکسس لیستها در صورت وجود نداشته remark برای فهمیدن کاری که در حال انجام است دچار مشکل خواهیم شد.
اگر خواستیم فقط اکسس لیست یک را ببینیم از دستور show access-list 1 استفاده میکنیم
برای جلوگیری از عبور ترافیک خارج از طراحی بایستی در انتهای اکسس لیست خود از دستور access-lists 1 deny all یا معادل آن access-list 1 deny 0.0.0.0 255.255.255.255 استفاده کنید.
اکسس لیست Extended
زمانیکه در دستورaccess-list ، شماره عددی از 100 تا 199 انتخاب شود، یعنی میخواهیم از نوع اکسس لیست extended استفاده کنیم. در این نوع اکسس لیست تنظیمات بیشتری نسبت به مدل استاندارد در اختیار داریم. هرچند، بار پردازشی این نوع از مدل استاندارد بیشتر است.
در ابتدا مانند مدل استاندارد باید شماره اکسس لیست و سپس اجازه و عدم اجازه ترافیک را مشخص کنیم.
در ادامه باید پروتکلی که میخواهیم تنظیمات را براساس آن انجام دهیم را مشخص میکنیم.
با توجه به اینکه در حال در شبکههای برپایه IP هستیم، بیتردید، بیشترین تنظیماتی که انجام میشود بروی پروتکل IP خواهد بود. هرچند، اگر بخواهیم دقیقتر ترافیک را تنظیم کنیم، از پروتکل های TCP و UDP و اگر بخواهیم دسترسی ICMP به IP ایی را ببندیم بروی پروتکل ICMP کار میکنیم. بقیه موارد خارج از بحث CCNA بوده در بحثهای بعدی حتما به آنها خواهیم پرداخت.
فرض کنید کارشناسان واحد فنآوری در شبکهای با آدرس 192.168.100.0/24 قرار دارند. با توجه به اینکه باید دسترسی به تمام سطوح شبکه برای انجام کارها باز باشد از دستور زیر استفاده میکنیم:
access-lists 100 permit ip 192.168.100.0 0.0.0.255 any
معادل این دستور در اکسس لیست استاندارد: access-lists 1 permit 192.168.100.0 0.0.0.255
البته این دو دستور تفاوت اندکی با یکدیگر دارند. اگر ترافیکی غیر از ترافیک پروتکل IP، مانند ترافیک OSPF یا EIGRP از داخل این شبکه بخواهد به جایی دسترسی داشته باشد، در حالت استاندار این امکان برایش وجود دارد، اما در حالت اکستند، خیر.
برای دسترسی دادن یا گرفتن دسترسی پروتکلهایی مانند TCP میتوانیم از رنجی از پورتها در دستورات اکسس لیست مانند تصویر زیر استفاده کنیم.
نکته جالب اینجاست که زمانیکه در لایه چهار اکسس لیست مینویسیم، دستگاه بر مبنای پروتکل، پورت را ترجمه میکند و در دستورهای show نمایش میدهد.
همانند مدل استاندارد، اعمال دستور deny را نیز در آخر خواهیم داشت.
بسط دادن اکسس لیست Extended
نوشتن اکسس لیست اکستند مقداری تمرکز نیاز دارد. با توجه به اینکه در این مدل اکسس لیست باید مبدا و مقصد مشخص شود، دقت در ترافیکهای ورودی و خروجی مهم است.
اگر ترافیکی از داخل شبکه به سمت بیرون بخواهد برود، مبدا در اکسس لیست، داخل شبکه LAN است و اگر ترافیکی از بیرون (به عنوان مثال اینترنت) بخواهد بیاید داخل، مبدا، خارج شبکه LAN است.
برای استفاده از ساختارهای VPN نیاز به پروتکل IPSEC داریم که IPSEC از زیر پروتکلهای AHP (یا Authentication Header Protocol) و ESP (یا Encapsulation Security Payload) استفاده میکند.
اگر بخواهند از یکی از راه حلهای ساختاری VPN و Tunneling استفاده کنند GER (یا Generic Routing Encapsulation) به کمک خواهد آمد.
انواع ترافیک
همانگونه که گفتیم، فرآیند و استراتژی در اکسس لیستها بخشی از کارهای امنیتی است. برای مشخص کردن استراتژی دقیق نمیتوان سریع و درجا شروع به کار کرد. پیش از هر چیزی در این قسمت نیازمند اطلاعات هستیم. از اصلیترین اطلاعات مورد نیاز، انواع ترافیک در سطح شبکه میباشد. بدست آوردن این اطلاعات نیز توسط سیستمهای مانیتورینگ در بازههای حداقل یک هفته ای تا یک ماهه شکل میگیرد.
پس از جمع آوری اطلاعات و تجمیع آنها با سیاستهای کلان شرکت (که مشخص کننده انواع مجاز و غیر مجاز ترافیکهاست) میتوان به یک طراحی جامع دست یافت.
Name base Access List
تصور کنید انبوهی از دستورات را نوشتهاید و متوجه شدید که خطی از این دستورات را جا گذاشتهاید، ای ترتیب چند دستور اشتباه بوده است، حال چه باید کرد؟ بر فرض بخواهیم دو خط را جابجا کنیم و یا بین دو خط دستور را بنویسیم. با توجه به تعاریف و دستوراتی که تا کنون داشتیم این امر ممکن نیست و باید کل یک شماره از اکسس لیستها پاک شود و دوباره نوشته شود. البته این حسن این دستور است که تفاوتی بین عدد و اسم نمیگذارد و همه اکسس لیستها را بر مبنای نام در نظر میگیرد.
استفاده از دستور ip access-lists به جای access-lists امکان ایجاد تغییرات در داخل هر اکسس لیستی (چه بر مبنای شماره و چه برمبنای نام) را میدهد. البته همیشه استفاده از نام به جای اعداد واضحتر است.
پس از sequence 100 اگر از عددی مانند 200 استفاده کنیم، بین این دو عدد 100 عدد خالی وجود دارد که این نوع اکسس لیست را قابل مدیریت تر نسبت به دستور قبل میکند.
اگر بخواهیم یکی از قوانین را پاک کنیم
نکته: اسامی انتخاب شده برای اکسس لیستها مشخصا بایستی منحصر به فرد باشند.
اعمال تغییرات بروی اکسس لیست استاندارد بر منبای عدد توسط دستور ip access-list
اعمال اکسس لیستها
نوشتن اکسس لیستها به تنها تمام کار نیست. اکسس لیستها قوانین عبور و مرور هستند و بخشی موظف به پیادهسازی آنهاست. قسمتی که اکسس لیستها را اجرا میکند پورت یا همان اینترفیس در روتر است.
برای اعمال یا اصطلاحا bind شدن اکسس لیستها از دستور ip access-group در محیط انترفیس استفاده میکنیم. شماره access-group همان شماره اکسس لیست مدنظر است.
و پس از اعمال دستور running-configuration مشاهده میشود که قوانین به interface اعمال شده است.