- Katılım
- 15 May 2013
- Konular
- 971
- Mesajlar
- 6,650
- Online süresi
- 2ay 11g
- Reaksiyon Skoru
- 5,350
- Altın Konu
- 314
- Başarım Puanı
- 319
- TM Yaşı
- 12 Yıl 11 Ay 12 Gün
- MmoLira
- 22,212
- DevLira
- 15
Metin2 EP, Valorant VP dahil tüm oyun ürünlerini en uygun fiyatlarla bulabilir, Item ve Karakterlerinizi hızlıca satabilirsiniz. HEMEN TIKLA!
Bu konumuzda , Cisco IOS-XE yönlendiricilerinde genişletilmiş numaralı erişim kontrol listelerini (ACL'ler) planlayacak, yapılandıracak ve doğrulayacağız. ACL sırasının, yerleşiminin ve eşleştirme mantığının trafiği nasıl etkilediğini göstermeye çalışıcam. Ayrıca, gereksinimleri okumayı ve bunları kaynak, hedef, protokol ve port numaralarını kullanan ACL ifadelerine çevirmeyi de uygulamaya çalışacağız..
Başlangıç Topolojisi
Birkaç uç cihaz, bir anahtar, bir yönlendirici ve bir web sunucusundan oluşan aşağıdaki topolojiyi kullanacağız. Cihazlar VLAN 10'a (10.1.1.0/24) bağlanır ve varsayılan ağ geçidi olarak R1'in eth0/0 arayüzünü (10.1.1.254) kullanır. Diğer her şey varsayılan ayarlardadır.
Her cihaz, EVE-NG Community sürümünde Cisco IOL imajı çalıştırır. Dersin ilerleyen kısımlarında, her cihazın başlangıç yapılandırmalarını bulabilirsiniz.
Her cihaz, EVE-NG Community sürümünde Cisco IOL imajı çalıştırır. Dersin ilerleyen kısımlarında, her cihazın başlangıç yapılandırmalarını bulabilirsiniz.
Laboratuvar Görevleri
Göreviniz, aşağıdaki hedefleri tamamlamak için ağı yapılandırmaktır:
Görev 1: VLAN 10'dan Web Sunucusuna TELNET ve SSH erişimini engelleyin. Bu görevi gerçekleştirmek için yalnızca bir ACE (erişim listesi girişi) kullanın.
Görev 2: PC1, PC2 ve PC3'ten web sunucusuna SSH erişimine izin verin. Bu görevi gerçekleştirmek için yalnızca bir ACE (erişim listesi girişi) kullanın.
Görev 3: Yerel LAN'dan web sunucusuna FTP erişimini engelleyin. 1-4. görevler için kullanılan erişim listesinin aynısını kullanamazsınız. Farklı bir ACL kullanın.
Her görev için, yalnızca modern alt yapılandırma modu kullanılarak yapılandırılmış genişletilmiş numaralı bir ACL kullanmanıza izin verilir.
Görev 1: VLAN 10'dan Web Sunucusuna TELNET ve SSH erişimini engelleyin. Bu görevi gerçekleştirmek için yalnızca bir ACE (erişim listesi girişi) kullanın.
Görev 2: PC1, PC2 ve PC3'ten web sunucusuna SSH erişimine izin verin. Bu görevi gerçekleştirmek için yalnızca bir ACE (erişim listesi girişi) kullanın.
Görev 3: Yerel LAN'dan web sunucusuna FTP erişimini engelleyin. 1-4. görevler için kullanılan erişim listesinin aynısını kullanamazsınız. Farklı bir ACL kullanın.
Her görev için, yalnızca modern alt yapılandırma modu kullanılarak yapılandırılmış genişletilmiş numaralı bir ACL kullanmanıza izin verilir.
Başlangıç Yapılandırmaları
Bağlam için, her cihazın başlangıç yapılandırmasına bakalım. Gördüğünüz gibi, çoğunlukla temel IP adresleme ve VLAN yapılandırması yapılmış. Başka hiçbir şey yapılandırılmamış.
Ana Bilgisayarlar (PC1-5)
Ana Bilgisayarlar (PC1-5)
Kod:
hostname PC5
!
no ip routing
ip default-gateway 10.1.1.254
!
interface Ethernet0/0
ip address 10.1.1.5 255.255.255.0
no shutdown
!
SW1
Kod:
hostname SW1
!
vlan 10
name Users
!
interface range Eth0/0-3, Eth1/0
switchport access vlan 10
switchport mode access
switchport nonegotiate
!
R1
Kod:
hostname R1
!
interface Ethernet0/0
ip address 10.1.1.254 255.255.255.0
!
interface Ethernet0/1
ip address 192.168.1.254 255.255.255.0
!
Web Server
Kod:
hostname Web_server
!
username cisco password 0 cisco
ip domain name Cisco.com
!
interface Ethernet0/0
ip address 192.168.1.100 255.255.255.0
no shutdown
!
line vty 0 4
login local
transport input all
!
İlk Kontroller
Son olarak, yönlendiricide erişim listelerini yapılandırmaya ve uygulamaya başlamadan önce VLAN 10'dan web sunucusuna IP bağlantısının olup olmadığını doğrulayalım.
Aşağıdaki CLI çıktısı, PC1'in web sunucusuna ping atabildiğini göstermektedir.
Şimdi görevlere başlayalım.
Aşağıdaki CLI çıktısı, PC1'in web sunucusuna ping atabildiğini göstermektedir.
Kod:
PC1# ping 192.168.1.100
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.1.100, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/2 ms
Şimdi görevlere başlayalım.
Laboratuvar Çözümleri
Kavramları en etkili şekilde anlamak için, önce tüm hedefleri kendi başınıza tamamlamaya çalışın, ardından geri dönüp sonuçlarınızı çözümlerimiz ile karşılaştırın. Unutmayın, bazı görevler birden fazla şekilde yapılabilir. Daha iyi bir çözüm bulursanız, herkes için dersi güncelleyebilmemiz için yorumlarda paylaşın.
Genişletilmiş Numaralı ACL'ler Hızlı Özet
Başlamadan önce, önceki derste tartıştıklarımızı hızlıca özetleyelim.
Genişletilmiş numaralı ACL'ler 100-199 ve 2000-2699 aralıklarını kullanır.
Protokol, kaynak, hedef ve port (TCP/UDP için) ile eşleşirler.
Sıra önemlidir.
İlk eşleşme kazanır.
İşlem yürütülür.
Değerlendirme süreci daha fazla devam etmez.
Sonunda görünmez bir deny ip any any bulunur.
En iyi uygulama, genişletilmiş ACL'leri kaynağa yakın yerleştirmektir.
Görev 1
Şimdi, aşağıda listelenen birinci görevle başlayalım:
VLAN 10'dan Web Sunucusuna TELNET ve SSH erişimini engelleyin. Bu görevi gerçekleştirmek için yalnızca bir ACE (erişim listesi girişi) kullanın.
Öncelikle, TELNET ve SSH'nin şu anda çalışıp çalışmadığını kontrol edelim. Aşağıdaki CLI çıktısında gösterildiği gibi, PC1'den web sunucusuna bağlantı kurmayı deneyebiliriz.
Şu anda hem Telnet hem de SSH'nin çalıştığını görüyoruz. Şimdi, tek bir erişim listesi satırı ile her ikisini de nasıl engelleyebileceğimizi ele alalım.
Bunu yapmak için, Telnet'in TCP 23 portunu, SSH'nin ise TCP 22 portunu kullandığını ezbere bilmeniz gerekir. Açıkçası, her iki protokol de TCP kullanır, tek fark TCP port numarasıdır. Bu nedenle, ACL ifadesini aşağıdaki gibi tek bir satırda birleştirebiliriz:
Bu ACL girişi, SSH ve Telnet'i aynı anda engelleyerek amacı karşılayacaktır.
Ardından, bunu R1'in e0/0 arayüzünde gelen yönde aşağıdaki gibi uygulamamız gerekiyor:
Şimdi, PC1'den web sunucusuna TELNET veya SSH bağlantılarının çalışıp çalışmadığını kontrol edersek, aşağıda gösterildiği gibi bunların engellendiğini görebiliriz.
Böylece görev tamamlanmış olur. Ama gerçekten öyle mi?
Bu, trafik filtreleme için erişim listeleriyle çalışmaya başlarken insanların yaptığı çok yaygın ve çok tehlikeli bir hatadır. Şunu unutmayın:
Her erişim listesinin sonunda görünmez bir 'deny ip any any' ifadesi bulunur.
Bu, belirli bir trafiğe açıkça izin vermezseniz, aşağıdaki şemada gösterildiği gibi, erişim listesini bir arayüze uyguladığınızda her şeyin engelleneceği anlamına gelir.
PC1'den web sunucusuna ping atarak bunun böyle olduğunu doğrulayabiliriz. Sadece SSH ve telnet'i engellemeye çalıştığımız halde (başka hiçbir şeyi engellemedik), ping işlemi açıkça başarısız oluyor.
Bu durum laboratuvar ortamlarında sorun teşkil etmez, ancak üretim ağlarında çok tehlikeli bir durumdur. Çözüm, erişim listesinin sonuna, o ana kadar engellenmemiş tüm trafiğe izin veren, oldukça gevşek bir ACL satırı eklemektir; bu, aşağıdaki CLI bloğunda gösterilmiştir.
Şimdi görev hedefleri karşılandı. VLAN 10'dan web sunucusuna hem Telnet hem de SSH bağlantıları engellendi, ancak aşağıdaki şemada gösterildiği gibi diğer tüm trafiğe aynı anda izin verildi.
Görev 2
Bir sonraki göreve geçelim, bu görev şu şekilde listelenmiştir:
PC1, PC2 ve PC3'ten web sunucusuna SSH erişimine izin verin. Bu görevi gerçekleştirmek için yalnızca bir ACE (erişim listesi girişi) kullanın.
R1'in Eth0/0 arayüzünde ACL100'ü oluşturup uyguladığımız için, yerel ana bilgisayarların hiçbiri web sunucusuna SSH veya TELNET ile bağlanamaz. Ancak, yalnızca PC1, PC2 ve PC3'ten web sunucusuna SSH erişimine izin vermeliyiz; bu da PC5 ve VLAN 10'daki diğer tüm IP'lerin sunucuya SSH erişiminin engellenmesi anlamına gelir. Bunu başarmak için yalnızca bir satır kullanmalıyız.
İşte burada joker maske devreye giriyor.
Genişletilmiş Numaralı ACL'ler Hızlı Özet
Başlamadan önce, önceki derste tartıştıklarımızı hızlıca özetleyelim.
Genişletilmiş numaralı ACL'ler 100-199 ve 2000-2699 aralıklarını kullanır.
Protokol, kaynak, hedef ve port (TCP/UDP için) ile eşleşirler.
Sıra önemlidir.
İlk eşleşme kazanır.
İşlem yürütülür.
Değerlendirme süreci daha fazla devam etmez.
Sonunda görünmez bir deny ip any any bulunur.
En iyi uygulama, genişletilmiş ACL'leri kaynağa yakın yerleştirmektir.
Görev 1
Şimdi, aşağıda listelenen birinci görevle başlayalım:
VLAN 10'dan Web Sunucusuna TELNET ve SSH erişimini engelleyin. Bu görevi gerçekleştirmek için yalnızca bir ACE (erişim listesi girişi) kullanın.
Öncelikle, TELNET ve SSH'nin şu anda çalışıp çalışmadığını kontrol edelim. Aşağıdaki CLI çıktısında gösterildiği gibi, PC1'den web sunucusuna bağlantı kurmayı deneyebiliriz.
Kod:
PC1# telnet 192.168.1.100
Trying 192.168.1.100 ... Open
User Access Verification
Username: cisco
Password: *****
Web_Server>
Kod:
PC1# ssh -l cisco 192.168.1.100
Password: *****
Web_Server> exit
[Connection to 192.168.1.100 closed by foreign host]
Şu anda hem Telnet hem de SSH'nin çalıştığını görüyoruz. Şimdi, tek bir erişim listesi satırı ile her ikisini de nasıl engelleyebileceğimizi ele alalım.
Bunu yapmak için, Telnet'in TCP 23 portunu, SSH'nin ise TCP 22 portunu kullandığını ezbere bilmeniz gerekir. Açıkçası, her iki protokol de TCP kullanır, tek fark TCP port numarasıdır. Bu nedenle, ACL ifadesini aşağıdaki gibi tek bir satırda birleştirebiliriz:
Kod:
ip access-list extended 100
10 deny tcp any any range 22 23
Bu ACL girişi, SSH ve Telnet'i aynı anda engelleyerek amacı karşılayacaktır.
Ardından, bunu R1'in e0/0 arayüzünde gelen yönde aşağıdaki gibi uygulamamız gerekiyor:
Kod:
R1(config)# interface Ethernet0/0
R1(config-if)# ip access-group 100 in
R1(config-if)# end
R1#
Şimdi, PC1'den web sunucusuna TELNET veya SSH bağlantılarının çalışıp çalışmadığını kontrol edersek, aşağıda gösterildiği gibi bunların engellendiğini görebiliriz.
Kod:
PC1# ssh -l cisco 192.168.1.100
% Destination unreachable; gateway or host down
Kod:
PC1# telnet 192.168.1.100
Trying 192.168.1.100 ...
% Destination unreachable; gateway or host down
Böylece görev tamamlanmış olur. Ama gerçekten öyle mi?
Bu, trafik filtreleme için erişim listeleriyle çalışmaya başlarken insanların yaptığı çok yaygın ve çok tehlikeli bir hatadır. Şunu unutmayın:
Her erişim listesinin sonunda görünmez bir 'deny ip any any' ifadesi bulunur.
Bu, belirli bir trafiğe açıkça izin vermezseniz, aşağıdaki şemada gösterildiği gibi, erişim listesini bir arayüze uyguladığınızda her şeyin engelleneceği anlamına gelir.
PC1'den web sunucusuna ping atarak bunun böyle olduğunu doğrulayabiliriz. Sadece SSH ve telnet'i engellemeye çalıştığımız halde (başka hiçbir şeyi engellemedik), ping işlemi açıkça başarısız oluyor.
Kod:
PC1# ping 192.168.1.100
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.1.100, timeout is 2 seconds:
U.U.U
Success rate is 0 percent (0/5)
Bu durum laboratuvar ortamlarında sorun teşkil etmez, ancak üretim ağlarında çok tehlikeli bir durumdur. Çözüm, erişim listesinin sonuna, o ana kadar engellenmemiş tüm trafiğe izin veren, oldukça gevşek bir ACL satırı eklemektir; bu, aşağıdaki CLI bloğunda gösterilmiştir.
Kod:
ip access-list extended 100
10 deny tcp any any range 22 telnet
20 permit ip any any
Şimdi görev hedefleri karşılandı. VLAN 10'dan web sunucusuna hem Telnet hem de SSH bağlantıları engellendi, ancak aşağıdaki şemada gösterildiği gibi diğer tüm trafiğe aynı anda izin verildi.
Görev 2
Bir sonraki göreve geçelim, bu görev şu şekilde listelenmiştir:
PC1, PC2 ve PC3'ten web sunucusuna SSH erişimine izin verin. Bu görevi gerçekleştirmek için yalnızca bir ACE (erişim listesi girişi) kullanın.
R1'in Eth0/0 arayüzünde ACL100'ü oluşturup uyguladığımız için, yerel ana bilgisayarların hiçbiri web sunucusuna SSH veya TELNET ile bağlanamaz. Ancak, yalnızca PC1, PC2 ve PC3'ten web sunucusuna SSH erişimine izin vermeliyiz; bu da PC5 ve VLAN 10'daki diğer tüm IP'lerin sunucuya SSH erişiminin engellenmesi anlamına gelir. Bunu başarmak için yalnızca bir satır kullanmalıyız.
İşte burada joker maske devreye giriyor.
Joker maske
Joker maske, yönlendiriciye trafiği eşleştirirken IP adresinin hangi bitlerini kontrol edeceğini ve hangi bitlerini yok sayacağını söyler. Ters alt ağ maskesi gibi çalışır.
Esneklik sağlar. Bu, kuralı uygulamak için bir IP adresinin ne kadarının eşleşmesi gerektiğini tanımlar ve tek bir ana bilgisayardan tüm bir ağ aralığına kadar her şeyi kontrol etmenizi sağlar.
Örneğimizde, 10.1.1.1, 10.1.1.2 ve 10.1.1.3 IP adreslerini tek bir ağ/joker maske ifadesiyle eşleştirmemiz gerekiyor. Joker maskeyi nasıl bulacağımız konusunda çok detaylı bilgi vermeyeceğiz. Bu süreç, ücretsiz IP alt ağ oluşturma kursumuzda ayrıntılı olarak ele alınmıştır. Ancak, aşağıdaki diyagram sürecin bir özetini göstermektedir.
Aradığımız network_id/wildcard_mask kombinasyonu aşağıda gösterilmiştir:
Bu, PC1, PC2 ve PC3'ü de içeren 10.1.1.0 ile 10.1.1.3 arasındaki IP adresleriyle eşleşir, ancak VLAN 10 alt ağındaki diğer IP adreslerinden hiçbiriyle eşleşmez.
Esneklik sağlar. Bu, kuralı uygulamak için bir IP adresinin ne kadarının eşleşmesi gerektiğini tanımlar ve tek bir ana bilgisayardan tüm bir ağ aralığına kadar her şeyi kontrol etmenizi sağlar.
Örneğimizde, 10.1.1.1, 10.1.1.2 ve 10.1.1.3 IP adreslerini tek bir ağ/joker maske ifadesiyle eşleştirmemiz gerekiyor. Joker maskeyi nasıl bulacağımız konusunda çok detaylı bilgi vermeyeceğiz. Bu süreç, ücretsiz IP alt ağ oluşturma kursumuzda ayrıntılı olarak ele alınmıştır. Ancak, aşağıdaki diyagram sürecin bir özetini göstermektedir.
Aradığımız network_id/wildcard_mask kombinasyonu aşağıda gösterilmiştir:
Kod:
network_id wildcard_mask
10.1.1.0 0.0.0.3
Bu, PC1, PC2 ve PC3'ü de içeren 10.1.1.0 ile 10.1.1.3 arasındaki IP adresleriyle eşleşir, ancak VLAN 10 alt ağındaki diğer IP adreslerinden hiçbiriyle eşleşmez.
ACE girişi
Joker karakteri hesapladıktan sonra, PC 1'den PC 3'e kadar olan bilgisayarlardan web sunucusuna SSH erişimine izin veren bir ACE satırı oluşturalım. Aşağıdaki gibi görünecektir:
Ancak, bunu 1. görevdeki mevcut ACL 100'ün içine yapılandırmadan önce, girişlerin sırasını dikkate almamız gerekiyor. Bu satırda hangi sıra numarasını yapılandırmalıyız? Şu anda aşağıdaki ACL'ye sahibiz:
Sıra numarası belirtmeden girişi yapılandırırsak, şu şekilde 30 numara olur:
Sizce herhangi bir etkisi olacak mı? ACL'lerde sıranın önemli olduğunu hatırlayın. İlk eşleşme kazanır. Olacak şey, tüm SSH trafiğinin 10. sırada eşleşip reddedilmesidir. İşlem daha aşağıya doğru devam etmeyecek ve asla 30. sırada eşleşmeyecektir. Bu nedenle, 30. satırın hiçbir etkisi olmayacaktır.
Yukarıdaki satırı, `deny tcp any any range 22 telnet` girdisinin üzerine yapılandırmamız gerekiyor; bu da yeni satıra 10'dan düşük bir sıra numarası atamamız gerektiği anlamına gelir, aşağıdaki CLI çıktısında gösterildiği gibi.
Şimdi, görev hedefini başarıyla tamamlayıp tamamlamadığımızı test edelim. PC1 ve PC5'ten web sunucusuna SSH bağlantısı kurmayı deneyelim.
PC1'in SSH bağlantısı kurabildiğini, PC5'in ise kuramadığını görebilirsiniz; bu beklenen bir durumdur.
Aşağıdaki diyagram, yapılandırdığımız erişim kontrol listesini ve bunun etkilerini özetlemektedir.
Böylece görev tamamlandı. R1'in Eth0/0 arayüzüne ACL'yi yeniden uygulamamıza gerek kalmadığını fark edin. 1. görevde uygulanmıştı ve şimdi sadece düzenledik.
3. Görev
Sonra, aşağıdaki gibi listelenen son görevi tamamlayalım:
Yerel LAN'dan web sunucusuna FTP erişimini engelleyin. 1-4. görevler için kullanılan erişim listesini kullanamazsınız. Farklı bir ACL kullanın.
Burada, görevin önemli bir ayrıntısı, farklı bir ACL kullanmamız gerektiğidir; 1 ve 2. görevlerde oluşturduğumuz ve uyguladığımız (100 numaralı) ACL'yi kullanamayız.
İzin verilen ACL sayısı
Unutmayın ki Cisco cihazlarında, her arayüz için her yönde yalnızca bir erişim listesi uygulayabilirsiniz. Bu, herhangi bir arayüzde şunları uygulayabileceğiniz anlamına gelir:
Bir ACL gelen (o arayüzden yönlendiriciye giren trafik)
Bir ACL giden (o arayüzden yönlendiriciden çıkan trafik)
Aynı yönde başka bir ACL uygulamaya çalışırsanız, yenisi eskisinin yerini alacaktır. Bu nedenle, R1'in E0/0 arayüzüne başka bir gelen ACL uygulayamayız. Bu da bize yeni bir ACL uygulamak için üç alternatif seçenek bırakıyor:
R1'in Eth0/0 arayüzünde giden trafik
R1'in Eth0/1 arayüzünde gelen trafik
R1'in Eth0/1 arayüzünde giden trafik
Sizce en uygun olan hangisi ve hangi yönde?
Yeni bir genişletilmiş ACL numarası 101 yapılandıralım ve bunu R1'in E0/1 arayüzüne giden yönde aşağıdaki gibi uygulayalım:
Aşağıdaki hususlara dikkat edin:
Yeni bir ACL numarası 101 oluşturuyoruz.
VLAN 10'un alt ağını eşleştirmek için 0.0.0.255 joker maskesini kullanıyoruz.
FTP'yi TCP hedef portu 21 ile eşleştiriyoruz.
Diğer tüm trafiğin (FTP hariç) geçebilmesi için en alta permit ip any any satırını ekliyoruz. Aksi takdirde, sondaki örtülü reddetme işlemine takılacaktır.
ACL'yi R1'in Eth0/1 arayüzüne kendi yönümüzde uyguluyoruz.
Aşağıdaki diyagram, yapılandırdığımız erişim kontrol listesini göstermekte ve etkisini özetlemektedir.
ACL'nin düzgün çalışıp çalışmadığını test etmek için 21 numaralı portta Telnet kullanabiliriz. Telnet bağlantısı aşağıdaki gibi başarısız olmalıdır:
Böylece tüm laboratuvar hedefleri tamamlanmış oldu. Uygulamanız ve hatırlamanız gereken önemli noktaları özetleyelim.
Önemli noktalar:
ACL'ler yukarıdan aşağıya bir değerlendirme sürecini izler. İlk eşleşme kazanır ve daha fazla satır kontrol edilmez.
Her ACL'nin sonunda, görünür olmasa bile, örtük bir deny ip any any bulunur.
Tüm trafiği engellememek için, reddetmelerinizden sonra her zaman permit ip any any (veya diğer gerekli izinler) ekleyin.
Genişletilmiş ACL'leri kontrol etmek istediğiniz trafiğin kaynağına yakın yerleştirmek en iyisidir.
Her arayüz için her yönde yalnızca bir ACL uygulayabilirsiniz (bir gelen ve bir giden). Aynı yönde yeni bir ACL uygulamak, önceki ACL'nin yerini alır.
IP adreslerini verimli bir şekilde gruplandırmak için joker maskeler kullanın. Örnek: 0.0.0.3, 10.1.1.0–10.1.1.3 olmak üzere dört adresle eşleşir.
Bir ACL içindeki girişlerin sırası önemlidir. Geçerli trafiği engellememek için belirli izinleri geniş reddetmelerden önce yerleştirin.
Birden fazla port numarasını tek bir ACE'de birleştirmek için `range` anahtar kelimesini kullanın; örneğin, hem SSH hem de Telnet'i engellemek için `deny tcp any any range 22 23` komutunu kullanabilirsiniz.
Gerçek ağlarda, üretimde uygulamadan önce ACL'leri dikkatlice test edin; yanlış yerleştirilmiş veya eksik kurallar kritik trafiği engelleyebilir.
Kod:
permit tcp 10.1.1.0 0.0.0.3 any eq 22
Ancak, bunu 1. görevdeki mevcut ACL 100'ün içine yapılandırmadan önce, girişlerin sırasını dikkate almamız gerekiyor. Bu satırda hangi sıra numarasını yapılandırmalıyız? Şu anda aşağıdaki ACL'ye sahibiz:
Kod:
R1# sh ip access-lists
Extended IP access list 100
10 deny tcp any any range 22 telnet
20 permit ip any any
Sıra numarası belirtmeden girişi yapılandırırsak, şu şekilde 30 numara olur:
Kod:
Extended IP access list 100
10 deny tcp any any range 22 telnet
20 permit ip any any
30 permit tcp 10.1.1.0 0.0.0.3 any eq 22
Sizce herhangi bir etkisi olacak mı? ACL'lerde sıranın önemli olduğunu hatırlayın. İlk eşleşme kazanır. Olacak şey, tüm SSH trafiğinin 10. sırada eşleşip reddedilmesidir. İşlem daha aşağıya doğru devam etmeyecek ve asla 30. sırada eşleşmeyecektir. Bu nedenle, 30. satırın hiçbir etkisi olmayacaktır.
Yukarıdaki satırı, `deny tcp any any range 22 telnet` girdisinin üzerine yapılandırmamız gerekiyor; bu da yeni satıra 10'dan düşük bir sıra numarası atamamız gerektiği anlamına gelir, aşağıdaki CLI çıktısında gösterildiği gibi.
Kod:
R1# conf t
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)# ip access-list extended 100
R1(config-ext-nacl)# 5 permit tcp 10.1.1.0 0.0.0.3 any eq 22
R1(config-ext-nacl)# end
Şimdi, görev hedefini başarıyla tamamlayıp tamamlamadığımızı test edelim. PC1 ve PC5'ten web sunucusuna SSH bağlantısı kurmayı deneyelim.
Kod:
PC1# ssh -l cisco 192.168.1.100
Password:
Web_Server> exit
[Connection to 192.168.1.100 closed by foreign host]
Kod:
PC5# ssh -l cisco 192.168.1.100
% Destination unreachable; gateway or host down
PC1'in SSH bağlantısı kurabildiğini, PC5'in ise kuramadığını görebilirsiniz; bu beklenen bir durumdur.
Aşağıdaki diyagram, yapılandırdığımız erişim kontrol listesini ve bunun etkilerini özetlemektedir.
Böylece görev tamamlandı. R1'in Eth0/0 arayüzüne ACL'yi yeniden uygulamamıza gerek kalmadığını fark edin. 1. görevde uygulanmıştı ve şimdi sadece düzenledik.
3. Görev
Sonra, aşağıdaki gibi listelenen son görevi tamamlayalım:
Yerel LAN'dan web sunucusuna FTP erişimini engelleyin. 1-4. görevler için kullanılan erişim listesini kullanamazsınız. Farklı bir ACL kullanın.
Burada, görevin önemli bir ayrıntısı, farklı bir ACL kullanmamız gerektiğidir; 1 ve 2. görevlerde oluşturduğumuz ve uyguladığımız (100 numaralı) ACL'yi kullanamayız.
İzin verilen ACL sayısı
Unutmayın ki Cisco cihazlarında, her arayüz için her yönde yalnızca bir erişim listesi uygulayabilirsiniz. Bu, herhangi bir arayüzde şunları uygulayabileceğiniz anlamına gelir:
Bir ACL gelen (o arayüzden yönlendiriciye giren trafik)
Bir ACL giden (o arayüzden yönlendiriciden çıkan trafik)
Aynı yönde başka bir ACL uygulamaya çalışırsanız, yenisi eskisinin yerini alacaktır. Bu nedenle, R1'in E0/0 arayüzüne başka bir gelen ACL uygulayamayız. Bu da bize yeni bir ACL uygulamak için üç alternatif seçenek bırakıyor:
R1'in Eth0/0 arayüzünde giden trafik
R1'in Eth0/1 arayüzünde gelen trafik
R1'in Eth0/1 arayüzünde giden trafik
Sizce en uygun olan hangisi ve hangi yönde?
Yeni bir genişletilmiş ACL numarası 101 yapılandıralım ve bunu R1'in E0/1 arayüzüne giden yönde aşağıdaki gibi uygulayalım:
Kod:
R1# conf t
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)# ip access-list extended 101
R1(config-ext-nacl)# deny tcp 10.1.1.0 0.0.0.255 any eq 21
R1(config-ext-nacl)# permit ip any any
Kod:
R1(config)# interface Ethernet0/1
R1(config-if)# ip access-group 101 out
R1(config-if)# end
Aşağıdaki hususlara dikkat edin:
Yeni bir ACL numarası 101 oluşturuyoruz.
VLAN 10'un alt ağını eşleştirmek için 0.0.0.255 joker maskesini kullanıyoruz.
FTP'yi TCP hedef portu 21 ile eşleştiriyoruz.
Diğer tüm trafiğin (FTP hariç) geçebilmesi için en alta permit ip any any satırını ekliyoruz. Aksi takdirde, sondaki örtülü reddetme işlemine takılacaktır.
ACL'yi R1'in Eth0/1 arayüzüne kendi yönümüzde uyguluyoruz.
Aşağıdaki diyagram, yapılandırdığımız erişim kontrol listesini göstermekte ve etkisini özetlemektedir.
ACL'nin düzgün çalışıp çalışmadığını test etmek için 21 numaralı portta Telnet kullanabiliriz. Telnet bağlantısı aşağıdaki gibi başarısız olmalıdır:
Kod:
PC1# telnet 192.168.1.100 ftp
Trying 192.168.1.100, 21 ...
% Destination unreachable; gateway or host down
Böylece tüm laboratuvar hedefleri tamamlanmış oldu. Uygulamanız ve hatırlamanız gereken önemli noktaları özetleyelim.
Önemli noktalar:
ACL'ler yukarıdan aşağıya bir değerlendirme sürecini izler. İlk eşleşme kazanır ve daha fazla satır kontrol edilmez.
Her ACL'nin sonunda, görünür olmasa bile, örtük bir deny ip any any bulunur.
Tüm trafiği engellememek için, reddetmelerinizden sonra her zaman permit ip any any (veya diğer gerekli izinler) ekleyin.
Genişletilmiş ACL'leri kontrol etmek istediğiniz trafiğin kaynağına yakın yerleştirmek en iyisidir.
Her arayüz için her yönde yalnızca bir ACL uygulayabilirsiniz (bir gelen ve bir giden). Aynı yönde yeni bir ACL uygulamak, önceki ACL'nin yerini alır.
IP adreslerini verimli bir şekilde gruplandırmak için joker maskeler kullanın. Örnek: 0.0.0.3, 10.1.1.0–10.1.1.3 olmak üzere dört adresle eşleşir.
Bir ACL içindeki girişlerin sırası önemlidir. Geçerli trafiği engellememek için belirli izinleri geniş reddetmelerden önce yerleştirin.
Birden fazla port numarasını tek bir ACE'de birleştirmek için `range` anahtar kelimesini kullanın; örneğin, hem SSH hem de Telnet'i engellemek için `deny tcp any any range 22 23` komutunu kullanabilirsiniz.
Gerçek ağlarda, üretimde uygulamadan önce ACL'leri dikkatlice test edin; yanlış yerleştirilmiş veya eksik kurallar kritik trafiği engelleyebilir.












