Access Control List یا ACL یک نوع فیلترینگی است که به کمک آن میتوانیم جریان ترافیک را در شبکه کنترل نماییم که چه بستههایی اجازه ورود یا خروج از شبکه ما را دارند یا ندارند. این فیلتر معمولاً توسط ادمین شبکه تعیین و مورد استفاده قرار خواهد گرفت تا به کمک آن بتوانیم کنترل و امنیت بیشتر را برای شبکه خود فراهم کنیم. این فیلترها را میتوان روی بسیاری از دستگاههای شبکه مانند سوئیچ، روتر و فایروال مورد استفاده قرارداد.
ACLsها یک مدل عالی برای کنترل جریان ترافیک ورودی یا خروجی از شبکه است این کنترل میتواند به صورت ساده بر اساس آدرس IP صورت بگیرد و یا بر اساس آیتمها متفاوت و پیچیده انجام گیرد.
ACL را میتوانیم برای پروتکلهای مختلف مانند IP ، AppleTalk و … استفاده نمود. مهمترین دلیل استفاده از ACLsها فراهم نمودن امنیت برای شبکه است هرچند که برای کارهای دیگری مانند کنترل ترافیک نیز استفاده خواهد شد.
نحوی عملکرد ACLs
برای اینکه عملکرد ACLsها را بهتر درک نماییم یک نگهبان را که جلوی یک درب بسته مستقر شده است را تصور کنید. نگهبان بر اساس دستورالعملی که به او گفته شده اجازه عبور به افراد را خواهد داد به طور مثال به او یک لیست داده شده که فقط این افراد اجازه ورود دارند. افراد که میخواهند از این در عبور کنند نام آنها توسط نگهبان با لیست خود مطابقت داده میشود و در صورتی که نام آنها در لیست بود به آنها اجازه عبور از در را میدهد در غیر این صورت فرد اجازه عبور از در را نخواهد داشت.
ACLsها با استفاده از آیتمهای مختلف مانند پورت مبدأ و مقصد، آدرس مبدأ و مقصد، نوع پروتکل و … میتواند عمل فیلترینگ را روی بستههای ورودی یا خروجی یک پورت برای ما انجام دهد. زمانی که یک بسته به دستگاه میرسد در صورت وجود ACLs ، اطلاعات موجود در Header بسته را بررسی میکند و با آیتمهای تعریف شده در ACLs مقایسه میکنند و نسبت به آن اجازه یا عدم اجازه عبور به بسته را میدهد.
چه زمانی از ACLs استفاده میکنیم
- جهت کنترل بستههای مربوط به پروتکلهای مسیریابی
- چه نوع ترافیکی اجازه عبور یا عدم عبور دارند
- جداسازی برخی ترافیکهای خاص به منظور عملیات خاص مانند QoS
- محدود کردن ترافیک برای افزایش کارایی شبکه
- جهت مقاصد امنیتی
- اعمال محدودیتهای زمانی
- و …
انواع Access Control List
- Standard ACLs
- Extended ACLs
- Reflexive ACLs
- Time-Base ACLs
- Established ACLs
نحوی تخصیص ACLs
زمانی که یک ACLs تعریف میشود، برای عمل کردن باید به یک پورت اختصاص داد شود که میتواند در دو جهت زیر ترافیک را کنترل کند:
- Inbound : منظور ترافیکی است که وارد یک پورت میشود.
- Outbound : ترافیک است که از یک پورت خارج میشود.
با انتخاب هر کدام از این دو جهت ترافیک توسط ACLs ترافیک شروع به کنترل میشود.