ACL در سیسکو یکی از مهمترین ابزارهای کنترل ترافیک و افزایش امنیت شبکه است که به مدیر شبکه اجازه میدهد عبور یا مسدودسازی بستهها را بر اساس معیارهای مشخص مدیریت کند. این قابلیت بهطور گسترده روی سوییچ سیسکو و روترهای Cisco برای مدیریت دسترسی کاربران و تجهیزات شبکه مورد استفاده قرار میگیرد. در این مقاله با مفهوم ACL، انواع Standard و Extended، کاربردها، نحوه نوشتن دستورات و بهترین محل اعمال آن در شبکههای Cisco آشنا میشویم.
ACL در سیسکو چیست؟
ACL یا Access Control List مجموعهای از قوانین در تجهیزات سیسکو است که برای اجازه دادن یا مسدود کردن ترافیک شبکه بر اساس IP، پروتکل، پورت و سایر مشخصات بسته استفاده میشود.
این فیلترها عمدتاً در روترها و سوئیچهای لایه ۳ (Layer 3 Switches) پیکربندی میشوند تا امنیت شبکه را افزایش داده و ارتباطات ناخواسته را پیش از ورود به بخشهای حساس محدود کنند. با استفاده از Access Control List، شما میتوانید تعیین کنید که کدام سیستمها یا زیرشبکهها حق ارتباط با یکدیگر را دارند و کدامیک باید ایزوله شوند. این ابزار قدرتمند علاوه بر مدیریت امنیت، در بهینهسازی ترافیک شبکه نیز نقش بسزایی دارد و از مصرف بیرویه پهنای باند توسط دادههای نامعتبر جلوگیری میکند.
ACL چه کاربردی در شبکههای سیسکو دارد؟
بسیاری از افراد تصور میکنند که فیلتر ترافیک در روتر سیسکو تنها برای مسدود کردن (Drop کردن) ارتباطات به کار میرود، اما در واقع ACL یک ابزار قدرتمند برای کنترل هوشمند جریان ترافیک است. علاوه بر فیلترینگ، میتوان از این قوانین برای دستهبندی ترافیک (QoS) و اجرای خطمشیهای پیشرفته شبکه استفاده کرد.
مهمترین کاربردهای پیکربندی ACL در تجهیزات سیسکو عبارتند از:
- کنترل دسترسی کاربران به منابع شبکه: تعیین دقیق اینکه کدام کاربران یا دپارتمانها مجاز به برقراری ارتباط با سرورهای مهم سازمان هستند.
- محدود کردن ترافیک بین VLANها یا سابنتها: جلوگیری از ارتباطات غیرضروری میان بخشهای ایزولهشده (مانند قطع ارتباط شبکه کاربران مهمان با شبکه مالی).
- افزایش امنیت در برابر دسترسیهای غیرمجاز: ایجاد یک سد دفاعی اولیه با مسدودسازی IPهای ناشناس و ترافیکهای مشکوک به حملات سایبری.
- فیلتر کردن پروتکلها و پورتهای خاص: باز گذاشتن دسترسی به سرویسهای ضروری (مانند وب یا ایمیل) و مسدود کردن پورتهای پرخطر یا غیرمجاز (مانند Telnet).
- کمک به مدیریت پهنای باند و خطمشیهای امنیتی: دور ریختن ترافیک غیرضروری در همان نقطه ورود، که از مصرف پهنای باند و پردازنده روتر جلوگیری میکند.
نحوه عملکرد ACL در سیسکو
وقتی یک بسته داده وارد روتر یا سوئیچ سیسکو میشود، Access Control List سیسکو آن را بهصورت ساختاریافته از بالا به پایین بررسی میکند.
رد ضمنی (Implicit Deny) به این معناست که در انتهای تمام لیستهای کنترل دسترسی، یک قانون نامرئی برای مسدودسازی وجود دارد. یعنی اگر بستهای تا انتهای لیست پیش برود و با هیچکدام از قوانین شما تطبیق نداشته باشد، بهصورت پیشفرض مسدود (Drop) خواهد شد. بنابراین، در هر ACL حداقل به یک دستور Permit نیاز دارید.
مفهوم First Match: سیستم به محض یافتن اولین تطابق بین مشخصات بسته و قوانین، کار را متوقف کرده و همان قانون را اجرا میکند. به همین دلیل، اهمیت ترتیب نوشتن deny و permit در ACL بسیار بالاست. همیشه باید قوانین خاصتر (مثلاً بلاک کردن یک IP) را در بالای لیست و قوانین کلیتر (مثل اجازه دسترسی به کل شبکه) را در پایین قرار دهید. در نهایت، باید به جهت اعمال این لیستها نیز توجه داشت؛ تاثیر ACL روی ترافیک شبکه کاملاً به این بستگی دارد که آن را در حالت ورودی به روتر تنظیم کردهاید یا خروجی از آن.
اجزای اصلی یک ACL در سیسکو
برای درک بهتر Cisco IOS ACL Commands، باید با ساختار و کلمات کلیدی آن آشنا باشید.
در ادامه اجزای اصلی تشکیلدهنده این لیستها را بررسی میکنیم:
شماره یا نام ACL
شماره ACL در سیسکو شناسه لیست شماست که نوع فیلترینگ را هم مشخص میکند. به عنوان مثال، در نوع استاندارد از اعداد ۱ تا ۹۹ و در نوع توسعهیافته از ۱۰۰ تا ۱۹۹ استفاده میشود.
دستور permit
کلمهای کلیدی است که به روتر فرمان میدهد در صورت تطابق شرایط بسته با این قانون، اجازه عبور (Allow) صادر شود.
دستور deny
دقیقاً برعکس permit عمل میکند؛ یعنی اگر بسته با شرایط این خط همخوانی داشت، باید مسدود (Drop) شود.
Source IP
آدرس IP دستگاه یا شبکهای است که ترافیک را تولید و ارسال کرده است (مبدا بسته).
Destination IP
آدرس IP مقصدی است که بسته میخواهد به آن برسد (این بخش فقط در Extended ACL بررسی میشود).
Wildcard Mask
اعداد خاصی که به روتر میگویند کدام بخش از آدرس IP باید دقیقاً بررسی شود و کدام بخش اهمیت ندارد و میتواند نادیده گرفته شود.
پروتکل و پورت در Extended ACL
شما میتوانید فیلترینگ را بر اساس نوع پروتکل (مثل TCP، UDP ،ICMP) یا شماره پورتهای خاص (مثل پورت ۸۰ برای وب) اعمال کنید.
جدول خلاصه اجزای ACL
| جزء دستور | توضیح عملکرد | نمونه در خط فرمان |
|---|---|---|
| شماره / نام | هویت و نوع ACL را تعیین میکند. | access-list 101 |
| Action | تصمیم روتر (اجازه یا انسداد). | permit یا deny |
| پروتکل | نوع ترافیک انتقالی (در نوع Extended). | tcp , ip |
| Source IP | آدرس IP تولیدکننده ترافیک. | 192.168.1.10 |
| Destination IP | آدرس IP گیرنده نهایی ترافیک. | 10.10.10.0 |
| Wildcard Mask | ماسک معکوس برای تعیین وسعت شبکه. | 0.0.0.255 |
| پورت (Port) | سرویس مدنظر در لایه انتقال. | eq 80 |
انواع ACL در سیسکو
لیستهای کنترل دسترسی در سیسکو از نظر نوع فیلترینگ و شیوه تعریف به چند دسته تقسیم میشوند، اما مهمترین و پرکاربردترین آنها برای آموزش پایه و پیادهسازی عملی، Standard ACL و Extended ACL هستند.
Standard ACL چیست؟
Standard ACL نوعی Access List در سیسکو است که فقط آدرس IP مبدا را بررسی میکند و برای محدودسازی ساده دسترسی در شبکه به کار میرود. این نوع لیست، هیچ توجهی به مقصد نهایی بسته، نوع پروتکل یا شماره پورت سرویسها ندارد و فقط بر اساس فرستنده تصمیمگیری میکند.
Extended ACL چیست؟
این نوع از ACL نسبت به نوع استاندارد بسیار دقیقتر و منعطفتر عمل میکند. Extended ACL ترافیک را نهتنها بر اساس Source IP، بلکه بر اساس Destination IP، نوع پروتکل شبکه (TCP/UDP/IP) و شماره پورتها فیلتر میکند. کاربرد اصلی آن در سناریوهای امنیتی حساس و خطمشیهای کنترلی پیشرفته است.
Named ACL چیست؟
در شبکههای بزرگ، به خاطر سپردن شمارههای اختصاصیافته به لیستها دشوار است. Named ACL به شما امکان میدهد تا بهجای استفاده از اعداد، قوانین را با نامهای معنادار (مانند BLOCK-WEB یا ALLOW-ADMIN) تعریف کنید تا مدیریت و خوانایی بهتری داشته باشند. Named ACL میتواند از نوع Standard یا Extended باشد.
تفاوت Standard ACL و Extended ACL
تفاوت اصلی Standard و Extended ACL در این است که Standard فقط IP مبدا را بررسی میکند، اما Extended میتواند مبدا، مقصد، پروتکل و پورت را نیز کنترل کند.
برای درک بهتر تفاوتهای کلیدی این دو، به جدول زیر توجه کنید:
| ویژگی | ACL استاندارد (Standard) | ACL توسعهیافته (Extended) |
|---|---|---|
| معیار بررسی | فقط آدرس IP مبدا (Source IP) | IP مبدا و مقصد، پروتکل، شماره پورت |
| شماره ACL | ۱ تا ۹۹ (و ۱۳۰۰ تا ۱۹۹۹) | ۱۰۰ تا ۱۹۹ (و ۲۰۰۰ تا ۲۶۹۹) |
| دقت فیلترینگ | عمومی و ساده | بسیار بالا و دقیق (سطح سرویس) |
| محل اعمال بهینه | نزدیک به دستگاه مقصد | نزدیک به دستگاه مبدا |
Wildcard Mask در ACL چیست و چگونه کار میکند؟
Wildcard Mask در ACL مشخص میکند کدام بخش از آدرس IP باید دقیق بررسی شود و کدام بخش میتواند نادیده گرفته شود.
تفاوت Wildcard Mask و Subnet Mask
بسیاری از کاربران این دو را با هم اشتباه میگیرند. در تجهیزات سیسکو، رویکرد Wildcard Mask کاملاً برعکس Subnet Mask است:
- عدد 0 به معنی این است که آن بخش (اکتت) از آدرس IP باید دقیقاً بررسی و تطبیق داده شود.
- عدد 255 به این معنی است که آن بخش از آدرس IP اهمیتی ندارد و روتر آن را نادیده میگیرد.
مثال برای محاسبه Wildcard Mask
سادهترین راه محاسبه، کم کردن Subnet Mask از عدد 255.255.255.255 است:
- شبکه 192.168.1.0/24: سابنت ماسک آن 255.255.255.0 است ➔ 0.0.0.255 میشود.
- شبکه 10.10.10.0/30: سابنت ماسک آن 255.255.255.252 است ➔ 0.0.0.3 میشود.
| آدرس شبکه / تکهاست | Subnet Mask | Wildcard Mask | توضیحات |
|---|---|---|---|
| 192.168.1.0 /24 | 255.255.255.0 | 0.0.0.255 | اعمال روی کل سابنت کلاس C |
| 172.16.0.0 /16 | 255.255.0.0 | 0.0.255.255 | اعمال روی کل سابنت کلاس B |
| 10.10.10.0 /30 | 255.255.255.252 | 0.0.0.3 | مناسب ارتباطات Point-to-Point |
| 192.168.1.5 | 255.255.255.255 | 0.0.0.0 | اعمال روی فقط یک هاست (IP مشخص) |
نحوه نوشتن Standard ACL در سیسکو
پیکربندی ACL در Cisco شامل دو گام است: تعریف قانون و اعمال ACL روی Interface.
Syntax دستور Standard ACL
فرمت کلی دستور به شکل زیر است:
access-list 10 deny any
access-list 10: عدد ۱۰ نشانگر استاندارد بودن لیست است.
permit 192.168.1.0 0.0.0.255: اجازه عبور ترافیکِ مبدا از شبکه 192.168.1.0.
deny any: مسدود کردن صریحِ مابقی ترافیکها از هر مبدا دیگری (تأکید بر Implicit Deny).
مثال عملی از Standard ACL
فرض کنید میخواهیم فقط شبکه 192.168.1.0/24 به یک سرور دسترسی داشته باشد و سایر شبکهها مسدود شوند. با نوشتن دستورات بالا این هدف محقق میشود. از آنجا که Standard ACL فقط مبدا را میسنجد، بهتر است آن را روی اینترفیس روتر که متصل به شبکه سرور (مقصد) است اعمال کنیم تا ارتباط دستگاههای مبدا با سایر بخشهای شبکه بهاشتباه قطع نشود.
اعمال Standard ACL روی اینترفیس
برای فعالسازی قوانین، وارد اینترفیس روتر شده و با دستور ip access-group جهت فیلتر (in یا out) را مشخص میکنیم:
ip access-group 10 in
نحوه نوشتن Extended ACL در سیسکو
نوشتن ACL در روتر سیسکو با استفاده از نوع Extended، به شما قابلیت کنترل دقیق پورتها و پروتکلها را میدهد.
Syntax دستور Extended ACL
ساختار این دستور نسبت به استاندارد پیچیدهتر است:
access-list 101 deny ip any any
access-list 101: عدد ۱۰۱ نشاندهنده Extended ACL است.
tcp: مشخص کردن پروتکل لایه ۴.
192.168.1.0 0.0.0.255: شبکه مبدا.
any: شبکه مقصد (در اینجا یعنی هر مقصدی).
eq 80: پورت برابر با ۸۰ (سرویس وب HTTP).
deny ip any any: مسدود کردن ترافیک سایر IPها از هر مبدا به هر مقصد.
مثال عملی از Extended ACL
فرض کنید میخواهیم شبکه مدیریت (10.1.1.0/24) تنها بتواند از طریق وب (HTTP/HTTPS) به اینترنت یا سایر شبکهها دسترسی داشته باشد. در اینجا از پورتهای 80 و 443 استفاده میکنیم و مابقی ترافیکها مانند پینگ یا فایل شیرینگ را بلاک میکنیم.
اعمال Extended ACL روی اینترفیس
چون ما مبدا، مقصد و پورت را دقیقاً در دستور مشخص کردهایم، بهتر است Extended ACL در نزدیکترین اینترفیس به منبع تولید ترافیک (Source) اعمال شود تا از ورود دادههای مسدودشده به شبکه و هدررفت پهنای باند جلوگیری گردد:
ip access-group 101 in
تفاوت ACL ورودی (Inbound) و خروجی (Outbound)
مفهوم inbound و outbound در ACL تعیین میکند که بسته در کدام مرحله از پردازش روتر باید فیلتر شود:
- Inbound ACL: قوانین فیلترینگ قبل از اینکه روتر بسته را به جدول مسیریابی (Routing Table) بفرستد، اعمال میشوند. در صورت مسدود شدن، بسته همانجا حذف میگردد.
- Outbound ACL: بسته ابتدا مسیریابی میشود تا مشخص شود از کدام اینترفیس باید خارج گردد، و درست قبل از خروج، با قوانین ACL بررسی میشود.
جدول مقایسه Inbound و Outbound
| ویژگی | Inbound (ورودی) | Outbound (خروجی) |
|---|---|---|
| زمان فیلترینگ | قبل از مسیریابی (Routing) | بعد از مسیریابی و قبل از خروج |
| مصرف پردازنده روتر | بسیار کم (حذف سریع بستههای غیرمجاز) | بیشتر (بستهها ابتدا مسیریابی میشوند) |
| نحوه اعمال | ip access-group 10 in | ip access-group 10 out |
بهترین محل برای اعمال ACL کجاست؟
بهترین محل برای اعمال Standard ACL نزدیک به مقصد (Destination) و برای Extended ACL نزدیک به مبدا (Source) است.
- دلیل اعمال Standard نزدیک مقصد: از آنجا که Standard ACL فقط ترافیک را بر اساس آدرس مبدا فیلتر میکند، اگر آن را نزدیک مبدا اعمال کنید، ممکن است دسترسی آن شبکه را به کل زیرساخت (حتی بخشهای مجاز) قطع کنید.
- دلیل اعمال Extended نزدیک مبدا: چون این نوع ACL آدرس مقصد و پورت را میداند، جلوی ترافیک نامعتبر را در همان ابتدای ورود به شبکه میگیرد. این کار مانع از اشغال بیدلیل پهنای باند و پردازش روترهای میانی میشود.
خطاهای رایج در پیکربندی ACL در سیسکو
مدیران شبکه معمولاً با چالشها و اشتباهاتی در تنظیمات روبرو میشوند.
برخی از رایجترین خطاهای تنظیم ACL عبارتند از:
- فراموش کردن Implicit Deny: به یاد داشته باشید در انتهای هر لیستی مسدودسازی پنهان وجود دارد. ننوشتن حداقل یک دستور Permit کل ارتباطات را قطع میکند.
- اشتباه در Wildcard Mask: وارد کردن Subnet Mask (مثلاً 255.255.255.0) بهجای Wildcard (0.0.0.255) رفتار روتر را کاملاً به هم میریزد.
- ترتیب نادرست Ruleها: از آنجا که روتر با اولین تطابق (First Match) متوقف میشود، اگر دستور permit ip any any را در خط اول بنویسید، دستورات deny خطوط بعدی هرگز اجرا نخواهند شد.
- اعمال روی اینترفیس یا جهت اشتباه: فعال کردن یک لیست با دستور in روی پورتی که ترافیک باید از آن out شود، بیتأثیر خواهد بود.
- استفاده نادرست از Standard بهجای Extended: استفاده از نوع استاندارد برای قطع دسترسی یک کاربر به اینترنت، ممکن است باعث قطع ارتباط آن شخص با پرینترهای داخل شبکه نیز بشود.
بررسی و عیبیابی ACL در سیسکو
برای اطمینان از عملکرد صحیح امنیت شبکه در سیسکو، استفاده از دستورات عیبیابی الزامی است. این دستورات در محیط Privileged EXEC اجرا میشوند:
- show access-lists: این دستور تمام لیستهای تعریفشده را به همراه hit count نشان میدهد. افزایش مقدار hit در کنار یک قانون، یعنی ترافیک در حال عبور از آن Rule است و قوانین شما بهدرستی Match میشوند.
- show running-config | include access-list: برای چک کردن سریع فایل تنظیمات و مشاهده ترتیب دقیق وارد شدن دستورات مفید است.
- show ip interface: با این دستور متوجه میشوید که دقیقاً روی چه اینترفیسهایی، چه شماره ACL و در چه جهتی (inbound/outbound) اعمال شده است.
اگر ترافیکی مسدود شده است، با بررسی hit count روی خطوط deny متوجه خواهید شد کدام Rule عامل بلاک کردن آن بسته است.
مثالهای کاربردی ACL در سناریوهای واقعی
برای درک بهتر، بیایید چند مثال ACL سیسکو را در پروژههای واقعی بررسی کنیم:
بستن دسترسی یک شبکه به سرور خاص
قصد داریم شبکه 192.168.1.0 نتواند به سرور مالی با IP 10.1.1.50 متصل شود، اما مابقی ارتباطات آزاد باشد. (استفاده از Extended):
access-list 110 permit ip any any
نتیجه: ترافیک به سمت سرور هدف Drop شده و سایر ترافیکها با قانون دوم عبور میکنند.
اجازه فقط به ترافیک وب (HTTP/HTTPS)
میخواهیم فقط ترافیک وب از یک کلاینت مشخص (192.168.2.10) به بیرون برود:
access-list 120 permit tcp host 192.168.2.10 any eq 443
access-list 120 deny ip any any
نتیجه: کلاینت فقط به سایتها دسترسی دارد و امکان پینگ (ICMP) نخواهد داشت.
مسدود کردن Telnet و اجازه دسترسی SSH
برای افزایش امنیت، پورت پرخطر ۲۳ مسدود و پورت امن ۲۲ برای ادمین باز گذاشته میشود:
access-list 130 deny tcp any any eq 23
access-list 130 permit ip any any
نتیجه: تنها کامپیوتر ادمین حق SSH زدن دارد و سرویس Telnet کلاً برای همه شبکهها مسدود است.
محدود کردن دسترسی بین VLANها
فرض کنید شبکه پرسنل (VLAN 10: 10.0.10.0/24) نباید شبکه مهمان (VLAN 20: 10.0.20.0/24) را ببیند.
access-list 140 permit ip any any
نتیجه: ترافیک بین این دو سابنت ایزوله میشود.
کلام آخر
Access Control List (ACL) یکی از پایهایترین و درعینحال مهمترین ابزارهای امنیت و کنترل ترافیک در شبکههای سیسکو است. مدیران شبکه با استفاده از این لیستها مشخص میکنند که چه ترافیکی حق حیات و عبور در تجهیزاتشان را دارد. انتخاب صحیح بین Standard و Extended ACL، تعیین دقیق Wildcard Mask، توجه به ترتیب قوانین (First Match) و در نهایت، تعیین محل مناسب اعمال (نزدیک مبدا یا مقصد)، نقش مهمی در عملکرد پایدار و بدون خطای شبکه دارد. تسلط بر پیکربندی ACL در Cisco، گام بزرگی برای طراحی زیرساختهای ایمن است.
سوالات متداول
ACL در سیسکو چیست؟
مجموعهای از قوانین در روترها و سوئیچهاست که ترافیک شبکه را بر اساس IP، پروتکل و پورتها فیلتر کرده و اجازه عبور داده یا آن را مسدود میکند.
تفاوت Standard ACL و Extended ACL چیست؟
Standard ACL فقط IP مبدا را بررسی میکند و کنترل سادهای دارد، اما Extended ACL مبدا، مقصد، نوع پروتکل و شماره پورت را با دقت بالایی فیلتر میکند.
بهترین محل برای اعمال Standard ACL کجاست؟
بهترین محل اعمال این نوع لیست، تا حد امکان در نزدیکترین اینترفیس به شبکه مقصد (Destination) است.
بهترین محل برای اعمال Extended ACL کجاست؟
بهترین محل برای اعمال آن، تا حد امکان در نزدیکترین اینترفیس روتر به دستگاه فرستنده (Source) است تا پهنای باند بیهوده اشغال نشود.
Wildcard Mask در ACL چیست؟
اعدادی در دستورات روتر که برعکس Subnet Mask عمل کرده و به سیستم نشان میدهند کدام اکتتهای یک آدرس IP باید دقیقاً بررسی شود و کدام بخشها اهمیتی ندارند.
چرا ACL کار نمیکند؟
دلایل متعددی مثل نوشتن قانون در زیر خط permit ip any any، استفاده از سابنت ماسک به جای وایلدکارد ماسک، اعمال روی اینترفیس اشتباه یا جهت اشتباه (in/out) و فراموشی قانون مسدودسازی پنهان باعث کار نکردن ACL میشوند.
انتخاب تجهیزات مناسب، تنها به خرید یک مدل خاص محدود نمیشود؛ بلکه به انتخاب کانفیگی متناسب با نیاز واقعی سازمان بستگی دارد. در ماهان شبکه ایرانیان، کارشناسان فنی با بررسی تعداد کاربران، نوع نرمافزارهای سازمانی، نیازهای پردازشی و بودجه شما، مناسبترین مدل و کانفیگ را پیشنهاد میدهند. اگر برای خرید سرور اچ پی یا سایر تجهیزات شبکه جهت ارتقاء زیرساخت خود به راهنمایی نیاز دارید، پیش از تصمیمگیری با کارشناسان ما مشورت کنید تا با اطمینان، راهکاری متناسب با نیاز امروز و توسعه آینده کسبوکار خود انتخاب کنید.














