مفهوم ASA ACL در تجهیزات سیسکو
معمولاً افرادی که وارد حوزهی امنیت شبکه یا مشخصاً امنیت شبکهی Cisco میشوند، مطالعه در زمینه تکنولوژیها و قابلیتهای متفاوتی که در امنیت شبکه کاربرد دارند، برای آنها جالب میباشد. ابزارهای متفاوت، کنترل بسیار زیادی در ایجاد ایمنی در شبکه های هدف به ما ارائه میدهد. البته همواره امکان پیکربندی اشتباه تجهیزات امنیت شبکه وجود دارد و همچنان خطرات جبران ناپذیزی در تفاوت بین پیکربندی اشتباه یک Router یا یک فایروال امنیت شبکه نهفته است. افراد زیادی ممکن است بهدلیل تاثیرات یک روتر بر روی کاربرد شبکه ی مجاز(Authorized Network)، به پیکربندی اشتباه یک Router پی ببرند، همچنین پیکربندی اشتباه یک فایروال شبکه میتواند بر کاربرد غیرمجاز یک شبکه خصوصی تاثیرگذار باشد که به نوبهی خود ریسک را بهشدت افزایش میدهد. بنابراین پیکربندی صحیح این تجهیزات امر بسیار مهمی در شبکه می باشد.
هدف این مقاله مروری بر چگونگی اجرای فهرستهای کنترل دسترسی یا به عبارتی ACLها (Access Control Lists) در Adaptive Security Appliance یا بهاختصار (ASA) محصول شرکت سیسکو است.
انواع ASA ACL
از آنجا که بسیاری از افرادی که وارد مباحث امنیت شبکهی سیسکو میشوند تجاربی در مورد Routerها دارند، بخش عمدهی مرور انواع ASA ACL مشابه آن بهنظر خواهد رسید، اما مسلماً تفاوتهایی هم وجود دارد؛ که باید به آنها نیز توجه نمود.
۱- ACLهای استاندارد
برخلاف سایر پلتفرمها، ASA از کاربرد ACLهای استاندارد در کنترل ترافیک پشتیبانی نمینماید، بلکه از آنها فقط در برخی پیکربندیهای محدود(OSPF (Open Shortest Path First استفاده میکند.
۲- ACLهای بسطیافته (Extended)
اکثر ACLهایی که روی ASA اجرا میشوند از نوع بسطیافتهاند. مانند سایر پلتفرمها، از ACLهای بسطیافته برای مشخص نمودن مبداء و مقصد استفاده می گردد که میتواند حاوی اطلاعاتی دربارهی پروتکل مشخصی باشد که با هم تطابق دارند.
توجه داشته باشید، هنگامی که یک ASA را پیکربندی میکنید، آن ASA بهطور پیشفرض Implicit Rule بوده و جلوی عبور ترافیک از یک Interface با سطح امنیت پایین، به یک Interface با سطح امنیت بالا را میگیرد. مگر در صورتی که یک ACL بسطیافتهی طوری پیکربندی شده باشد که هیچ ترافیکی نتواند در این مسیر حرکت کند (هرچند اجازهی عبور در مسیرهای دیگر را داشته باشد). استثنای این مورد زمانی است که ترافیک در شبکه، از یک ارتباط ایجاد شده در Interface با امنیت بالا در حال بازگشت باشد و این فقط در صورتی مجاز است که پروتکل ترافیک TCP یا UDP باشد.
علاوه موارد فوق (ICMP (Internet Control Message Protocol هم نیاز به Rule تعریفشده جهت ترافیک خروجی و بازگشتی دارد.
۳- ACLهای EtherType
ACLهای EtherType جهت کنترل ترافیکی با EtherType مشخصی که با آن تطابق دارد، به کار میرود. توجه داشته باشد وقتی یک EtherType ACL را پیکربندی میکنید یک implicit deny به صورت پیش فرض به آن نسبت داده شده است. این حکم EtherType ACL تاثیری بر ترافیک IP که قبلاً اجازهی ورود از یک ACL بسطیافته را گرفته ندارد.
پیکربندی ASA ACL
از آنجا که اکثر پیکربندیهای ASA ACL میخواهند از ACL نوع بسطیافته استفاده کنند، این بخش از مقاله بر پیکربندی این نوع تمرکز داشته و مثالی از شیوهی استفادهی آنها در کنترل ترافیک را نشان میدهد. در ادامه به مراحل نصب یک ACL بسطیافته اشاره می گردد:
- با دستور زیر وارد Privileged EXEC Mode شوید.
asa>enable
- وارد Global Configuration Mode شوید.
asa#configure terminal
- یک ورودی ACL بسطیافته (ACE) ایجاد و پیکرهبندی کنید و بنا به نیاز آنرا تکرار نمایید. (دقت کنید که Maskها معکوس نباشد.)
asa(config)#access-list acl-nameextended {deny | permit} {protocol-name |protocol-number} {any | host source-ip-address | source-ip-address source-netmask} {any | host destination-ip-address | destination-ip-address destination-netmask} [operator port [port]]
- ACL را روی Interface مناسب اعمال کنید. (توجه نمایید که interface-name با مقدار پیکربندیشدهیnameif تطابق داشته باشد.)
asa(config)#access-group acl-name {in |out} interface interface-name
مثال پیکربندی ASA ACL
در این بخش با ارائه مثالی از چگونگی کاربرد ACL بسط یافته در کنترل ترافیک شبکه و نیز تعامل آنها با Ruleهای Implicit در ACL به بررسی بیشتر پیکربندی آن می پردازیم.
هدف این پیکربندی اجازه دادن به کل ترافیک IP (ازجمله ICMP) جهت عبور از IP 172.16.1.10، که در حال حاضر در Interface چپ قرار دارد، به IP 192.168.1.100 است که در Interface راست قرار دارد؛ به شکل ۱ نگاه کنید.
نکته مهمی که باید مورد توجه قرار داد این است که سطوح امنیتی پیکربندی فعلی را به یاد داشته باشیم. فراموش نکنید ترافیکی که از یک سطح امنیتی بالا به یک سطح امنیتی پایینتر میرود به صورت پیشفرض اجازهی عبور دارد. مراحلی که در زیر اشاره شده است؛ شامل تمام مراحلی است که برای قرار دادن ASA در این پیکربندی لازم میباشد.
- وارد Privileged EXEC Mode شوید.
asa>enable
- وارد Global Configuration Mode شوید .
asa#configure terminal
- وارد Interface Configuration Mode شوید.
asa(config)#interface e0
- یک Interface IP address پیکربندی کنید.
asa(config-if)#ip address 172.16.1.1 255.255.255.0
- نام یک Interface را پیکربندی کنید.
asa(config-if)#nameif Left
- یک Interface Security Level پیکربندی کنید.
asa(config-if)#security-level 50
- Interface را فعال کنید.
asa(config-if)#no shutdown
- وارد Interface Configuration Mode شوید.
asa(config-if)#interface e1
- Interface IP Address پیکربندی کنید.
asa(config-if)#ip address 192.168.1.1 255.255.255.0
- نام یک Interface را پیکربندی کنید.
asa(config-if)#nameif Right
- یک Interface Security Level پیکربندی کنید.
asa(config-if)#security-level 75
- Interface را فعال کنید.
asa(config-if)#no shutdown
- یک ورودی Extended ACL (ACE) ایجاد و پیکربندی کنید.
asa(config-if)#access-list Left-to-Right extended permit ip host 172.16.1.10 host 192.168.1.100
- ACL را روی واسط کاربری مناسب اعمال کنید.(توجه نمایید که interface-name با مقدار پیکربندیشدهیnameif تطابق داشته باشد).
asa(config)#access-group Left-to-Right in interface Left
توجه داشته باشید که به ورودی ACL برای عبور ترافیک از چپ به راست نیاز بود. این امر به این خاطر است که Interface چپ با سطح امنیتی پایین تری نسب به Interface سمت راست، پیکربندی شده بود. همچنین بهخاطر داشته باشید که ترافیک بهصورت پیشفرض، اجازه عبور از سطوح امنیتی بالا به سطوح امنیتی پایینتر را دارد که البته این تنظیمات نیز قابل تغییر میباشد.
افرادی که تجربه کمتری در موضوعات این چنینی را دارند، پرداختن به ACL تا حدودی پیچیده میباشد. بنابراین اگر نیاز به استفاده از ACL دارید باید سناریو های متفاوت را بررسی نمایید تا به طور کامل با شیوهی کار و پیکربندی آنها جهت رسیدن به نتایج دلخواه برسید. جهت بررسی آن می توانید از GNS3ای استفاده نمایید که قابلیت شبیه سازی ASA را داشته باشد(مانند Dynamips/Dynagen).
کسانی که تازه وارد امنیت شبکه شدهاند اما تجربههایی در زمینهیتجهیزات سیسکو دارند، ورود به پلتفرم ASA بدلیل مشابهت های زیاد آن، چندان سخت نیست و فقط باید به تفاوتهای اندکی که بین پلتفرمهای Routing/Switching و پلتفرم ASA وجود دارد، توجه نمود.