1. Home
  2. »
  3. CCNA
  4. »
  5. آموزش CCNA به فارسی (بخش یازدهم)

خلاصه این مطلب :

ACL(Access Control Lists)

ACLجریان ترافیک را کنترل میکنند و می توانند از ترافیک های ناخواسته از یک منبع خاص به سوی یک مقصد مشخص جلو گیری کنند.

م توان برای یک روتر تعریف کرد چه ترافیک هایی اجازه ورود دارند  و چه ترافیکهایی اجازه خروج دارند.

ACLها به دو صورت است:

Standard

Extended

Aclها را با یک سرس اعداد از هم متمایز می کنند:

برای standardها از 1 تا 99 و همچنین از 1300 تا 1999

برای extendedها از 100 تا 199 و همچنین از 2000 تا 2699

Aclهای standardفقط بر اساس سورس آدرس تصمیم می گیرند اما در extended

هم براساس سورس و هم بر اساس مقصد (destination)   و نوع پروکل ارتباطی

می تواند تصمیم بگیرد.

برای یک interfaceدو نوع ترافیک وجود دارد in ,out

فرض کنید نمی خواهیم شبکه 192.168.10.10 به شبکه 172.16.0.0 دسترسی

داشته باشد.

برای این کار به محیط global configurationمی ریم دستور زیر رو می زنیم:

Acess-list  1

عدد واردشده می تواند بین 1 تا 99 یا 1300 تا 1999 باشد

Deny::با این دستور ما جلوی عبور ترافیک را می گیریم.

Permit:با این دستور ما اجازه عبور ترافیک را می گیریم.

در اینجا ما از denyاستفاده می کنیم.

ACCESS-LIST 1 DENY

در این مرحله ما سه انتخاب داریم:

1-وارد کردن آدرس شبکه با subnet maskآن برای جلوگیری از دسترسی این شبکه به شبکه ما.

2-any   به این معنی که جلوی تمامی ترافیکها را بگیر

3-host  به این معنی که از دسترسی یک هاست خاص جلوگیری کن.

ما در اینجا hostرو انتخاب می کنیم:

Access-list 1 deny host 192.168.1.5

 دستور بالا از دسترسی هاست 192.168.1.5 به شبکه ما جلو گیری میکند.

خب حالا نوبت این هست که بگوییم جلوی ترافیک های ورودی یا خروجی کدامinterfaceرا بگیریم.گفتیم دو حالت در interfaceها داریم in , oute.

ما باید بگوییم جلوی ترافیک های ورودی را بگیرد یا خروجی

این نکته رو داشته باشید که بهترین جا برای اختصاص دادن یک Aclاستاندارد نزدیک ترین جا به مقصد است.

برای اختصاص دادن aclبه interface ها یا اصطلاحا assign  کردن یک aclازدستور

زیر استفاده می کنیم.

Router(config)#int  fa0/0

Router(config-if)#ip access-group 1 in

خب تمام شد اما بیاد داشته باشد بعضی مواقع اتفاق می افتد که شما یکaclنوشته اید که جلو دسترسی بعضی از هاستها را بگیرد  اما می بینید که جلوی دسترس همه را گرفته یعنی همه ترافیک راdenyمی کند.چاره این کا دستور زیر هست :

Permit any

برای نوشتن aclمیتواتیم از  روش زیر نیز استفاده کنیم:

Router#conf t

Enter configuration commands, one per line.  End with CNTL/Z.

Router(config)#ip access-list standard ?

  <1-99>  Standard IP access-list number

  WORD    Access-list name

Router(config)#ip access-list standard 50

Router(config-std-nacl)#deny host 192.168.1.50

Router(config-std-nacl)#permit any an

در این حالت خط فر مان به شکل رو به رو در می آید:

Router(config-std-nacl(

چند قانون مهم در acl :

1-با یک شماره aclمی توانیم بی نهایت قانون تعریف کنیم یعنی :

deny host 192.168.1.50

deny host 192.168.1.51

deny host 192.168.1.52

permit any

2-به هر interfaceفقط میتوان یک شماره access-listورودی اختصاص داد و یک access-listخروجی .در صورت اختصاص دو aclدومی بر روی اولی over writeمی شود.

3-ترتیب نوشتن aclها مهم است .وقتی ترافیکی می آید روتر به aclمراجعه می کند و هر جا ترافیک با acl ما  match  شود(مثلا گفته باشیم ترافیک را Denyکن) دیگر سراغ aclهای بعدی نمیرود و ترافیک را deny می کند.

4- هر access-listکه نوشته میشود یک خط به انتهای آن اضافه میشود :

Deny any

این خط در انتهای هر aclوجود دارد و به صورت trance parentیا نامرئی است.

مثلا اگر دستور زیر را نوشته باشیم که فقط یک هاست را denyکند:

Access-list 1 deny host 192.168.1.5

اگر 192.168.1.6 هم بیاید باز هم denyمیشود:

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

Access-list 1 permit any

Access-list extended

قابل پیاده سازی در لایه 3و4 می باشد.

یعنی هم بر اساس ipهم بر اساس port

رنج اعداد آن 100 تا 199 و 2000 تا 2699

برای شروع ما قصد داریم که جلوی دسترسی 192.168.1.10 به 172.17.1.10 را بگیریم.

Ip access-list extended 100

Deny ip host 192.168.1.10 host 172.17.1.10

Int fa 0/0

Ip access-group 100 in

نکته:

بهترین محل برای Assignکردن یک acl extendedنزدیک ترین جا به sourceاست چون مبدا و

مقصد  مشخص است .

برعکس بهترین جا برای Assignکردن یک Aclاستاندارد نزدیک ترین جا به مقصد است.

نوشتن Aclبر اساس port

 خب حالا در نظر بکیرید که می خواهیم جلوی دسترسی آدرس 192.168.1.10 را

به وب سرور بگیریم.

Ip access-list extended 101

Deny tcp host 192.168.1.10 host 172.17.1.10 eq 80

Permit tcp any any eq 80

 

که در اینجا 172.17.1.10 ادرس وب سرور ماست.

در اینجا ما به جای ipاز tcp  استفاده کردیم و می خواهیم ترافیک را بر اساس port

ها فیلتر کنیم.

Eqبه معنی برابر بودن است .یعنی اگر درخواست رسیده برابر با پورت 80 یا    www

بود ترافیک را Deny  کن.

و در آخر هم گفتیم به هر کس  که در خواست پورت 80 را داد اجازه بده.

درا ینجا اگر بخواهیم بگوییم به هیچ چیزی دسترسی نداشته باشد و فقط به پورت

80 دسترسی داشته باشد کافی است به جای eqاز neqاستفاده کنیم.

اگر بخواهیم که یک رنج پورت را ببندیم به جای eq از rangeاستفاده می کنیم مثلاک

Range 21  80

اگر بخواهیم از یک پورت به بعد را ببندیم می توانیم به جای Eqاز qtاستفاده کنیم.

اگر بخواهیم از یک پورت به پایین را ببندیم به جای qtهز it  استفاده می کنیم.

محدود کردن دسترسی از طریق telnet  توسط acl

کار زیاد سختی نیست شما بعد از ایجاد نام کاربری و رمز عبور در روتر Aclهای مورد

نظر رو می نویسید و بعد با دستود ip access-classاون رو به telnetنصبت میدیم.

Ip access-list standard 1

Permit host 192.168.1.10

Den    any

Line vty 0

Ip access-class 1 in

امتیاز این post

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

لطفا ابتدا به حساب کاربری خود وارد شوید