Access List
Access List
Erişim Listeleri (Access List)Access list’ler sistem yöneticilerine, ağdaki trafik üzerinde geniş bir kontrol imkanı sunar. Ayrıca access list’ler router üzerinden geçen paketlere izin vermek veya reddetmek içinde kullanılır. Bunun haricinde telnet erişimleri de access list’ler kullanılarak düzenlenebilir. Oluşturulan access list’ler router’daki interface’lerin herhangi birisine giren veya çıkan trafiği kontrol edecek şekilde uygulanabilir. Eğer herhangi bir interface’e bir access list atanmışsa router bu interface’den gelen her paketi alıp inceleyecek ve access list’te belirtilen işlevi yerine getirecektir. Yani ya o paketi uygun yöne iletecek ya da paketi yönlendirmeden yok edecektir.
Router’ın interface’inden alınan bir paketin tanımlanan bir access list ile karşılaştırılma sırası şöyledir;
- Paket, access list’teki kayıtlar kayıt sırasına göre karşılaştırılır. Yani ilk önce access list’teki ilk satırla daha sonra 2,3... gibi.
- Paket, access list’de uyuşan satir bulununcaya kadar karşilaştirilir. Yani paket access list’teki 3.satırla uyuşuyorsa, bu paket access list’deki diğer satırlarla karşılaştırılmaz.
- Her access list’in sonunda “deny” satırı bulunur ve access list’deki satırlarla uyuşmayan paketlerin tamamının router tarafından imha edilmesini sağlar.
IP ve IPX ile birlikte kullanılan iki farklı türde access list vardır. Bunlar;
a ) Standart access list: Bu tür access list’te IP paketlerinin sadece kaynak (source) adreslerine bakılarak filtreleme yapılır. Izin verme ya da yasaklama bütün protokol kümesi için geçerlidir. IPX paketlerinde ise kaynak(source) ve hedef(destination) adresleri kullanılarak filtreleme yapılır.
b ) Extended access list: Bu tür access list’ler, IP paketlerinin hem kaynak hem de hedef adreslerini kontrol eder. Ayrıca Network katmanında tanımlanan protokol alanı ile Transport alanındaki port alanıda kontrol edilir. Böylece izin verilirken veya yasaklama yaparken protokol bazında bu işlemleri gerçekleştirmeye olanak sağlar. IPX paketlerinde ise kaynak adres, hedef adres Network katmanına ait protokol alanı ve Transport katmanındaki soket numarasıda kontrol edilir.
Access list’ler oluşturulduktan sonra sira bu access list’leri Router’ın interface’lerine giriş veya çikiş listesi olarak atamaya geldi. Burada giriş(inbound) ve çikiş (outbound) kavramlarini açiklayalim. Inbound access list’lerin tanımlandığı interface’lerde paketler yönlendirme işlemine tabii tutulmadan access list’deki kayıtlarla karşılaştırılır. Outbound access list’lerin tanımlandığı interface’lerde ise router’a gelen paket ilk önce yönlendirme tablosuna göre yönlendirilir, ardından access list’deki satırlarla karşılaştırılır.
Bir interface için sadece bir tane inbound ve bir tane outbound access list tanımlanabilir. Aşağıdaki tabloda herbir protokole ait tanımlanabilecek access list’lerin numara aralıkları verilmiştir.
Access List Numarası Açıklama
1-99 arası IP standart access list
100-199 arası IP extended access list
1000-1099 arası IPX SAP access list
1100-1199 arası Extended 48-bit MAC address access list
1200-1299 arası IPX summary address access list
200-299 arası Protocol type-code access list
300-399 arası DECnet access list
400-499 arası XNS standart access list
500-599 arası XNS extended access list
600-699 arası Appletalk access list
700-799 arası 48-bit MAC address access list
800-899 arası IPX standart access list
900-999 arası IPX extended acess list
Standart IP AccessLlist
Standart IP access list’leri IP paketinin kaynak IP kısmına bakarak filtreleme gerçekleştirir. Aşağıdaki örnekte access-list numarası 15 olan ve 10.3.9.3 nolu hostdan gelecek tüm paketleri kabul etmeyecek bir access list tanımlanmıştır.RouterA(config)#access-list 15 deny 10.3.9.3
Yukarıda oluşturulan access list ile sadece network’teki bir bilgisayardan gelecek paketlerin filtrelemesini sağlıyor. Peki biz birden fazla host’u etkileyecek bir access list’i nasıl oluşturacağız? Bunun için wildcard’ları kullanacağız. Wildcard’lar router’a kullanılan IP adres aralığının ne kadarının filtreleneceğini gösterir. Örneğin;
RouterA(config)#access-list 20 deny 10.3.10.1 0.0.0.0
komutundaki sıfır rakamları router’a IP adresi 10.3.10.1 olan host’a ait paketleri filtrelemesini söyler. Eğer biz 10.3.10.0 network’üne ait tüm host’lardan gelecek paketlerin filtrelenmesini istiyorsak o zaman aşagidaki komutu kullanmaliyiz.
RouterA(config)#access-list 20 deny 10.3.10.0 0.0.0.255
Eger biz 10.0.0.0 network’üne ait tüm host’lardan gelecek paketlerin filtrelenmesini istiyorsak o zaman da aşagidaki komutu kullanmaliyiz.
RouterA(config)#access-list 20 deny 10.3.10.0 0.255.255.255
Oluşturdugumuz access list’i router’ın istediğimiz interface’ine inbound veya outbound olarak ilişkilendirmeye sira geldi. Bunun için interface konfigürasyon moduna geçip “ip access-group” komutunu kullanıyoruz. Aşağıdaki örnekte 15 nolu bir standart IP access list’i oluşturulduktan sonra bu access list’e iki tane kayıt giriliyor. Ilk kayıt 10.3.10.0 network’ünden gelecek paketlerin router tarafından yönlendirilmemesini istiyor. Ardından access list’e eklenen ikinci kayıt ise tüm paketlere izin veriyor. Eğer bu son satırı girmezsek ilk satıra uymayan tüm oaketler router tarafından yok edilecektir(Zaten uyan pekatleri de yönlendirme yaptırmadığımız için router hiçbir yönlendirme işlemi yapmayacaktır). Burada bu iki kaydın access list’e yazılış sırasına dikkat edin. Bu iki kaydın yerleri değişirse uygulamaya çalıştığınız access list hiçbir işe yaramayacaktır. Bu kayıtlar girildikten sonra bu access list belirlediğimiz uygun bir arayüze outbound olarak ilişkilendirilmiştir.
RouterA(config)#access-list 15 deny 10.3.10.0 0.0.0.255
RouterA(config)#access-list 15 permit any
RouterA(config)#int e0
RouterA(config-if)#ip access-group 15 out
Extended IP Access List
Extended IP access list’ler, standart IP access list’lere oranla çok daha gelişmiş bir filtreleme imkani sunarlar. Örnegin filtreleme yaparken paketlerde taşinan protokol bilgisini kullanabilirsiniz. Böylece bazi protokollere ait paketlerin router’ın belirlediğiniz interface’lerinden çıkmasını veya o interface’lere girmesini engelleyebilirsiniz. Örneğin router’ın e0 interface’ine bağlı server’ımıza (IP adresi 10.3.20.1) gelen telnet isteklerini kesmek isteyelim. Bunun için router üzerinde yapmamız gereken işlemler şöyledir;RouterA(config)#access-list 121 deny tcp any host 10.3.20.1 eq 23
RouterA(config)#int e0
RouterA(config-if)#ip access-group 121 out
Burada 23 telnet’in kullandığı TCP port numarasıdır. Siz bu server’a gelen tüm tcp paketlerini engellemek isterseniz ise o zaman kullanacağımız komut;
RouterA(config)#access-list 121 deny tcp any host 10.3.20.1
şeklinde olacaktır.
Router üzerinde tanımlanmış access-list’leri görmek için “show access-list” komutunu kullanabilirsiniz. Eğer oluşturduğunuz access list hakkında daha geniş bilgi istiyorsanız oluşturduğunuz access list’in numarasını yukarıdaki komuta parametre olarak girmelisiniz. Örneğin;
RouterA(config)#show access-list 121
xXx SüperTeklif'e üye ol, sen de kazan! xXx
