Erişim listesi cisco adlı liste. ACL'ler nedir. Cisco yönlendiriciler üzerinde standart ve genişletilmiş ACL'ler yapılandırıyoruz. VET ağından ana bilgisayarlar

  • 31.03.2019

Bugün size erişim kontrol listelerini kullanarak ağdaki trafiği nasıl filtreleyeceğinizi göstereceğim. Sırasıyla nasıl çalıştıklarını, ne olduklarını, ne için tasarlandıklarını düşünelim. Daha sonra size bunların Cisco IOS'ta nasıl yapılandırıldığını göstereceğim ve bilginizi pekiştirmek için bir laboratuvar arşivi yayınlayacağım.

Tanıtım

ACL (Erişim Kontrol Listesi), bir şeye izin veren veya bir şeyi yasaklayan bir dizi metin ifadesidir. Genellikle bir ACL, IP paketlerine izin verir veya reddeder, ancak diğer şeylerin yanı sıra, IP paketinin içine bakabilir, paket türünü, TCP ve UDP bağlantı noktalarını görüntüleyebilir. Ayrıca ACL çeşitli için mevcuttur ağ protokolleri(IP, IPX, AppleTalk vb.). Temel olarak, erişim listelerinin kullanımı paket filtreleme açısından ele alınır, yani İnternet sınırında ekipmana sahip olduğunuz durumlarda paket filtreleme gereklidir. özel ağ ve gereksiz trafiği filtrelemeniz gerekir.
Gelen yöne bir ACL yerleştirir ve fazla trafiği engellersiniz.

teori

ACL'nin işlevi trafiği sınıflandırmaktır, önce kontrol etmeniz ve ardından ACL'nin uygulandığı yere bağlı olarak onunla bir şeyler yapmanız gerekir. ACL her yerde geçerlidir, örneğin:
  • Arayüzde: paket filtreleme
  • Telnet hattında: yönlendiriciye erişimi kısıtlamak
  • VPN: hangi trafiğin şifrelenmesi gerekiyor
  • QoS: hangi trafiğe öncelik verilir
  • NAT: hangi adresler yayınlanacak
ACL'leri tüm bu bileşenlere uygulamak için nasıl çalıştıklarını anlamanız gerekir. Ve öncelikle paket filtreleme ile ilgileneceğiz. Paket filtreleme ile ilgili olarak, ACL'ler arayüzlere yerleştirilir, kendileri bağımsız olarak oluşturulur ve ancak o zaman arayüze cıvatalanırlar. Arayüze vidaladığınız anda, yönlendirici trafiği görüntülemeye başlar. Yönlendirici, trafiği gelen ve giden olarak değerlendirir. Yönlendiriciye giren trafiğe gelen, çıkan trafiğe giden denir. Buna göre, ACL'ler gelen veya giden yöne yerleştirilir.

Fa0 / 1 yönlendirici arayüzüne özel ağınızdan bir paket gelir, yönlendirici arayüzde bir ACL olup olmadığını kontrol eder, varsa, erişim listesinin kurallarına göre daha fazla işlem yapılır. kesinlikle ifadelerin yazıldığı sırayla erişim listesi paketin geçmesine izin veriyorsa, o zaman bu durum yönlendirici, paketi fa0/0 arabirimi üzerinden sağlayıcıya gönderir, erişim listesi paketin geçmesine izin vermezse paket bırakılır. Erişim listesi yoksa, paket herhangi bir kısıtlama olmaksızın uçar. ISS'ye bir paket göndermeden önce, yönlendirici ayrıca giden bir ACL için fa0 / 0 arayüzünü kontrol eder. Mesele şu ki, bir ACL bir arayüze gelen veya giden olarak eklenebilir. Örneğin, İnternet'teki tüm ana bilgisayarların ağımıza paket göndermesini yasaklayan bir kuralı olan bir ACL'miz var.
Peki bu ACL hangi arayüze bağlanmalıdır? Fa0 / 1 arayüzüne giden olarak bir ACL eklersek, ACL de çalışacak olsa da bu tamamen doğru olmayacaktır. Yönlendirici, özel ağdaki bazı düğümler için bir yankı isteği alır, fa0/0 arayüzünde bir ACL olup olmadığını kontrol eder, mevcut değildir, ardından fa0 / 1 arayüzünü kontrol eder, bu arayüzde bir ACL vardır, giden olarak yapılandırılmış, her şey doğru paket ağa girmiyor, ancak yönlendirici tarafından yok ediliyor. Ancak fa0/0 arayüzünün arkasına bir ACL'yi gelen olarak eklersek, paket yönlendiriciye ulaşır ulaşmaz imha edilecektir. Yönlendirici hesaplama kaynaklarını daha az yüklediği için son çözüm doğrudur. Genişletilmiş ACL'ler kaynağa mümkün olduğunca yakın yerleştirilmeli, standart ACL'ler ise hedefe mümkün olduğunca yakın yerleştirilmelidir.... Bu, paketleri tüm ağda boşuna sürmemek için gereklidir.

ACL'nin kendisi, yazıldığı bir dizi metin ifadesidir. izin vermek(izin) ya inkar etmek(devre dışı) ve işleme kesinlikle ifadelerin belirtildiği sırayla gerçekleştirilir. Buna göre, bir paket bir arayüze çarptığında, birinci koşul için kontrol edilir, eğer ilk koşul paketle eşleşirse, sonraki işlemleri durur. Paket ya devam edecek ya da imha edilecek.
Tekrar, paket koşulla eşleşirse, daha fazla işlenmez... Birinci koşul eşleşmiyorsa ikinci koşul işlenir, eşleşirse işleme durur, değilse üçüncü koşul işlenir vb. tüm koşullar kontrol edilene kadar devam eder, koşullardan hiçbiri uyuşmuyorsa, paket basitçe imha edilir... Unutmayın, listenin her bir ucunda örtülü bir reddetme vardır. Konfigürasyon hataları çok yaygın olduğu için altını çizdiğim bu kurallara çok dikkat edin.

ACL'ler iki türe ayrılır:

  • Standart (Standart): sadece kaynak adreslerini kontrol edebilir
  • Genişletilmiş: IP durumunda kaynak adreslerinin yanı sıra alıcı adreslerini, ayrıca protokol türünü ve TCP / UDP bağlantı noktalarını kontrol edebilir
Erişim listeleri ya sayılarla ya da sembolik isimlerle belirtilir. ACL'ler ayrıca çeşitli ağ protokolleri için kullanılır. Biz de IP ile çalışacağız. onlar atanır Aşağıdaki şekilde, numaralı erişim listeleri:
  • Standart: 1'den 99'a kadar
  • İleri: 100'den 199'a
Karakter ACL'leri de standart ve genişletilmiş olarak ayrılmıştır. Genişletilmiş olanlar, standart olanlardan çok daha fazlasını kontrol edebilir, ancak sadece Kaynak Adres alanına baktığımız standartların aksine, paketin içine bakmanız gerektiğinden daha yavaş çalışırlar. Bir ACL oluştururken, her erişim listesi girişi, varsayılan olarak on (10, 20, 30, vb.) içinde bir sıra numarası ile tanımlanır. Bu sayede, belirli bir girişi silebilir ve yerine başka bir tane ekleyebilirsiniz, ancak bu özellik Cisco IOS 12.3'te göründü, 12.3'ten önce ACL'yi silmeniz ve ardından tamamen yeniden oluşturmanız gerekiyordu. Arayüz başına, protokol başına, yön başına 1'den fazla erişim listesi yerleştiremezsiniz... Açıklıyorum: Bir yönlendiricimiz varsa ve bir arayüzü varsa, IP protokolü için gelen yöne sadece bir erişim listesi yerleştirebiliriz, örneğin 10 numara. Yönlendiricilerin kendileri ile ilgili bir başka kural, ACL'nin yönlendiricinin kendisi tarafından oluşturulan trafik üzerinde hiçbir etkisi yoktur.
ACL'deki adresleri filtrelemek için bir WildCard maskesi kullanılır. Bu bir ters maskedir. Şablon ifadesini alıyoruz: 255.255.255.255 ve normal maskeyi şablondan çıkarıyoruz.
255.255.255.255-255.255.255.0, normal bir 255.255.255.0 maskesi olan 0.0.0.255 maskesini alıyoruz, yalnızca 0.0.0.255 bir WildCard maskesidir.
EKL türleri
Dinamik (Dinamik ACL)
Aşağıdakileri yapmanızı sağlar, örneğin, bir sunucuya bağlı bir yönlendiriciniz var ve ona dış dünyadan erişimi kapatmamız gerekiyor, ancak aynı zamanda sunucuya bağlanabilecek birkaç kişi var.
Dinamik bir erişim listesi oluşturuyoruz, gelen istikamete ekliyoruz ve daha sonra bağlanması gereken kişilerin Telnet üzerinden internete bağlanması gerekiyor. bu cihaz, sonuç olarak, dinamik ACL sunucuya kapıyı açar ve bir kişi sunucuya ulaşmak için örneğin HTTP aracılığıyla oturum açabilir. Varsayılan olarak, 10 dakika sonra bu geçit kapatılır ve kullanıcı cihaza bağlanmak için tekrar Telnet'i çalıştırmaya zorlanır.
refleksif ACL
Burada durum biraz farklıdır. yerel ağİnternete bir TCP isteği gönderirse, bağlantı kurmak üzere bir TCP yanıtının gelmesi için açık bir geçişimiz olmalıdır. Geçit olmazsa bağlantı kuramayız ve saldırganlar bu geçişi örneğin ağa sızmak için kullanabilirler. Yansımalı ACL'ler bu şekilde çalışır, erişim tamamen engellenir (herhangisini reddet), ancak yerel ağdan oluşturulan kullanıcı oturumlarının parametrelerini okuyabilen ve sonuç olarak herhangi birini reddet de onlar için bir geçit açabilen başka bir özel ACL oluşur. , İnternet bileşiminden kuramayacakları ortaya çıkıyor. Ve yerel ağdan oluşturulan oturumlar yanıt alacaktır.
Zamana dayalı EKL
Normal ACL, ancak bir zaman sınırı ile, şu veya bu erişim listesi girişini etkinleştiren özel bir program girebilirsiniz. Ve böyle bir hile yapmak için, örneğin, iş günü boyunca HTTP erişimini reddettiğimiz ve yönlendirici arayüzüne astığımız bir erişim listesi yazıyoruz, yani işletmenin çalışanları işe geldi, onlar için HTTP erişimi kapatıldı , iş günü bitti, HTTP erişimi açıldı,
lütfen, isterseniz - internette gezinin.

özelleştirme

ACL'lerin kendileri ayrı olarak oluşturulur, yani bu sadece global konfigürasyonda oluşturulan bir listedir, daha sonra arayüze atanır ve ancak o zaman çalışmaya başlar. Erişim listelerini düzgün bir şekilde yapılandırmak için bazı noktaları hatırlamak gerekir:
  • İşlemler kesinlikle koşulların yazıldığı sıraya göre gerçekleştirilir.
  • Paket koşulla eşleşirse, daha fazla işlenmez.
  • Her erişim listesinin sonunda üstü kapalı bir reddetme vardır.
  • Genişletilmiş ACL'ler kaynağa mümkün olduğunca yakın yerleştirilmeli, standart ACL'ler ise hedefe mümkün olduğunca yakın yerleştirilmelidir.
  • Arayüz başına, protokol başına, yön başına 1'den fazla erişim listesi yerleştiremezsiniz
  • ACL'nin yönlendiricinin kendisi tarafından oluşturulan trafik üzerinde hiçbir etkisi yoktur
  • Adresleri filtrelemek için WildCard maskesi kullanılır
Standart erişim listesi
Yönlendirici (yapılandırma) # erişim listesi <номер списка от 1 до 99> (izin | reddet | açıklama) (adres | herhangi bir | ana bilgisayar)
  • izin vermek: izin vermek
  • inkar etmek: yasaklamak
  • açıklama: erişim listesi hakkında yorum
  • adres: ağı devre dışı bırak veya etkinleştir
  • herhangi: her şeye izin ver ya da reddet
  • ev sahibi: ana bilgisayara izin ver veya reddet
  • kaynak-joker karakter: WildCard ağ maskesi
  • kayıt: geçen paketlerin günlüğe kaydedilmesini etkinleştir bu giriş EKL
Genişletilmiş erişim listesi
Yönlendirici (yapılandırma) # erişim listesi <номер списка от 100 до 199> (izin | reddet | açıklama) protokol kaynağı [ Şebeke işlenen] [ Liman <порт или название протокола>
  • protokol kaynağı: hangi protokole izin vereceğimizi veya kapatacağımızı (ICMP, TCP, UDP, IP, OSPF, vb.)
  • inkar etmek: yasaklamak
  • Şebeke:
    A.B.C.D - alıcı adresi
    herhangi - herhangi bir hedef ana bilgisayar
    eq - yalnızca bu bağlantı noktasındaki paketler
    gt - yalnızca daha yüksek bağlantı noktası numarasına sahip paketler
    ana bilgisayar - tek hedef ana bilgisayar
    lt - yalnızca daha düşük bağlantı noktası numarasına sahip paketler
    neq - sadece paketler açık değil bu konu Liman
    aralık - bağlantı noktası aralığı
  • Liman: port numarası (TCP veya UDP), isim belirtilebilir
  • kurulmuş: önceden oluşturulmuş bir TCP oturumunun parçası olan TCP bölümlerinin geçişine izin verir
Arayüze bağlanma
Yönlendirici (config-if) # ip erişim grubu <номер списка или имя ACL> (içeri | dışarı)
  • içinde: gelen yön
  • dışarı: giden yön
Adlandırılmış erişim listeleri
Yönlendirici (yapılandırma) # ip erişim listesi (standart | genişletilmiş) (<номер ACL> | <имя ACL>}
Yönlendirici (config-ext-nacl) # (varsayılan | reddet | çıkış | hayır | izin | açıklama)
  • standart: standart ACL
  • Genişletilmiş: genişletilmiş ACL
  • varsayılan: komutu varsayılana ayarla
Yönlendiriciye erişimi kısıtlama
R (yapılandırma) # satır vty 0 4 - sanal hatlar ayar moduna gidin.
R (yapılandırma satırı) # parola <пароль>
R (yapılandırma satırı) # giriş yapmak
R (yapılandırma satırı) # erişim sınıfı 21 içinde- bir kullanıcı adı ve şifre belirleyin ve izin verilen IP adreslerine sahip bir erişim listesini düzeltin.
Dinamik erişim listeleri

R3 (yapılandırma) # Kullanıcı adıÖğrenci parola 0 cisco - Telnet üzerinden bağlanacak kullanıcılar oluşturun.
R3 (yapılandırma) # erişim listesi 101 herhangi bir ana bilgisayara tcp'ye izin ver 10.2.2.2 eq telnet
R3 (yapılandırma) # erişim listesi 101 dinamik test listesi zaman aşımı 15 izin ip 192.168.10.0 0.0.0.255 192.168.30.0 0.0.0.255 - tüm düğümlerin sunucuya Telnet aracılığıyla bağlanmasına izin verir.
R3 (config) #interface seri 0/0/1
R3 (yapılandırma-if) # ip erişim grubu 101 in - gelen yönde arayüze 101 ACL atayın.
R3 (yapılandırma) # satır vty 0 4
R3 (yapılandırma satırı) # yerel giriş yap
R3 (yapılandırma satırı) # otomatik komut erişimi etkinleştirme ana bilgisayar zaman aşımı 5 - Kullanıcının kimliği doğrulanır doğrulanmaz, 192.168.30.0 ağı kullanılabilir olacak, 5 dakika hareketsizlikten sonra oturum kapatılacaktır.

Yansımalı erişim listeleri


R2 (yapılandırma) # ip erişim listesi genişletilmiş GİDEN FİLTRELER
R2 (config-ext-nacl) # tcp'ye izin ver 192.168.0.0 0.0.255.255 herhangi bir yansıma TCPTRAFFIC
R2 (config-ext-nacl) # icmp'ye izin ver 192.168.0.0 0.0.255.255 herhangi bir yansıma ICMPTRAFFIC - yönlendiricinin içeriden başlatılan trafiği izlemesini sağlıyoruz.
R2 (yapılandırma) # ip erişim listesi genişletilmiş GELEN FİLTRELER
R2 (config-ext-nacl) # değerlendirmek TCPTRAFFIC
R2 (config-ext-nacl) # değerlendirmek ICMPTRAFFIC - Yönlendiricinin, gelen trafiğin içeriden başlatılıp başlatılmadığını kontrol etmesini ve TCPTRAFFIC'i INBOUNDFILTERS'a bağlamasını gerektiren bir gelen ilkesi oluşturun.
R2 (yapılandırma) # arayüz seri 0/1/0
R2 (yapılandırma-if) # ip erişim grubu GELEN FİLTRELER
R2 (yapılandırma-if) # ip erişim grubu OUTBOUNDFILTERS out - arayüze gelen ve giden ACL'leri uygulayın.
Zaman sınırı

R1 (yapılandırma) # zaman aralığı HER BAŞKA GÜN
R1 (yapılandırma-zaman aralığı) # periyodik Pazartesi Çarşamba Cuma 8:00 - 17:00 - haftanın günlerini ve saati eklediğimiz bir zaman listesi oluşturun.
R1 (yapılandırma) # erişim listesi 101 tcp'ye izin ver 192.168.10.0 0.0.0.255 herhangi bir eq telnet zaman aralığı EVERYOTHERDAY - zaman aralığını ACL'ye uygulayın.
R1 (yapılandırma) #interface s0 / 0/0
R1 (yapılandırma-if) # ip erişim grubu 101 çıkış - arayüze ACL atayın.

Sorunları arayın
R # erişim listelerini göster(ACL numarası | isim) - erişim listesi hakkındaki bilgilere bakın.
R # erişim listelerini göster- yönlendiricideki tüm erişim listelerine bakıyoruz.
Örnek
yönlendirici # erişim listelerini göster
Genişletilmiş IP erişim listesi Nick
ip ana bilgisayarına izin ver 172.168.1.1 ana bilgisayara 10.0.0.5
herhangi bir ipi reddet (16 eşleşme (ler))
Standart IP erişim listesi nick5
izin 172.16.0.0 0.0.255.255

nick ve nick5 adında iki ACL (standart ve genişletilmiş) olduğunu görüyoruz. İlk liste, 172.16.1.1 ana bilgisayarının IP üzerinden (yani IP üzerinden tüm protokollere izin verildiği anlamına gelir) 10.0.0.5 ana bilgisayarına erişmesine izin verir. Diğer tüm trafik reddedilir, herhangi bir komutu reddet ile gösterilir. Bu koşulun yanında, örneğimizde (16 eşleşme(ler)) yazıyor. Bu, 16 paketin bu koşulu karşıladığını gösterir.
İkinci ACL, 172.16.0.0/16 ağındaki herhangi bir kaynaktan gelen trafiğin geçmesine izin verir.

Uygulama
ACL ile ilgili CCNA 4 kursunun 5. bölümünden Packet Tracer laboratuvarlarını derledim. Bilgiyi pratikte pekiştirme arzunuz varsa, lütfen -

Erişim listeleri oluşturmayı ve kullanmayı düşünün ( erişim listeleri) bir yönlendirici kullanarak küçük bir ofisi İnternet'e bağlama şeması örneğinde cisco 881... Diğer seri yönlendiricileri (1841, 2800, 3825 ...) veya Katman 3 anahtarlarını (3500, 4800 ... serisi) yapılandırma komutları benzer olacaktır. Farklılıklar sadece arayüz ayarlarında olabilir.

Elimizde var:

Görev: yönlendiriciden geçen bağlantıları kısıtlayın.

Erişim listeleri ( erişim listeleri) kendi başlarına erişimi kısıtlayan bir tür kural değildir. Bu çizgiler yalnızca belirli trafiği gösterir. Belirli bir yönlendirici işlevinin ayarlarında ilgili erişim listesine bir bağlantı belirtildiğinde bunların etkisi görünür.

Cihazın mantığı öyle ki, önce yönlendiriciye ilgilendiğimiz trafiği gösteriyoruz, ardından yönlendiricinin onunla ne yapması gerektiğini belirtiyoruz. Örneğin, bir durumda, erişim listesi, protokolü kullanarak yönlendiriciye uzaktan erişimin yapıldığı adresi gösterecektir. SSH, diğerinde ise dinamik yönlendirme protokolü kullanılarak yayılacak olan rotayı gösterecektir.

Yönlendiriciye uzaktan erişimi kısıtlama

Örnek erişim listesi yönlendirici konsoluna yalnızca belirli cihazlardan uzaktan erişimi kısıtlamak için kullanılır. ip adresler. Bizim durumumuzda, adres iş istasyonu yönetici.
Bir erişim listesi oluşturun ACL_REMOTE_ACCESS
R-DELTACONFIG (yapılandırma) #
ip erişim listesi standardı ACL_REMOTE_ACCESS
ip ana bilgisayarına izin ver 192.168.0.100

bağla erişim listesi yönlendiricinin uzaktan yönetimine erişimi yalnızca 192.168.0.100 adresinden kısıtlamak için
R-DELTACONFIG (yapılandırma) #
satır vty 0 4
erişim sınıfı ACL_REMOTE_ACCESS içinde

Önemli!
Dikkatli olun ve kullanmadan önce her şeyi dikkatlice kontrol edin. Hata düzeltilebilir bir tek yönlendiriciyi fabrika ayarlarına bağlama veya sıfırlama.

İnternet Erişimini Kısıtlama

Yerel ofis ağından İnternet'e erişimi kısıtlamak için, uygun bir erişim listesi ve bunun yönlendirici arabirimlerinden birine bağlanması gerekir.
Kullanıcıların internete erişimini aşağıdaki şekilde kısıtlamanız gerektiğini varsayalım:

Aşağıdaki erişim listesini oluşturun ACL_INSIDE_IN ve sırayla erişim kurallarını girin:
R-DELTACONFIG (yapılandırma) #
ip erişim listesi genişletilmiş ACL_INSIDE_IN

erişim DNS internetteki sunucular
udp ana bilgisayarına izin ver 192.168.0.201 herhangi bir eşdeğer 53
tcp ana bilgisayarına izin ver 192.168.0.201 herhangi bir eşdeğer 53

erişim vekil internetteki sunucular
izin vermek tcp ana bilgisayarı 192.168.0.202 herhangi bir eş 80
tcp ana bilgisayarına izin ver 192.168.0.202 herhangi bir eş 443

tam yönetici erişimi
izin vermek ip host 192.168.0.100 herhangi
izin Ping tüm yerel ağ için
izin vermek icmp 192.168.0.0 0.0.0.255 herhangi
diğer bağlantıların yasaklanması
inkar etmek ip herhangi bir günlük

Önemli!
Protokol için kural satırının nasıl yazıldığına dikkat edin ICMP (Ping). Yönlendiricilerdeki erişim listelerinde Cisco alt ağ maskesi ters yazılır: 255.255.255.0 değil, 0.0.0.255

Erişim listesini dahili arayüze bağladıktan sonra Vlan 1"yönlendiricinin içinde" yönünde (parametre içinde). Aslında, ciltleme yönü her zaman cihaza göre değerlendirilir. Cisco... Kolaylık sağlamak için, arayüz ve trafik yönü, erişim listesinin kendi adına belirtilir: ACL_INSIDE_IN- dahili arayüze giren trafik filtresi.
R-DELTACONFIG (yapılandırma) #
arayüz Vlan 1
ip erişim grubu ACL_INSIDE_IN içinde

Artık, adres çevirisinin doğru yapılandırılması koşuluyla, dışarıya erişim, uygulanan erişim listesine göre gerçekleştirilecektir ( NAT). Bunun nasıl yapılacağı, bir Cisco yönlendirici kullanarak İnternet erişimini yapılandırma hakkında açıklanmıştır.

Erişim listesinin çalışmasını kontrol etme

Kural tetikleyicilerinin istatistiklerine bakarak erişim listesinin çalışmasını kontrol edebilirsiniz. Erişim listesini bağladıktan sonra ACL_INSIDE_IN arayüze Vlan 1Çalıştırmak Ping herhangi bir ağ iş istasyonundan herhangi bir İnternet adresine (örneğin, www.yandex.ru) ve ardından ayrıcalıklı moddan yürütün (işaretleyin # cihaz adının yanında) komutu erişim listelerini göster... Sonuç, erişim listesinin her satırına kaç kez ulaşıldığını göstermelidir:
sh erişim listeleri
Genişletilmiş IP erişim listesi ACL_INSIDE_IN

60 icmp herhangi birine izin ver (4 tahmin eşleşmesi)
70 herhangi bir günlük ipini reddet

Erişim listelerini kullanmanın önemli yönleri ( erişim listesi)

  • Erişim listesi satırlardan oluşur - belirli trafiği gösteren kurallar
  • Bir arabirimle ilişkili bir erişim listesi, o arabirimden geçen paketleri kısıtlar.
  • Bir erişim listesi, bir arabirime şu yönlerden biriyle bağlanabilir: gelen veya giden.
  • Erişim listeleri, yalnızca bağlantının kaynağını belirtebilir (standart, erişim kısıtlaması örneği SSH) veya bağlantının kaynağı ve hedefi (genişletilmiş, İnternet erişimini kısıtlama örneği).
  • Aynı arabirime tek yönde birden fazla erişim listesi bağlanamaz. Tüm gerekli kurallar, yalnızca bir ilişkili erişim listesinde belirtilmelidir.

İnternetten erişimi kısıtlama

Bir erişim listesi oluşturun ACL_OUTSIDE_IN için harici arayüz. İçinde, yalnızca harici arayüzün yanıt vermesi gerektiğini belirtiriz. ping atmak ve diğer tüm istekleri reddedin.
R-DELTACONFIG (yapılandırma) #

icmp'ye herhangi bir arayüze izin ver // Ping izni
ip'yi herhangi bir kaydı reddet // diğer bağlantıları yasakla

Erişim listesini harici arayüze bağlarız.
R-DELTACONFIG (yapılandırma) #
arayüz FastEthernet 4
ip erişim grubu ACL_OUTSIDE_IN içinde

Önemli!
İçeriden veya dışarıdan erişim için gerekli olan yeni kurallar uygun erişim listelerine eklenmelidir. ÖNCEçizgiler
IP'yi herhangi bir günlüğü reddet
Yasaklanan satırdan sonra izinli bir satır listedeyse, yönlendirici satırları işlediğinden, en azından bir şekilde trafiği etkilemeyecektir. erişim listesi sürekli ilk maçtan önce.
Degisim icin erişim listesi erişim listesinin kendisine gitmek uygundur, her şeyi ekleyin gerekli izinler ve ardından son satırı silin ( IP'yi herhangi bir günlüğü reddet) ve hemen oraya ekleyin. Bu basit kuralı yerine getirerek, yasaklama satırı her zaman listenin en sonunda olacak ve tüm kurallar aşağıdan yukarıya eklendikleri sırayla gidecektir. Anlaşılır olması için, http protokolü (TCP bağlantı noktası 80) aracılığıyla yönlendiriciye dışarıdan erişime izin verelim.
R-DELTACONFIG (yapılandırma) #
ip erişim listesi genişletilmiş ACL_OUTSIDE_IN
tcp'ye herhangi bir arabirim eq 80'e izin ver
IP'yi reddetmek yok herhangi bir günlük
IP'yi herhangi bir günlüğü reddet

Dönüş trafiğine izin verme

Erişim listesini bağladıktan sonra ACL_OUTSIDE_IN dışındaki herhangi bir protokolü kullanarak yerel ağdan tüm kaynaklara tüm erişim Ping... Bunun nedeni, trafik filtreleme kurallarının dahili ( ACL_INSIDE_IN) ve dışta ( ACL_OUTSIDE_IN) arayüzler.
Yerel ağdan gelen isteklerin tüm dönüş paketlerinin geçmesi için, işlev için protokolleri belirtiriz. İncelemek.
R-DELTACONFIG (yapılandırma) #
ip adını inceleyin İnternet http
ip adını inceleyin İnternet https
ip adını inceleyin İnternet dns
ip adını inceleyin İnternet icmp

Denetim kuralını aşağıdakilere bağlarız: harici arayüz.
R-DELTACONFIG (yapılandırma) #
arayüz FastEthernet 4
ip interneti kontrol et

Denetim için onaylanan hizmetlerin listesi gelecekte genişletilebilir.

Bu makalenin erişim listelerinin nasıl çalıştığını daha iyi anlamanıza yardımcı olacağını umuyorum. Ne yazık ki, bu oldukça basit konuyu tarif etmek çok zor. basit dil... Herhangi bir sorunuz varsa veya belirsiz kalan bir nokta varsa, bana şu adresten yazın. [e-posta korumalı] veya sorunuzu yorumlarda bırakın.

ACL (Erişim Kontrol Listesi) bir erişim kontrol listesidir. Erişim listeleri, ağ mühendislerinin paketleri tanımlamasını sağlar farklı şekiller... Bunu yapmak için ACL konfigürasyonu, Cisco yönlendiricinin IP, TCP, UDP ve diğer başlıklarda bulabileceği değerleri listeler. Örneğin, bir erişim listesi, gönderici IP adresi 1.1.1.1 olan bir paketi tanıyabilir, veya 10.1 alt ağındaki alıcı IP adresine sahip paketler .1.0 / 24 veya hedef bağlantı noktası TCP 23 (Telnet) olan paketler. Çoğu zaman, erişim listeleri bir paket filtresi olarak kullanılır.

ACL aşağıdakiler için geçerlidir:

  1. Arayüz: paket filtreleme için
  2. Telnet: yönlendiriciye erişimi kısıtlamak için
  3. VPN: şifrelenecek trafiği belirlemek için
  4. QoS: işlenecek trafiği belirlemek için
  5. NAT: çevrilecek IP adreslerini belirlemek için

Kendi başlarına erişim listeleri, bir şeye izin veren veya reddeden ifadelerin bir listesidir. ACL, belirli bir arabirimde ve tek yönde (gelen veya giden) uygulanır. Böylece, yönlendiriciye giren paketlere, yönlendirici onları iletmeye karar vermeden önce ACL'ler uygulanabilir. Veya giden paketlere, yönlendirici bir yönlendirme kararı verdikten ve paketi bu arayüze ilettikten sonra.

Basit bir örneğe bakalım. LAN1'den (yerel iç ağ) f0 / 0 arayüzüne bir paket geldiğinde, yönlendirici gelen trafiği ACL'ye karşı kesinlikle ifadelerin yazıldığı sıraya göre kontrol eder. ACL paketin geçmesine izin veriyorsa, yönlendirici bunu f0 / 1 arayüzüne gönderir. Bir paket göndermeden önce yönlendirici kontrol eder. giden trafik ACL tarafından ve ancak bundan sonra ISP'ye (İnternet Servis Sağlayıcı - sağlayıcı) aktarılması hakkında bir karar verir.

Paketleri filtrelemek için bir ACL kullanırken, iki eylemden yalnızca biri seçilebilir. Yapılandırma komutları, sırasıyla paketi reddetmek veya iletime izin vermek için reddetme ve izin verme anahtar sözcüklerini kullanır.

ACL'ler iki şekilde gelir:

  1. Standart - yalnızca paket gönderenlerin IP adreslerini kontrol edebilir
  2. Genişletilmiş - kaynak / hedef adreslerini, protokol türünü, UDP / TCP bağlantı noktalarını kontrol edebilir

ACL'ler, sıra numaralarıyla (1'den 99'a kadar standart, 100'den 199'a uzatılmış) ve ayrıca sembolik adlarla belirtilir.

Birkaç düşünün önemli kurallar ACL ile ilgili:

  1. Arayüz, protokol, yön başına birden fazla erişim listesi yerleştiremezsiniz;
  2. ACL'nin yönlendiricinin kendisi tarafından oluşturulan trafik üzerinde hiçbir etkisi yoktur;
  3. Paketleri filtrelemek için ters WildCard maskesi kullanılır (örneğin, 0.0.255.255, 255.255.0.0'a karşılık gelir)
  4. ACL hatlarından birinde bir paket eşleştirilir eşleşmez, yönlendirici o hat üzerinde belirtilen eylemi gerçekleştirir ve daha fazla karşılaştırmayı durdurur.
  5. Her erişim listesinin sonunda bir örtük olarak reddet - hepsini reddet

Standart numaralı erişim listeleri aşağıdaki genel komutu kullanır:

erişim listesi (1-99) (izin ver | reddet) (adres | herhangi bir | ana bilgisayar) (kaynak-joker karakter)

Her numaralandırılmış ACL, yukarıdaki sözdizimi satırında gösterilen aralıkta herhangi bir sayı ile bir veya daha fazla erişim listesi komutu içerir. ACL numarasına ek olarak, her komut seçilen bir eylemi (izin ver veya reddet) ve tanıma mantığını içerir. Erişim listesi komut parametreleri:

  1. izin vermek - izin vermek
  2. inkar - inkar
  3. adres - reddet veya izin ver belirli ağ(IP adresini belirtiyoruz)
  4. herhangi - hepsini yasakla veya izin ver
  5. ana bilgisayar - ana bilgisayarı yasaklayın veya izin verin (IP adresini belirtin)
  6. kaynak joker karakter - ters maske

Bir erişim listesi oluşturduktan sonra bunu belirli bir arayüze uygulamanız gerekir:

ip erişim grubu (ACL numarası veya adı) (in | out)

İçeri giriş yönü, çıkış yönü ise çıkış yönüdür.

Hadi uygulamaya geçelim. Başlamak için, bir yöneticinin dizüstü bilgisayarının, bilgisayarlarının olacağı basit bir ağ kuracağız. sıradan kullanıcılar ve sunucu. Bunu yapmak gereklidir. Böylece sunucuya yalnızca yönetici erişebilir. IP planı ve diyagramı ektedir.

Geleneğe göre, bu Packet tracer şemasını bir araya getirecek olanlar için, komutların bir açıklaması ile tüm cihazların tam konfigürasyonunu veriyorum.

Değiştir> etkinleştir Anahtar # terminali yapılandır Anahtar (config) #vlan 2 - vlan 2 oluştur Anahtar (config-vlan) #name Yönetici - vlan 2'nin adı Switch (config) #vlan 3 - vlan 3 oluştur Switch (config-vlan) #name Sunucu - vlan 3'ün adı Switch (config) #vlan 10 - vlan 10 oluştur Switch (config-vlan) #name Kullanıcı "s - vlan 10'un adı Anahtar (yapılandırma) #interface aralığı fa0 / 1 - fa0 / 9 - Kullanıcılara yönelik arayüzleri yapılandırma Anahtar (config-if-range) #description Kullanıcı "s - arayüz açıklaması Switch (config-if-range) #switchport modu accessSwitch (config-if-range) #switchport access vlan 10 - çerçeveleri etiketleme 10 VLAN Switch (config-if-range) #exit Switch (config) #interface fa0 / 10 - Sunucuya yönelik arayüzleri yapılandırıyoruz Anahtar (config-if) #description Sunucusu - arayüz açıklaması- bağlantı noktasını etiketli moda ayarlayın Anahtar (config-if) #switchport erişim vlan 3 - çerçeveleri etiketleme 3 VLAN Switch (config-if) #exit Switch (config) #interface fa0 / 20 - Yöneticiye yönelik arayüzleri yapılandırıyoruz Değiştir (config-if) #description Yönetici - arayüz açıklaması Anahtar (config-if) #switchport modu erişimi - bağlantı noktasını etiketli moda ayarlayın Anahtar (config-if) #switchport erişim vlan 2 - etiketleme çerçeveleri 2 VLAN Switch (config-if) #exit Switch (config) #interface fa0 / 24 - Router'a yönelik arayüzleri yapılandırıyoruz Anahtar (config-if) #description Yönlendirici - arayüz açıklaması Anahtar (config-if) #switchport modu ana hattı - bağlantı noktasını etiketsiz moda ayarlayın Switch (config-if) #switchport ana hattına izin verilir vlan 2-3,10 - VLAN 2-3,10'u atla Anahtar (config-if) #exit Anahtar (yapılandırma) #yazma - yapılandırmayı kaydet

yönlendirici> etkinleştir - gelişmiş moda git Yönlendirici # terminali yapılandır - yapılandırma moduna gidin Yönlendirici (yapılandırma) #interface fa0 / 0 - Limanı Switch yönünde ısrar ediyoruz Yönlendirici (config-if) #description Anahtar - arayüz açıklaması Yönlendirici (config-if) #kapatma yok - arayüzü fiziksel olarak açın Yönlendirici (config-if) #exit Yönlendirici (yapılandırma) #interface fa0 / 0.2 - Yönetici alt ağı için alt arayüzü yapılandırıyoruz Yönlendirici (config-subif) #description Yönetici - arayüz açıklaması nokta1q 2 - 2 VLAN etiketleme Yönlendirici (config-subif) #ip adresi 172.16.0.1 255.255.255.0 - Yönetici için varsayılan ağ geçidini ayarlayın Yönlendirici (config-subif) #exit - Sunucu alt ağı için alt arayüzü yapılandırın Yönlendirici (config-subif) #description Sunucusu - arayüz açıklaması Yönlendirici (config-subif) #encapsulation nokta1q 3 - 3 VLAN etiketleme Yönlendirici (config-subif) #ip adresi 172.16.1.1 255.255.255.0 - Yönlendirici (config-subif) #exit Yönlendirici (config) #interface fa0 / 0.10 - Kullanıcılar alt ağı için alt arayüzü yapılandırın Yönlendirici (config-subif) #description Kullanıcı "s - arayüz açıklaması Yönlendirici (config-subif) #encapsulation nokta1q 10 - 10 VLAN etiketleme Yönlendirici (config-subif) #ip adresi 172.16.2.1 255.255.255.0 - Sunucular için varsayılan ağ geçidini ayarlayın Yönlendirici (config-subif) #exit

Kullanıcının bilgisayarından sunucuya bir ping başlatma

Gördüğünüz gibi erişim var. Erişime sahip olmak için yalnızca yöneticiye ihtiyacımız var. Bunu yapmak için, yöneticiden gelen tüm paketlerin (172.16.0.100) sunucu alt ağına (172.16.1.0/24) erişmesine izin vereceğimiz bir erişim listesi oluşturmamız gerekiyor (seri numarası 10 olsun). Daha sonra bu kuralı tüm giden paketler için fa0 / 0.3 alt arayüzüne (sunucular için) uygulayacağız.

Yönlendirici (yapılandırma) # erişim listesi 10 ana bilgisayara izin verir 172.16.0.100 - yönetici ana bilgisayarına izin verdiğimiz bir erişim listesi oluşturun Yönlendirici (config) #interface fa0 / 0.3 Yönlendirici (config-subif) #ip erişim grubu 10 çıkış - alt arayüzde erişim listesi ayarlarını uygulayın

Ayarları test etme. Kullanıcının bilgisayarından sunucuya bir ping göndeririz.

Hedef ana bilgisayara ulaşılamıyor yazıyor - hedef ana bilgisayara ulaşılamıyor.

Yöneticinin bilgisayarından ping başlatıyoruz.

Ping gider - ACL'nin doğru yapılandırıldığı anlamına gelir. Yöneticinin dizüstü bilgisayarından sunucuya ping attığımızda ne olur? Paket önce yönlendiricinin fa0 / 0.2 sibin arayüzüne ulaşır. Erişim listeleri bu arayüzde yapılandırılmamıştır, bu da paketin devam ettiği anlamına gelir. Yönlendirici, yönlendirme tablosuna bakar ve sunucu alt ağının fa0/0.3 alt arayüzünde olduğunu görür. Paketi göndermeden önce yönlendirici bunu görür. bu arayüz ekli ACL 10. Bu erişim listesinde yalnızca bir giriş var - paketlerin yalnızca 172.16.0.100 ana bilgisayarına (yöneticinin dizüstü bilgisayarı) gönderilmesine izin verin. Yönlendirici IP paketine bakar ve göndericinin 172.16.0.100 adresini görür ve ardından paketi sunucu alt ağına gönderir. 172.16.0.100 dışında herhangi bir Ip paketi atılacaktır, çünkü ACL 10'un sonunda örtük olarak herhangi bir şekilde reddet - her şeyi reddet.

Şimdi genişletilmiş erişim listelerine geçelim. Ağımızdaki kullanıcıların dosya deposuna ve web sitesine erişimi olması gerekir. Daha önce sunucuya erişimlerini tamamen kısıtlamıştık. Durumu düzeltmemiz gerekiyor ve genişletilmiş erişim listeleri bu konuda bize yardımcı olacak. Genişletilmiş ACL'ler kaynak/kaynak IP adreslerini, protokol türünü, UDP/TCP bağlantı noktalarını kontrol edebilir. Bizim durumumuzda, port numaralarını kontrol etmek gerekli olacaktır. Bir kullanıcı sunucuyla izin verilen bir bağlantı noktası aracılığıyla bağlantı kurarsa, yönlendirici böyle bir paketi iletir. İzin verilen bağlantı noktaları: 80 (HTTP - web sitesi erişimi), 21 (FTP - dosya depolama erişimi). HTTP ve FTP protokolleri, TCP'nin üzerinde çalışır. Ayrıca, sunucumuzdaki alan adlarını tanımak için DNS yükseltilir. DNS sunucusu 53 numaralı bağlantı noktasında çalışıyor.

Genişletilmiş erişim listesini fa0 / 0.3 alt arayüzüne yerleştireceğiz. Ancak bu arayüzün zaten bir erişim listesi var. Kuralı hatırlayın: Arayüz başına birden fazla erişim listesi yerleştiremezsiniz. Bu nedenle önceden oluşturulmuş erişim listesini silmeniz gerekecektir. Yönetici için oluşturulan kuralı, adla birlikte yeni bir genişletilmiş listeye taşıyın. sunucu çıkışı.

Yönlendirici için yapılandırma:

Yönlendirici (yapılandırma) #erişim listesi yok 10 ana bilgisayara izin verir 172.16.0.100 - önceki erişim listesini sil Yönlendirici (yapılandırma) #interface fa0 / 0.3 - Sunucular için alt arayüzün yapılandırılması Yönlendirici (config-subif) #ip erişim grubu yok 10 çıkış - silmek önceki ayarlar erişim listesi Yönlendirici (config-subif) #exit Yönlendirici (config) #ip erişim listesi genişletilmiş Sunucu çıkışı - genişletilmiş bir erişim listesi oluşturun Yönlendirici (config-ext-nacl) #izin ip ana bilgisayar 172.16.0.100 ana bilgisayar 172.16.1.2 - yöneticiye sunucuya tam erişim izni verin Yönlendirici (config-ext-nacl) #permit tcp herhangi bir ana bilgisayar 172.16.1.2 eq 80 - herhangi bir ana bilgisayarın sunucuya HTTP aracılığıyla erişmesine izin verin Yönlendirici (config-ext-nacl) #permit tcp herhangi bir ana bilgisayar 172.16.1.2 eq 21 - herhangi bir ana bilgisayarın FTP yoluyla sunucuya erişmesine izin verin Yönlendirici (config-ext-nacl) #permit tcp herhangi bir ana bilgisayar 172.16.1.2 eq 53 - herhangi bir ana bilgisayarın DNS aracılığıyla sunucuya erişmesine izin verin Yönlendirici (config-ext-nacl) #exit Yönlendirici (config) #interface fa0 / 0.3 Yönlendirici (config-if) #ip erişim grubu Sunucu çıkışı

Yöneticinin bilgisayarından sunucuya gönderilen ping:

Kullanıcının bilgisayarından ping yok:

DNS isteklerinin sunucuya geçip geçmediğini kullanıcının bilgisayarından kontrol edelim. Bunu yapmak için yardımcı programı çalıştırın nslookup- alan adının IP adresini tanımlar.

DNS sorguları sorunsuz geçer. Koşullu web sitemize erişimi bir tarayıcı aracılığıyla test edelim:

Son olarak FTP sunucusuna bağlanalım:

Bağlantı başarılı oldu!

EKL- erişim kontrol listeleri.

Aşağıdakilere bir liste atayabilirsiniz:
- her protokol
- her arayüz
- gelen ve giden trafik

ACL'nin yönlendiricinin kendisi tarafından oluşturulan trafik üzerinde hiçbir etkisi yoktur.

Var:
Standart ACL - paketleri yalnızca kaynak IP adresine göre filtreleyin
Genişletilmiş ACL - filtreler:
- Kaynak IP Adresi
- hedef IP adresi
- TCP veya UDP kaynak bağlantı noktaları
- TCP veya UDP hedef bağlantı noktaları
- protokol tipi (isim veya numara)

Ve:
1. Numaralandırılmış ACL'ler:
- 1'den 99'a ve 1300'den 2000'e - standart IP ACL
- 100'den 199'a ve 2000'den 2699'a - genişletilmiş IP ACL
2. Adlandırılmış - kullanımları daha uygundur, çünkü amaçlarını belirtebilirsiniz. İsim gereksinimleri:
- harf ve rakam içerebilir
- İsimlerin büyük harfle yazıldığı varsayılır
- isimler boşluk ve noktalama işaretleri içeremez
Adlandırılmış ACL'lere girişler ekleyebilir ve kaldırabilirsiniz.

ACL'ler nasıl uygulanır?
1. Bir numara veya ad belirterek bir ACL oluşturun ve koşulları belirtin.
2. Bir arabirime veya terminal hattına bir ACL atayın.

Standart ACL Nasıl Çalışır?
1. Arayüze bir paket gelir
2. Arayüzün girişinde ACL olup olmadığı kontrol edilir.
3. ACL'nin standart olup olmadığı kontrol edilir.
4. Kaynak adres ilk kayıtla karşılaştırılır.
5. Uyuşmuyorsa bir sonraki kayıtla karşılaştırılır.
6. Herhangi bir kayıtla eşleşmezse atılır.
7. Herhangi bir kayıtla eşleşirse, kurala göre atlayın veya atın.
8. Atlarsa, yönlendirme tablosunda hedef adresi arar.
9. Varsa gerekli arayüze gönderir.
10. Değilse, atar.

ACL yerleştirme kuralları:
- Standart ACL'ler hedef ağa daha yakın yerleştirilmelidir
- Genişletilmiş ACL - kaynak ağa daha yakın.

Numaralandırılmış standart bir ACL oluşturma
Yönlendirici (yapılandırma) # erişim listesi erişim listesi numarası kaynak
Örneğin:
R1 (yapılandırma) # erişim listesi 10 açıklama 192.168.0.0 LAN için İzin - ACL'yi veya ACL'deki her girişi tanımlayın
R1 (yapılandırma) # erişim listesi 10 izin 192.168.0.0 - sınıf ağı için
R1 (yapılandırma) # erişim listesi 10 izin 192.168.5.0 0.0.0.128 - sınıfsız bir ağ için
ACL'yi Kaldırma
R1 (yapılandırma) # erişim listesi yok 10

joker karakter maskesi, gerekli ağın maskesinin 255.255.255.0 maskesinden çıkarılmasıyla oluşturulur, örneğin
255.255.255.255
-
255.255.15.0
=
0.0.240.255

ACL'de kaynak adres yerine şunları belirtebilirsiniz:
- 0.0.0.0 255.255.255.255 yerine - herhangi biri
- 192.168.5.12 0.0.0.0 gibi belirli bir ana bilgisayar adresi yerine - ana bilgisayar 192.168.5.12

Bir arabirime numaralı standart ACL uygulama
Yönlendirici (config-if) #ip erişim grubu (erişim listesi numarası | erişim listesi adı) (içeri | dışarı)
Örneğin ACL 10:
R1 (yapılandırma) # erişim listesi 10 izin 192.168.0.0
R1 (yapılandırma) # erişim listesi 10 izin 192.168.5.0 0.0.0.128
Fastethernet 0/1 arayüzünün girişinde uyguluyoruz
R1 (yapılandırma) # arayüz f0 / 1
R1 (yapılandırma-if) #ip erişim grubu 10'da

Sanal Terminal Hatları için ACL'yi Yapılandırma (parametre yerine erişim grubu tarafından kullanılan erişim sınıfı):
R1 (yapılandırma satırı) # erişim sınıfı erişim listesi numarası (içeri | dışarı)
Örneğin
R1 (yapılandırma) # erişim listesi 22 izin 192.168.1.0
R1 (yapılandırma) # erişim listesi 22 izin 192.168.2.0
R1 (yapılandırma) # satır vty 0 4- tüm vty'ye atanmalıdır, çünkü kullanıcı bunlardan herhangi birine bağlanabilir
R1 (yapılandırma satırı) # yerel oturum açma
R1 (yapılandırma satırı) # taşıma girişi telnet
R1 (yapılandırma satırı) # ip erişim sınıfı 22 in

Numaralandırılmış ACL'leri düzenleme
Numaralandırılmış ACL'leri düzenlerken, girişler girildikleri sırayla eklenir. Daha önce girilen ikisi arasına yeni bir kayıt ekleyemezsiniz. Bunun hala yapılması gerekiyorsa, o zaman:
- Yapılandırmadaki tüm kuralları not defterine kopyalayın.
- Gerekli kayıtları ekleyin.
- Tüm AC'yi çıkarın
- Not defterindeki tüm girişleri kopyalayın
- Yapılandırmaya yerleştirin.

Adlandırılmış Standart ACL'ler
R1 (yapılandırma) # ip erişim listesi standardı NAME- adlandırılmış bir standart ACL bildir
R1 (config-std-nacl) # ana bilgisayar için reddet 192.168.0.13- ACL'yi tanımlayın
R1 (config-std-nacl) # reddet192.168.0.13 - kurallar oluştur
R1 (config-std-nacl) # izin192.168.0.0 0.0.0.255
R1 (config-std-nacl) # arabirim Fa0 / 0
R1 (yapılandırma-if) #ip erişim grubu NAME çıkışı- ACL'yi arayüze bağlayın
ACL'yi büyük harflerle adlandırmak gerekli değildir. Bu kolaylık içindir.

ACL'leri görüntüleme ve kontrol etme
Kullanılan komut şudur:
Yönlendirici # erişim listelerini göster (erişim listesi numarası | isim)
Örneğin,
R1 # erişim listelerini göster- tüm ACL'leri görüntüler
R1 # erişim listelerini göster 10- ACL numarası 10'u verir
R1 # erişim listelerini göster NAM- NAM adında bir ACL verir

Adlandırılmış EKL'leri Düzenleme
Adlandırılmış ACL'ler, numaralandırılmış ACL'lere göre önceliklidir. Düzenlemeleri daha kolaydır. Adlandırılmış ACL'lerdeki tüm kural girişleri 10'luk bir adımla numaralandırılmıştır. Yani, ilk kural 10, ikincisi 20 vb.
Bu nedenle, adlandırılmış EKL'ler için, belirli girişleri silebilir ve ayrıca mevcut kurallar arasına girişler ekleyerek, bunlara yeni bir kuralın eklendiği kuralların numaraları arasına bir sayı atayabilirsiniz.
Örneğin, aşağıdaki girişlere sahip bir ACL'miz var:
R1 # erişim listelerini göster

10 izin 192.168.10.10

Bir kural daha eklememiz gerekiyor:
R1 (yapılandırma) # erişim listesi standardı WEBSERVER
R1 (config-std-nacl) # 15 izin192.168.10.13

İşte olanlar:
R1 # erişim listelerini göster
Standart IP erişim listesi WEBSERVER
10 izin 192.168.10.10
15 izin 192.168.10.13
20 reddet 192.168.10.0, joker bitler 0.0.0.255
30 reddet 192.168.12.0, joker bitler 0.0.0.255

Genişletilmiş EKL'ler
Genişletilmiş erişim listeleri, trafiği daha doğru bir şekilde filtreleme olanağı sağlar, bu nedenle daha sık kullanılırlar. Kaynak adrese ek olarak şunları da kontrol ederler:
- protokol (IP, ICMP, TCP, UDP, vb.)
- varış noktası
- port numarası (arayüz değil)

Genişletilmiş Numaralandırılmış ACL Komutu Sözdizimi
Yönlendirici (yapılandırma) # erişim listesi erişim listesi numarası protokol kaynak hedef
nerede:
erişim listesi numarası- ACL numarası (100-199 ve 2000-2699)
inkar etmek- trafiği reddet
izin vermek- trafiğe izin ver
açıklama- kural açıklaması veya ACL
protokol- protokolün adı veya numarası. Bunlar başlıca IP, ICMP, TCP, UDP'dir.
kaynak- kaynak adresi
kaynak-joker karakter- ters kaynak maskesi
hedef- varış noktası
hedef-joker karakter- ters hedef maskesi
Şebeke- port numaralarını karşılaştırır. Şunlar olabilir: lt-küçüktür, gt-büyüktür, eq-eşittir, neq-eşit değildir, Aralık-aralığı içerir.
Liman- Port numarası
kurulmuş- yalnızca TCP için — kurulan bir bağlantıyı gösterir.

Örnek
R1 (yapılandırma) # erişim listesi 103 tcp'ye izin verir 192.168.10.0 0.0.0.255 herhangi bir eq 80- 192.168.10.0 ağından 80 numaralı bağlantı noktasına erişime izin veriyoruz
R1 (yapılandırma) # erişim listesi 103 tcp'ye izin verir 192.168.10.0 0.0.0.255 herhangi bir eq 443- 192.168.10.0 ağından 443 numaralı bağlantı noktasına erişime izin veriyoruz
R1 (config) # erişim listesi 104 tcp'ye izin verir herhangi bir 192.168.10.0 0.0.0.255 kurulu- 192.168.10.0 ağına kurulan tcp bağlantılarına izin veriyoruz.

Genişletilmiş ACL'ler, arabirimlere standart olanlarla aynı şekilde atanır. Örneğin:
R1 (yapılandırma) # arayüz f0 / 1
R1 (yapılandırma-if) #ip erişim grubu 103 çıkışı
R1 (yapılandırma-if) #ip erişim grubu 104 içinde

Adlandırılmış bir genişletilmiş ACL oluşturma
R1 (yapılandırma) # ip erişim listesi genişletilmiş SÖRF- giden trafik için adlandırılmış bir genişletilmiş ACL bildir
R1 (config-ext-nacl) # pernit tcp 192.168.10.0 0.0.0.255 herhangi bir eq 80 - kurallar oluştur
R1 (config-ext-nacl) # pernit tcp 192.168.10.0 0.0.0.255 herhangi bir eş 443
R1 (yapılandırma) # erişim listesi genişletilmiş TARAMA- gelen trafik için adlandırılmış bir genişletilmiş ACL beyan edin
R1 (config-ext-nacl) # pernit tcp herhangi bir 192.168.10.0 0.0.0.255 kurulmuş- kurallar oluştur

Karmaşık ACL'ler
Standart ve genişletilmiş ACL'ler, işlevselliği geliştirmek için karmaşık ACL'lerin temeli olabilir. Var:
- Dinamik
- Yansıtıcı
- Zaman sınırlı

Dinamik EKL - Bir kullanıcının yönlendiricinin arkasındaki herhangi bir cihaza erişmesi gerekiyorsa, önce Telnet aracılığıyla yönlendiricide kimlik doğrulaması yapması gerekir. Bundan sonra, yönlendirici belirli bir süre erişim sağlar ve ardından tekrar kimliğinin doğrulanması gerekir.
R1 (config) #username Öğrenci şifresi 0 cisco- ayrıcalıklar olmadan Telnet üzerinden bağlanacak kullanıcılar oluşturun.
R3 (yapılandırma) # erişim listesi 101, herhangi bir ana bilgisayara tcp'ye izin verir 10.2.2.2 eq telnet- yönlendiriciye her yerden bağlanmaya izin veriyoruz
R3 (config) # erişim listesi 101 dinamik test listesi zaman aşımı 15 ip izni 192.168.10.0 0.0.0.255 192.168.30.0 0.0.0.255- sadece 15 dakika boyunca Telnet üzerinden bağlantı kurduktan sonra çalışacak ve daha sonra bağlantı kesilecek olan testlist adlı dinamik bir giriş ekleyin. Bu kural, 192.168.10.0 ağından 192.168.30.0 ağına erişime izin verir.
R3 (config) #interface seri 0/0/1
R3 (config-if) #ip erişim grubu 101 içinde
- ACL 101'i arayüze gelen yönde ekliyoruz.
R3 (yapılandırma) #line vty 0 4
R3 (yapılandırma satırı) #login local
R3 (yapılandırma satırı) #autocommand erişim-etkin ana bilgisayar zaman aşımı 5
- kullanıcı yönlendiricide oturum açar açmaz, 192.168.30.0 ağına erişim sağlayacak bir otomatik komut yürütülür. Telnet oturumu daha sonra kapatılacaktır. Ağa erişim devam edecek ve 5 dakika bekledikten sonra kapatılacaktır.

refleksif ACL - ağ dışından gelen trafiğe yalnızca içeriden başlatılmışsa izin verin. Başlangıçta, dışarıdan gelen tüm trafik kapatılır. Erişim listesi, dışarıdan bir istekte bulunan kullanıcı oturumlarının parametrelerini hatırlar. Bu isteklere verilen yanıt, kullanıcı oturumunun parametrelerine göre kontrol edilir. Yansımalı ACL'ler yalnızca her oturumda otomatik olarak oluşturulan geçici girişlere sahiptir. Yansımalı ACL'ler doğrudan arayüze uygulanmaz, ancak arayüze uygulanan genişletilmiş bir ACL'ye gömülür. Yansımalı ACL'ler yalnızca genişletilmiş adlandırılmış ACL'lerde tanımlanabilir ve herhangi bir ACL ile kullanılabilir.
R2 (config) #ip erişim listesi genişletilmiş OUTBOUNDFILTERS- giden trafik için adlandırılmış bir genişletilmiş ACL beyan ederiz.
R2 (config-ext-nacl) #permit tcp 192.168.0.0 0.0.255.255 TCPTRAFFIC'i yansıtır- Router'ın içeriden başlatılan tcp trafiğini izlemesini ve TCPTRAFFIC değişkeninde saklamasını sağlıyoruz.
R2 (config-ext-nacl) #permit icmp 192.168.0.0 0.0.255.255 ICMPTRAFFIC'i yansıtır- Router'ın içeriden başlatılan icmp trafiğini izlemesini ve ICMPTRAFFIC değişkeninde saklamasını sağlıyoruz.
R2 (config) #ip erişim listesi genişletilmiş INBOUNDFILTERS- gelen trafik için adlandırılmış bir genişletilmiş ACL beyan ederiz.
R2 (config-ext-nacl) #evaluate TCPTRAFFIC- Router'ı gelen tcp trafiğinin parametrelerini OUTBOUNDFILTERS kuralı tarafından oluşturulan TCPTRAFFIC değişkeni ile karşılaştırmaya zorlarız.
R2 (config-ext-nacl) #evaluate ICMPTRAFFIC- yönlendiriciyi gelen icmp trafiğinin parametrelerini OUTBOUNDFILTERS kuralı tarafından oluşturulan ICMPTRAFFIC değişkeni ile karşılaştırmaya zorlarız.
R2 (config) #interface seri 0/1/0
R2 (config-if) #ip erişim grubu GELEN FİLTRELERİ- arayüze gelen trafik için ACL'yi uyguluyoruz.
R2 (config-if) #ip erişim grubu OUTBOUNDFILTERS çıkışı- arayüze giden trafik için ACL'yi uygularız.

Zamanlanmış EKL - Genişletilmiş ACL'de belirli bir girişin etkin olduğu zamanı belirler.
R1 (config) # zaman aralığı HER GÜN- EVERYOTHERDAY zaman değişkenini bildiririz.
R1 (config-time-aralığı) #periodic Pazartesi Çarşamba Cuma 8:00 - 17:00- bu değişken için haftanın günlerini ve saati eklediğimiz bir zaman listesi atarız.
R1 (config) # erişim listesi 101 tcp'ye izin verir 192.168.10.0 0.0.0.255 HERHANGİ bir eq telnet zaman aralığı- değişkeni kurala uygularız.
R1 (yapılandırma) #interface s0 / 0/0
R1 (config-if) #ip erişim grubu 101 çıkış- ACL'yi arayüze ekliyoruz.

Küçük şirin ağımız Lift mi Ap'nin geliştirilmesine devam ediyoruz. Yönlendirme ve kararlılık konularını zaten tartıştık ve şimdi nihayet İnternet'e bağlanmak için büyüdük. Kurumsal çevremizde yeteri kadar hapsetme!
Ancak gelişmeyle birlikte yeni sorunlar da ortaya çıkıyor.
İlk olarak, virüs web sunucusunu felç etti, ardından birisi ağa yayılan ve bant genişliğinin bir kısmını alan solucana çarptı. Ve bazı kötü adamlar sunucuya kaba kuvvet ssh şifreleri alma alışkanlığı edindi.
İnternete bağlandığımızda nelerin başlayacağını hayal edebiliyor musunuz?!
Yani bugün:
1) çeşitli Erişim Kontrol Listelerini yapılandırmayı öğrenmek
2) gelen ve giden trafiği sınırlama arasındaki farkı anlamaya çalışmak
3) NAT'ın nasıl çalıştığını, artılarını, eksilerini ve olanaklarını anlıyoruz
4) Uygulamada, NAT üzerinden bir İnternet bağlantısı düzenleyeceğiz ve erişim listelerini kullanarak ağın güvenliğini artıracağız.

Erişim kontrol Listesi

Peki erişim listeleri hakkında ne söylemeliyiz? Aslında konu nispeten basit ve sadece CCNA dersinden tembel olanlar kopyalanmıyor. Ama bazı önyargılar yüzünden inanılmaz hikayemizi parçalara ayırmıyor muyuz?

Erişim listelerinin amacı nedir? Açıkça cevap, erişimi kısıtlamak gibi görünüyor: örneğin birinin bir şey yapmasını yasaklamak. Genel olarak, bu doğrudur, ancak daha geniş bir anlamda anlaşılmalıdır: bu sadece güvenlikle ilgili değildir. Yani, başlangıçta, muhtemelen böyleydi, buradan izin vermek ve inkar etmek kurarken. Ancak gerçekte ACL, çok yönlü ve güçlü bir filtreleme mekanizmasıdır. Onların yardımıyla, belirli politikaları kime asacağınızı, kimin etmeyeceğini, kimin belirli süreçlere katılıp kimin katılmayacağını, kimleri hızımızı 56k, kimleri 56M ile sınırladığımızı belirleyebilirsiniz.
Biraz daha anlaşılır kılmak için basit bir örnek verelim. Erişim listelerine göre İlke Tabanlı Yönlendirme (PBR) çalışır. Gelen paketlerin buraya gelmesini sağlayabilirsiniz. itibaren ağlar 192.168.1.0/24 sonraki atlama 10.0.1.1'e gönderildi ve itibaren ağ 192.168.2.0/24 on 10.0.2.1 (normal yönlendirmenin paketin hedef adresine bağlı olduğunu ve otomatik olarak tüm paketlerin bir sonraki sıçramaya gönderildiğini unutmayın):

Makalenin sonunda, bir kurulum örneği ve.

EKL türleri
Tamam, bu sözleri bir süreliğine unutalım.
Genel olarak konuşursak, erişim listeleri farklıdır:
  • Standart
  • Genişletilmiş
  • Dinamik
  • refleksif
  • zaman aşamalı
Bugün dikkatimizi ilk ikisine odaklayacağız ve hepsini tsiska'da daha ayrıntılı olarak okuyabilirsiniz.
Gelen ve giden trafik
Başlamak için, bir şeyi çözelim. Gelen ve giden trafik nedir? Gelecekte buna ihtiyacımız olacak. Gelen trafik, arayüze dışarıdan gelen trafiktir.

Giden, arayüzden dışarıya gönderilendir.

Erişim listesini ya gelen trafiğe uygulayabilirsiniz, daha sonra istenmeyen paketler yönlendiriciye bile ulaşamaz ve buna göre ağa daha fazla veya giden paketler yönlendiriciye gelir, onun tarafından işlenir, hedefe ulaşır. arayüz ve sadece üzerine bırakın.

Standart erişim listesi yalnızca gönderenin adresini kontrol eder. Genişletilmiş - gönderen adresi, alıcı adresi ve bağlantı noktası. Standart ACL'leri alıcıya mümkün olduğunca yakın (gerekenden fazla kesmemek için) ve göndericiye daha yakın genişletilmiş ACL'ler (istenmeyen trafiği mümkün olan en kısa sürede bırakmak için) ayarlamanız önerilir.

Uygulama

Hemen uygulamaya geçelim. Küçük Lift mi Up ağımızda bunu neyle sınırlayacağız?
  1. Web sunucusu. Tümüne erişime izin ver TCP bağlantı noktası 80 (HTTP protokolü). Kontrolün yapılacağı cihaz için (yöneticimiz var) telnet ve ftp açmanız gerekiyor ama biz ona tam erişim vereceğiz. Diğer herkes yanar
  2. Dosya sunucusu... Lift mi Up sakinlerini, paylaşılan klasörler için bağlantı noktaları aracılığıyla ve geri kalan her şeyi FTP yoluyla almalıyız.
  3. Posta sunucusu. Burada çalışan SMTP ve POP3 var, yani 25 ve 110 numaralı TCP bağlantı noktaları. Ayrıca yönetici için kontrol erişimini de açıyoruz. Diğerlerini engelleriz
  4. Gelecekteki DNS sunucusu için UDP bağlantı noktası 53'ü açmanız gerekir.
  5. Sunucu ağına ICMP mesajlarına izin ver
  6. FEO, VET ve Muhasebeye girmemiş tüm taraf olmayan kişiler için Diğer ağımız olduğundan, hepsini kısıtlayacağız ve yalnızca bir miktar erişim sağlayacağız (biz ve yönetici dahil)
  7. Yine, sadece yöneticinin kontrol ağına ve tabii ki sevgilinize girmesine izin verilmelidir.
  8. Departman çalışanları arasındaki iletişime engel oluşturmayacağız
1) WEB sunucusuna erişim
Burada izin verilmeyen her şeyi yasaklayan bir politikamız var. Bu nedenle, şimdi bir şeyi açmamız ve diğer her şeyi kapatmamız gerekiyor.
Sunucuların ağını koruduğumuz için listeyi onlara doğru giden arayüze de asacağız yani FE0 / 0.3'e. içinde veya dışarı bunu yapmamız gerekiyor mu? Halihazırda yönlendiricide bulunan sunuculara paket göndermek istemiyorsak, bu giden trafik olacaktır. Yani, hedef adresler (hedef) sunucular ağında olacak (trafiğin hangi sunucuya gideceğini seçeceğiz) ve kaynak adresleri (kaynak) bizimki gibi herhangi biri olabilir. Şirket ağı ve internetten.
Bir not daha: hedef adrese göre filtreleyeceğimiz için (WEB sunucusu için bazı kurallar var, posta sunucusu için diğerleri var), o zaman genişletilmiş bir erişim kontrol listesine ihtiyacımız var, sadece bunu yapmamıza izin veriyor.

Erişim listesindeki kurallar, ilk eşleşmeye kadar yukarıdan aşağıya doğru sırayla kontrol edilir. Kurallardan biri çalıştığında, izin verme veya reddetme olmasına bakılmaksızın, kontrol durur ve trafik işleme tetiklenen kurala dayalıdır.
Yani WEB sunucusunu korumak istiyorsak öncelikle izin vermemiz gerekiyor çünkü ilk satırda yapılandırma yaparsak herhangi bir ipi reddet- o zaman her zaman çalışacak ve trafik hiç gitmeyecek. Herhangi- bu özel kelime, bu, ağ adresi ve 0.0.0.0 0.0.0.0 dönüş maskesi anlamına gelir ve herhangi bir ağdan kesinlikle tüm düğümlerin kuralın altına girdiği anlamına gelir. Başka bir özel kelime ev sahibi- bu, 255.255.255.255 maskesi anlamına gelir - yani, tam olarak tek bir belirtilen adres.
Yani, ilk kural: 80 numaralı bağlantı noktasındaki herkese erişime izin ver
msk-arbat-gw1 (config-ext-nacl) # açıklama WEB
herhangi bir ana bilgisayar 172.16.0.2 eq 80

İzin veriyoruz ( izin vermek) Herhangi bir ana bilgisayardan gelen TCP trafiği ( herhangi) misafir etmek ( ev sahibi- tam olarak bir adres) 172.16.0.2, 80. bağlantı noktasına adreslenir.
Bu erişim listesini FE0 / 0.3 arayüzüne asmaya çalışıyoruz:
msk-arbat-gw1 (config-subif) # ip erişim grubu Sunucular çıkışı dışarı

Bağlı bilgisayarlarımızdan herhangi birini kontrol ederiz:

Gördüğünüz gibi sayfa açılıyor, peki ya ping?

Ve böylece başka bir düğümden?

Gerçek şu ki, cisk ACL'deki tüm kurallardan sonra, örtük bir herhangi bir ipi reddet(kapalı inkar). Bu bizim için ne anlama geliyor? Arayüzden ayrılan ve ACL'deki kurallardan herhangi biriyle eşleşmeyen herhangi bir paket, örtük olarak reddedilir ve atılır. Yani en azından ping, en azından ftp, en azından burada hiçbir şey çalışmayacak.

Daha da ileri gidelim: Kontrolün gerçekleştirileceği bilgisayara tam erişim verilmesi gerekiyor. Bu, Diğer ağdan 172.16.6.66 adresli yöneticimizin bilgisayarı olacaktır.
Zaten varsa, her yeni kural otomatik olarak listenin sonuna eklenir:
msk-arbat-gw1 (yapılandırma) #
msk-arbat-gw1 (config-ext-nacl) # tcp ana bilgisayarına izin ver 172.16.6.66 ana bilgisayar 172.16.0.2 aralığı 20 ftp
msk-arbat-gw1 (config-ext-nacl) # tcp ana bilgisayarına izin ver 172.16.6.66 ana bilgisayar 172.16.0.2 eq telnet

Bu kadar. İstenen düğümden kontrol ediyoruz (RT'de telnet sunucular tarafından desteklenmediği için FTP üzerinden kontrol ediyoruz):

Yani, FTP mesajı yönlendiriciye ulaştı ve FE0 / 0.3 arayüzünden çıkmalıdır. Yönlendirici, paketin eklediğimiz kuralla eşleştiğini kontrol eder ve görür ve geçer.

Ve yabancı bir düğümden

FTP paketi, örtük olarak herhangi bir şekilde reddetme dışında hiçbir kuralla eşleşmez ve atılır.

2) Dosya sunucusuna erişim
Burada, her şeyden önce, kimin “yerleşik” olacağına, kime erişim verilmesi gerektiğine karar vermek gerekir. Tabii ki, bunlar 172.16.0.0/16 ağından bir adrese sahip olanlar - sadece onlara erişim verilecek.
Şimdi birlikte paylaşılan klasörler... Çoğu modern sistem, bunun için zaten SMB protokolünü kullanıyor, bu da TCP bağlantı noktası 445. Eski sürümlerde, üç bağlantı noktası üzerinden beslenen NetBios kullanıldı: UDP 137 ve 138 ve TCP 139. Yöneticimizle anlaştıktan sonra, bağlantı noktası 445'i yapılandıracağız (ancak bunu RT içinde kontrol edemeyecek olsak da, kurs). Ancak bunun yanı sıra, FTP - 20, 21 için ve yalnızca dahili ana bilgisayarlar için değil, aynı zamanda İnternet'ten bağlantılar için de bağlantı noktalarına ihtiyacımız var:
msk-arbat-gw1 (config) # ip erişim listesi genişletilmiş Sunucu çıkışı
msk-arbat-gw1 (config-ext-nacl) # tcp'ye izin ver 172.16.0.0 0.0.255.255 ana bilgisayar 172.16.0.3 eş 445
msk-arbat-gw1 (config-ext-nacl) # tcp'ye izin ver herhangi ana bilgisayar 172.16.0.3 aralığı 20 21

Burada inşaatı yeniden uyguladık aralık 20 21- bir satırda birkaç bağlantı noktası belirtmek için. FTP için genel olarak konuşursak, yalnızca 21 numaralı bağlantı noktası yeterli değildir. Gerçek şu ki, yalnızca açarsanız, sizin için yetkilendirme gerçekleşir, ancak dosya aktarımı olmaz.

0.0.255.255 - joker karakter maskesi. Ne olduğu hakkında biraz sonra konuşacağız.

3) Posta sunucusuna erişim
Uygulama geliştirmeye devam ediyoruz - şimdi posta sunucusuyla. Aynı erişim listesinin bir parçası olarak, ihtiyacımız olan yeni kayıtları ekliyoruz.
Yaygın protokoller için bağlantı noktası numaraları yerine adlarını belirtebilirsiniz:
msk-arbat-gw1 (config) # ip erişim listesi genişletilmiş Sunucu çıkışı
msk-arbat-gw1 (config-ext-nacl) #permit tcp herhangi bir ana bilgisayar 172.16.0.4 eq pop3
msk-arbat-gw1 (config-ext-nacl) #permit tcp herhangi bir ana bilgisayar 172.16.0.4 eq smtp
4) DNS sunucusu
msk-arbat-gw1 (config) # ip erişim listesi genişletilmiş Sunucu çıkışı
msk-arbat-gw1 (config-ext-nacl) # izin udp 172.16.0.0 0.0.255.255 ana bilgisayar 172.16.0.5 eş 53
5) ICMP
Ping durumunu düzeltmek için kalır. Kuralları listenin sonuna eklemek sorun değil, ancak onları başlangıçta görmek bir şekilde estetik açıdan hoş.
Bunun için basit bir hile kullanıyoruz. Bunu yapmak için, örneğin bir metin düzenleyici kullanabilirsiniz. ACL parçasını oradaki gösteri çalışmasından kopyalayın ve ekleyin aşağıdaki satırlar:
hiçbir ip erişim listesi genişletilmiş Sunucu çıkışı yok
ip erişim listesi genişletilmiş Sunucular çıkışı
icmp herhangi birine izin ver
açıklama WEB



açıklama DOSYA


açıklama POSTA


DNS'i yorumla

İlk satırda mevcut listeyi sileriz, ardından yeniden oluşturup tüm yeni kuralları ihtiyacımız olan sırayla listeleriz. Üçüncü satırdaki komut ile tüm ICMP paketlerinin herhangi bir ana bilgisayardan herhangi bir ana bilgisayara geçmesine izin verdik.

Ardından, her şeyi toplu olarak kopyalayın ve konsola yapıştırın. Arayüz, her satırı ayrı bir komut olarak yorumlar ve yürütür. Böylece eski listeyi yenisiyle değiştirdik.
Bir ping olup olmadığını kontrol ediyoruz:

Mükemmel bir şekilde.

Bu hile iyi başlangıç ​​konfigürasyonu ya da tam olarak ne yaptığınızı biliyorsanız. Açık çalışan ağ ACL'yi uzaktan yapılandırdığınızda, yapılandırılabilir donanım parçasına erişiminiz olmadan kalma riskiyle karşı karşıya kalırsınız.

Başa veya başka bir kural eklemek için Doğru yer, bu numarayı kullanabilirsiniz:
ip erişim listesi genişletilmiş Sunucular çıkışı
1 izin icmp herhangi biri

Listedeki her kural belirli bir adımla numaralandırılmıştır ve izin ver / reddet kelimesinin önüne bir sayı koyarsanız, kural sonuna değil ihtiyacınız olan yere eklenecektir. Maalesef bu özellik RT'de çalışmıyor.
Aniden gerekliyse (kurallar arasındaki tüm ardışık sayılar işgal edilir), kuralları her zaman yeniden numaralandırabilirsiniz (bu örnekte, ilk kuralın sayısı 10'dur (ilk sayı) ve artış 10'dur):
ip erişim listesi yeniden sıralama Sunucular çıkışı 10 10


Sonuç olarak, sunucu ağındaki Erişim Listesi şöyle görünecektir:
ip erişim listesi genişletilmiş Sunucular çıkışı
icmp herhangi birine izin ver
açıklama WEB
herhangi bir ana bilgisayara tcp'ye izin ver 172.16.0.2 eq www
tcp ana bilgisayarına izin ver 172.16.6.66 ana bilgisayar 172.16.0.2 aralığı 20 ftp
tcp ana bilgisayarına izin ver 172.16.6.66 ana bilgisayar 172.16.0.2 eq telnet
açıklama DOSYA
tcp'ye izin ver 172.16.0.0 0.0.255.255 ana bilgisayar 172.16.0.3 eq 445
herhangi bir ana bilgisayara tcp'ye izin ver 172.16.0.3 aralığı 20 21
açıklama POSTA
herhangi bir ana bilgisayara tcp'ye izin ver 172.16.0.4 eq pop3
herhangi bir ana bilgisayara tcp'ye izin ver 172.16.0.4 eq smtp
DNS'i yorumla
udp'ye izin ver 172.16.0.0 0.0.255.255 ana bilgisayar 172.16.0.5 eq 53

Artık yöneticimizin sadece WEB sunucusuna erişimi var. Ona tüm ağa tam erişim verin. Bu ilk ev ödevi.

6) Diğer ağdaki kullanıcıların hakları
Şimdiye kadar ihtiyacımız vardı dışarıda tutmak Birisi bir yerde, bu yüzden hedef adrese dikkat ettik ve arayüzden giden trafikte erişim listesini kapattık. şimdi ihtiyacımız var serbest bırakmamak: Diğer ağdaki bilgisayarlardan gelen hiçbir istek sınırların dışına çıkmamalıdır. Tabii ki, özellikle izin verdiklerimiz hariç.
msk-arbat-gw1 (config) # ip erişim listesi genişletilmiş Diğer giriş

msk-arbat-gw1 (config-ext-nacl) # ip ana bilgisayarına izin ver 172.16.6.61 herhangi biri



Burada önce herkesi yasaklayıp sonra seçkinlere izin veremezdik, çünkü kesinlikle tüm paketler kuralın altına girecekti. herhangi bir ipi reddet ve izin vermek hiç işe yaramazdı.
Arayüze başvuruyoruz. Bu sefer girişte:
msk-arbat-gw1 (yapılandırma) #int fa0 / 0.104
msk-arbat-gw1 (config-subif) #ip erişim grubu Diğer giriş içinde

yani, 172.16.6.61 veya 172.16.6.66 adresli ana bilgisayardan gelen tüm IP paketlerinin, amaçlanan her yere gönderilmesine izin verilir. Neden burada da genişletilmiş erişim listesi kullanıyoruz? Sonuçta, yalnızca gönderenin adresini kontrol ettiğimiz anlaşılıyor. Çünkü yöneticiye tam erişim verdik ama örneğin Lift mi Up şirketinin konuğu aynı ağa giren kişinin kesinlikle internetten başka bir şeye erişimi yok.
7) Kontrol ağı
Karmaşık bir şey yok. Kural şöyle görünecek:
msk-arbat-gw1 (config) # ip erişim listesi genişletilmiş Yönetim çıkışı
msk-arbat-gw1 (config-ext-nacl) # açıklama IAM
msk-arbat-gw1 (config-ext-nacl) # ip ana bilgisayarına izin ver 172.16.6.61 172.16.1.0 0.0.0.255
msk-arbat-gw1 (config-ext-nacl) # açıklama YÖNETİCİ
msk-arbat-gw1 (config-ext-nacl) # ip ana bilgisayarına izin ver 172.16.6.66 172.16.1.0 0.0.0.255

Bu ACL, FE 0 / 0.2 arayüzünde çıkışa uygulanır:
msk-arbat-gw1 (yapılandırma) # int fa0 / 0.2
msk-arbat-gw1 (config-subif) #ip erişim grubu Yönetim çıkışı
8) Artık kısıtlama yok
Hazır
Maske ve ters maske
Şimdiye kadar, şüpheli bir şekilde bir alt ağ maskesine benzeyen 0.0.255.255 biçiminde garip bir parametre verdik.
Anlaması biraz zor, ancak kuralla eşleşecek ana bilgisayarları belirlemek için kullanılan ters maske budur.
Geriye dönük maskenin ne olduğunu anlamak için normal maskenin ne olduğunu bilmeniz gerekir.En basit örnekle başlayalım.

256 adresli normal bir ağ: örneğin 172.16.5.0/24. Bu giriş ne anlama geliyor?
Ve tam olarak şu anlama geliyor

IP adresi. Ondalık gösterim172 16 5 0
IP adresi. ikili gösterim10101100 00010000 00000101 00000000
11111111 11111111 11111111 00000000
255 255 255 0

IP adresi, ondalık gösterimde görmeye alışkın olduğunuz 4 parçaya bölünmüş 32 bitlik bir parametredir.
Alt ağ maskesi de 32 bit uzunluğundadır - aslında bir şablondur, alt ağ adresinin ait olduğu bir şablondur. Maskede olanlar olduğunda, değer değişemez, yani 172.16.5 kısmı tamamen değişmez ve bu alt ağdaki tüm ana bilgisayarlar için aynı olacaktır, ancak sıfırların değiştiği.
Yani, örneğimizde 172.16.5.0/24 ağ adresidir ve ana bilgisayarlar 172.16.5.1-172.16.5.254 olacaktır (son 255 yayındır), çünkü 00000001 1 ve 11111110 254'tür (konuşuyoruz). adresin son sekizlisi hakkında). / 24, maskenin uzunluğunun 24 bit olduğu anlamına gelir, yani 24 tane var - değişmeyen kısım ve 8 sıfır.
Başka bir durum, bir maskemiz olduğunda, örneğin 24 değil 30 bit.
Örneğin 172.16.2.4/30. Bunu şöyle yazalım:
IP adresi. Ondalık gösterim172 16 2 4
IP adresi. ikili gösterim10101100 00010000 00000010 00000100
Alt ağ maskesi. ikili gösterim11111111 11111111 11111111 11111100
Alt ağ maskesi. Ondalık gösterim255 255 255 252

Gördüğünüz gibi, bu alt ağ için yalnızca son iki bit değişebilir. Son sekizli aşağıdaki 4 değere sahip olabilir:
00000100 - alt ağ adresi (ondalık olarak 4)
00000101 - düğüm adresi (5)
00000110 - düğüm adresi (6)
00000111 - yayın (7)
Bunun dışındaki her şey zaten farklı bir alt ağ

Yani, şimdi sizin için biraz açık olmalı ki, alt ağ maskesi 32 bitlik bir dizidir, burada ilk başta alt ağ adresi anlamına gelir, ardından sıfırlar, yani ana bilgisayar adresi anlamına gelir. Bu durumda, maskedeki alternatif sıfırlar ve birler değişemez. Yani, maske 111111111.11100000.11110111.00000000 imkansız

joker karakter nedir?
Yöneticilerin büyük çoğunluğu ve bazı mühendisler için bu, normal maskenin tersinden başka bir şey değildir. Yani, sıfırlar önce eşleşmesi gereken parçanın adresini, birler ise tam tersine serbest parçanın adresini belirler.
Yani aldığımız ilk örnekte, 172.16.5.0/24 alt ağından tüm ana bilgisayarları filtrelemek istiyorsanız, Erişim listesinde kuralı belirleyeceksiniz:
…. 172.16.5.0 0.0.0.255
Çünkü geriye dönük maske şöyle görünür:

00000000.00000000.00000000.11111111

172.16.2.4/30 ağı ile ikinci örnekte, ters maske şöyle görünecektir: 30 sıfır ve iki bir:

Ters maske. ikili gösterim00000000 00000000 00000000 00000011
Ters maske. Ondalık gösterim0 0 0 3

Buna göre erişim listesindeki parametre şöyle görünecektir:
…. 172.16.2.4 0.0.0.3
Daha sonra maskelerin ve ters maskelerin yanlış hesaplamaları üzerine bir köpek yediğinizde en çok kullanılan sayıları, belirli bir maskedeki konak sayısını hatırlayacaksınız, anlatılan durumlarda ters maskenin son sekizlisinin elde edildiğini anlayacaksınız. normal maskenin son sekizlisini 255'ten (255-252 = 3) çıkararak, vb. Bu arada, çok çalışmanız ve saymanız gerekiyor)

Ama aslında, ters maske biraz daha zengin bir araçtır, burada aynı alt ağ içindeki adresleri birleştirebilir veya hatta alt ağları birleştirebilirsiniz, ancak ana fark, sıfırları ve birleri değiştirebilmenizdir. Bu, örneğin belirli bir ana bilgisayarı (veya grubu) birden çok alt ağda tek satırla filtrelemenize olanak tanır.

örnek 1
Verilen: ağ 172.16.16.0/24
Gerekli: ilk 64 adresi filtreleyin (172.16.16.0-172.16.16.63)
Çözüm: 172.16.16.0 0.0.0.63
Örnek 2
Verilen: ağlar 172.16.16.0/24 ve 172.16.17.0/24
Gerekli: adresleri her iki ağdan da filtrele
Çözüm: 172.16.16.0 0.0.1.255
Örnek 3
Verilen: Ağlar 172.16.0.0-172.16.255.0
Gerekli: tüm alt ağlardan adres 4 ile ana bilgisayarı filtrele
Çözüm: 172.16.0.4 0.0.255.0
Resimlerde ACL çalışması
Varsayımsal ağ:

1) FE0 / 1 arabirimindeki RT1 yönlendiricisinde, ICMP dışında her şeyin girmesine izin verilir.

2) RT2 yönlendiricisinde, FE0 / 1 arabiriminde SSH ve TELNET devre dışı bırakılır.

testler
tıklanabilir
1) PC1'den Sunucu1'e Ping Atma

2) PC1'den Sunucu1'e TELNET

3) PC1'den Sunucu2'ye SSH

4) Sunucu2'den PC1'e Ping Atma

Eklentiler
1) Giden trafik (dışarı) için kurallar, cihazın kendi trafiğini filtrelemeyecektir. Yani, tsiska'nın kendisinin bir yere erişmesini yasaklamanız gerekiyorsa, o zaman bu arayüzde gelen trafiği filtrelemeniz gerekecektir (erişimin reddedilmesi gereken yerden gelen trafiği döndürmeniz).

2) C ACL daha dikkatli olmalıdır. Kuraldaki küçük bir hata, yanlış yapılandırma sırası ve hatta kötü düşünülmüş bir liste ile cihaza erişiminiz olmayabilir.
Örneğin, 172.16.6.61 adresiniz hariç, 172.16.6.61/24 ağı için herhangi bir yere erişimi engellemek ve aşağıdaki gibi kuralları belirlemek istiyorsunuz:
ip 172.16.6.0 0.0.0.255 herhangi birini reddet


ACL'yi arayüze uyguladığınız anda, yönlendiriciye erişiminizi hemen kaybedersiniz, çünkü ilk kuralın altına girersiniz ve ikincisi kontrol bile edilmez.
Başınıza gelebilecek ikinci hoş olmayan durum: ACL'nin altına girmemesi gereken trafik.
Şu durumu bir düşünün: Sunucu odamızda pasif bir FTP sunucumuz var. Erişmek için ACL'de 21 numaralı bağlantı noktasını açtınız. sunucu çıkışı... İlk bağlantı kurulduktan sonra, FTP sunucusu istemciye dosya göndermeye / almaya hazır olduğu bağlantı noktasını söyler, örneğin 1523. İstemci bu bağlantı noktasında bir TCP bağlantısı kurmaya çalışır, ancak böyle bir iznin olmadığı ACL Sunucularının çıkışına rastlar - başarılı bir aktarımın hikayesi bu şekilde sona erer. Dosya sunucusuna erişimi yapılandırdığımız yukarıdaki örneğimizde, yalnızca 20'sinde ve 21'inde erişimi açtık, çünkü bu örnek için yeterlidir. Gerçek hayatta, kurcalamak zorundasın. Yaygın durumlar için birkaç ACL yapılandırması örneği.

3) İkinci noktadan çok benzer ve ilginç bir problem çıkıyor.
Örneğin, aşağıdaki ACL'leri İnternet arayüzünde kapatmayı düşündünüz:
erişim listesi çıkış izni tcp ana bilgisayar 1.1.1.1 ana bilgisayar 2.2.2.2 eq 80
tcp host 2.2.2.2 herhangi bir eq 80'deki erişim listesi

Görünüşe göre: 1.1.1.1 adresli ana bilgisayarın 80. bağlantı noktasında sunucu 2.2.2.2'ye (ilk kural) erişmesine izin verilir. Ve sunucu 2.2.2.2'den içeride bağlantılara izin verilir.
Ancak buradaki nüans, 1.1.1.1 bilgisayarının 80. bağlantı noktasında bir bağlantı kurmasıdır, ancak diğer bazılarından, örneğin 1054'ten, yani sunucudan gelen yanıt paketi 1.1.1.1:1054 soketine düşmez. ACL'deki kural altında IN ve örtülü olarak reddedildiği için herhangi bir şekilde reddedildi.
Böyle bir durumdan kaçınmak ve tüm paketle bağlantı noktalarını açmamak için, ACL'deki bu numaraya şurada başvurabilirsiniz:
tcp ana bilgisayarı 2.2.2.2'ye izin verin.

Aşağıdaki makalelerden birinde böyle bir çözümün ayrıntıları.

4) Modern dünyadan bahsetmişken, nesne grupları (Nesne grubu) gibi bir aracın etrafından dolaşamazsınız.

Diyelim ki üç tane yayınlayan bir ACL yazmak istiyorsunuz. belirli adresler adres ve bağlantı noktası sayısını artırma olasılığı ile üç özdeş bağlantı noktasında İnternet'e. Nesne gruplarını bilmeden nasıl göründüğü:
ip erişim listesi genişletilmiş TO-İNTERNET
tcp ana bilgisayarına izin ver 172.16.6.66 herhangi bir eq 80
tcp ana bilgisayarına izin ver 172.16.6.66 herhangi bir eq 8080
tcp ana bilgisayarına izin ver 172.16.6.66 herhangi bir eş 443
tcp ana bilgisayarına izin ver 172.16.6.67 herhangi bir eq 80
tcp ana bilgisayarına izin ver 172.16.6.67 herhangi bir eq 8080
tcp ana bilgisayarına izin ver 172.16.6.67 herhangi bir eş 443
tcp ana bilgisayarına izin ver 172.16.6.68 herhangi bir eq 80
tcp ana bilgisayarına izin ver 172.16.6.68 herhangi bir eq 8080
tcp ana bilgisayarına izin ver 172.16.6.68 herhangi bir eş 443

Parametre sayısı arttıkça, böyle bir ACL'yi sürdürmek giderek daha zor hale gelir ve yapılandırma sırasında hata yapmak kolaydır.
Ancak nesne gruplarına dönersek, aşağıdaki formu alır:
nesne grubu hizmeti INET-PORTS
açıklama Bazı ana bilgisayarlar için izin verilen bağlantı noktaları
tcp eq www
tcp eq 8080
tcp eq 443

Nesne grubu ağı HOSTS-TO-INET
açıklama Ana bilgisayarların internette gezinmesine izin verilir
ana bilgisayar 172.16.6.66
ana bilgisayar 172.16.6.67
ana bilgisayar 172.16.6.68

IP erişim listesi genişletilmiş INET-OUT
nesne grubu INET-PORTS nesne grubu HOSTS-TO-INET'e izin ver

İlk bakışta biraz tehditkar görünüyor, ancak bakarsanız çok uygun.

4) Sorun giderme için çok faydalı bilgiler komutun çıktısından alınabilir. ip erişim listelerini göster% ACL adı%... Belirtilen ACL için gerçek kural listesine ek olarak, bu komut her bir kural için eşleşme sayısını gösterir.

Msk-arbat-gw1 # sh ip erişim listeleri nat-inet
Genişletilmiş IP erişim listesi nat-inet




ip ana bilgisayarına izin ver 172.16.6.61 herhangi biri
(4 maç(lar))



Ve herhangi bir kuralın sonuna ekleme kayıt, konsoldaki her maçla ilgili mesajlar alabileceğiz. (ikincisi PT'de çalışmıyor)

NAT

Ağ Adresi Çevirisi, 1994'ten beri çiftlikte vazgeçilmez bir araç olmuştur. Bununla ilgili birçok oturum bozulur ve paketler kaybolur.
Yerel ağınızı İnternet'e bağlamak için en sık ihtiyacınız olur. Gerçek şu ki teorik olarak 255 * 255 * 255 * 255 = 4 228 250 625.4 milyar adres var. Gezegenin her sakininin sadece bir bilgisayarı olsa bile, artık yeterli adres olmayacaktı. Ve burada, ütülerin internete bağlı olmaması dışında. Akıllı insanlar bunu 90'ların başında fark ettiler ve geçici bir çözüm olarak adres alanını genel (beyaz) ve özel (özel, gri) olarak bölmeyi önerdiler.
İkincisi üç aralık içerir:

10.0.0.0/8
172.16.0.0/12
192.168.0.0/16

Bunları özel ağınızda özgürce kullanabilirsiniz ve bu nedenle elbette tekrarlanacaktır. Peki ya özgünlük? Bir istek alan WEB sunucusu tarafından kimlere cevap verilecek? iade adresi 192.168.1.1? Rostelecom? Tatneft şirketleri? Ya da odanız Dink? Büyük internette kimse özel ağlar hakkında hiçbir şey bilmiyor - yönlendirilmiyorlar.
NAT'ın sahneye girdiği yer burasıdır. Genel olarak, bu bir aldatmaca, bir düzendir. İtme cihazında, özel adresiniz, kabaca söylemek gerekirse, WEB sunucusuna giderken paketin ilerisinde görünecek olan beyaz bir adresle değiştirilir. Ancak beyaz adresler çok iyi yönlendirilmiştir ve paket kesinlikle darbeli cihaza geri dönecektir.
Ama daha sonra onunla ne yapacağını nasıl anlayacak? Burada bununla ilgileneceğiz.

NAT türleri
Statik
Bu durumda, bir dahili adres bir harici adrese dönüştürülür. Aynı zamanda, harici adrese gelen tüm talepler dahili adrese yayınlanacaktır. Sanki bu sunucu bu beyaz IP adresinin sahibiymiş gibi.

Aşağıdaki komutla yapılandırılır:
Yönlendirici (config) # ip nat kaynak statik içinde 172.16.6.5 198.51.100.2

Ne oluyor:
1) Düğüm 172.16.6.5, WEB sunucusunu adresler. Alıcı adresi 192.0.2.2, gönderici adresi 172.16.6.5 olan bir IP paketi gönderir.

2) Şirket ağı üzerinden paket, NAT'ın yapılandırıldığı 172.16.6.1 ağ geçidine teslim edilir.

3) Konfigüre edilen komuta göre, yönlendirici mevcut IP başlığını kaldırır ve onu, 198.51.100.2 beyaz adresinin zaten gönderen adresi olarak göründüğü yeni bir başlıkla değiştirir.


4) Tarafından büyük internet güncellenen paket 192.0.2.2 sunucusuna ulaşır.

5) Cevabın 198.51.100.2'ye gönderilmesi gerektiğini görür ve bir yanıt IP paketi hazırlar. Gönderici adresi olarak gerçek sunucu adresi 192.0.2.2, hedef adres 198.51.100.2'dir.


6) Paketin internet üzerinden uçtuğu gerçeği aynı şekilde değil.

7) Arama cihazı, 198.51.100.2 adresine yapılan tüm isteklerin 172.16.6.5'e yeniden yönlendirilmesi gerektiğini belirtir. Yönlendirici, içine gizlenmiş olan TCP segmentini tekrar çıkarır ve yeni bir IP başlığı ayarlar (kaynak adres değişmez, hedef adres 172.16.6.5'tir).


8) İç ağda, paket, sınırda kendisine hangi mucizelerin olduğunu bile bilmeyen başlatıcıya geri gönderilir.
Ve böylece herkesle olacak.
Ayrıca, bağlantı internetten başlatılırsa, paketler otomatik olarak tetikleyici cihazdan geçerek dahili ana bilgisayara gider.

Bu yaklaşım, ağınızın içinde dışarıdan tam erişime ihtiyaç duyan bir sunucunuz olduğunda kullanışlıdır. Tabii ki üç yüz hostu tek bir adres üzerinden internete bırakmak istiyorsanız bu seçeneği kullanamazsınız. Bu NAT seçeneği, beyaz IP adreslerini korumanıza yardımcı olmaz, ancak yine de faydalı olabilir.

Dinamik
Beyaz adreslerden oluşan bir havuzunuz var, örneğin, sağlayıcınız size 16 adresli bir 198.51.100.0/28 ağ tahsis etti. Bunlardan ikisi (ilk ve son) ağ adresi ve yayın adresidir, yönlendirme sağlamak için ekipmana iki adres daha atanır. NAT için kalan 12 adresi kullanabilir ve kullanıcılarınızı bunlar aracılığıyla serbest bırakabilirsiniz.
Durum statik NAT'a benzer - bir özel adres bir harici adrese çevrilir - ancak şimdi harici olan net bir şekilde sabitlenmemiştir, ancak belirtilen aralıktan dinamik olarak seçilecektir.
Şu şekilde yapılandırılmıştır:
Yönlendirici (yapılandırma) #ip nat havuzu lol_pool 198.51.100.3 198.51.100.14

Adresin uluslaşma için seçileceği bir genel adres havuzu (aralığı) belirtildi
Yönlendirici (yapılandırma)
# erişim listesi 100 izin ip 172.16.6.0 0.0.0.255 herhangi

Kaynak adresi 172.16.6.x olan tüm paketlerin geçmesine izin veren bir erişim listesi belirledik, burada NS 0-255 arasında değişir.
Yönlendirici (config) #ip nat kaynak listesi içinde 100 havuz lol_pool

Bu komut ile oluşturulan ACL'ye ve havuza katılıyoruz.

Bu seçenek de evrensel değildir, ayrıca 300 harici adresiniz yoksa 300 kullanıcınızı İnternet'e bırakamazsınız. Beyaz adresler tükendiğinde, yeni hiç kimse İnternet'e erişemez. Aynı zamanda, kendileri için harici bir adres almayı başarmış olan kullanıcılar da çalışacaktır. Ekip, tüm güncel yayınları ve ücretsiz harici adresleri atmanıza yardımcı olacaktır. net ip nat çevirisi *
Harici adresleri dinamik olarak ayırmaya ek olarak, bu dinamik NAT, statik NAT'tan farklıdır. ayrı ayar havuz adreslerinden birine bağlanmak için bağlantı noktası iletme artık mümkün değildir.

Çoktan bire
Sonraki türün birkaç adı vardır: NAT Aşırı Yüklemesi, Bağlantı Noktası Adresi Çevirisi (PAT), IP Maskelemesi, Çoktan Bire NAT.
Soyadı kendisi için konuşur - bir dış adres aracılığıyla birçok özel adres dünyaya açılır. Bu, sorunu harici adreslerin eksikliği ile çözmenize ve herkesi dünyaya bırakmanıza olanak tanır.
Burada nasıl çalıştığına dair bir açıklama yapmak gerekli olacaktır. İki özel adresin bire nasıl çevrildiği hayal edilebilir, ancak bir yönlendirici İnternetten dönen bir paketi bu adrese kimin iletmesi gerektiğini nasıl anlar?
Her şey çok basit:
Dahili ağdaki iki ana bilgisayardan sürücüye gelen paketler olduğunu varsayalım. Her ikisi de WEB sunucusu 192.0.2.2'ye bir istekle.
Ana bilgisayarlardan gelen veriler şöyle görünür:

Yönlendirici, ilk ana bilgisayardan gelen IP paketini ortaya çıkarır, ondan TCP segmentini çıkarır, yazdırır ve bağlantının hangi porttan kurulduğunu bulur. Dahili ağdaki adresin değişeceği harici bir 198.51.100.2 adresine sahiptir.
Ardından, örneğin 11874 gibi ücretsiz bir liman seçer. Peki bundan sonra ne yapar? Tüm uygulama katmanı verilerini yeni bir TCP segmentinde paketler, burada 80 hedef bağlantı noktası olarak kalır (bunun için WEB sunucusu bağlantıları bekler) ve gönderen bağlantı noktası 23761'den 11874'e değişir. Bu TCP segmenti bir gönderenin IP adresinin 172.16.6.5'ten 198.51.100.2'ye değiştiği yeni IP paketi.
Aynısı ikinci ana bilgisayardan gelen paket için de olur, yalnızca bir sonraki boş bağlantı noktası seçilir, örneğin 11875. “Serbest”, henüz bu tür bağlantılarla meşgul olmadığı anlamına gelir.
İnternete gönderilen veriler şimdi böyle görünecek.

NAT tablosunda, gönderen ve alıcıların verilerini girer.

Bir WEB sunucusu için bunlar, her birini ayrı ayrı işlemesi gereken tamamen farklı iki istektir. Bundan sonra, şuna benzeyen bir yanıt gönderir:

Bu paketlerden biri yönlendiricimize ulaştığında, bu paketteki verileri NAT tablosundaki girişleriyle eşleştirir. Bir eşleşme bulunursa, bunun tersi yordam gerçekleşir - paket ve TCP segmenti yalnızca bir hedef olarak orijinal parametrelerine döndürülür:

Ve şimdi paketler, iç ağ üzerinden, verilerinin bir yerde sınırda bu kadar sert muamele gördüğünü bile bilmeyen başlatıcı bilgisayarlara teslim ediliyor.

İsteklerinizin her biri ayrı bir bağlantıdır. Yani, bir WEB sayfası açmaya çalıştınız - bu, 80 numaralı bağlantı noktasını kullanan HTTP protokolüdür. Bunu yapmak için bilgisayarınızın bir TCP oturumu oluşturması gerekir. uzak sunucu... Böyle bir oturum (TCP veya UDP) iki soket tarafından tanımlanır: yerel IP adresi: yerel bağlantı noktası ve uzak IP adresi: uzak bağlantı noktası... Normal bir durumda, bir bilgisayar-sunucu bağlantınız vardır, NAT durumunda iki bağlantı olacaktır: yönlendirici-sunucu ve bilgisayar, bir bilgisayar-sunucu oturumu olduğunu düşünüyor.

Ayar biraz farklıdır: ek sözcük aşırı yüklemesi ile:
Yönlendirici (yapılandırma) # erişim listesi 101 izin 172.16.4.0 0.0.0.255
Yönlendirici (config) #ip nat kaynak listesi içinde 101 arabirimi fa0 / 1 aşırı yükleme

Aynı zamanda, elbette, adres havuzunu yapılandırmak da mümkündür:
Yönlendirici (yapılandırma) #ip nat havuzu lol_pool 198.51.100.2 198.51.100.14
Yönlendirici (yapılandırma) # erişim listesi 100 izin 172.16.6.0 0.0.0.255
Yönlendirici (config) #ip nat kaynak listesi içinde 100 havuz lol_pool aşırı yükleme

bağlantı noktası yönlendirme
Aksi takdirde, bağlantı noktası yönlendirme veya eşleme de derler.
NAT hakkında ilk konuşmaya başladığımızda bire bir çevirimiz vardı ve dışarıdan gelen tüm istekler otomatik olarak dahili ana bilgisayara yönlendiriliyordu. Bu şekilde, sunucuyu internetin dışına çıkarmak mümkün olacaktır.
Ancak böyle bir fırsatınız yoksa - beyaz adreslerle sınırlısınız veya bir sürü limanla dışarıya maruz bırakmak istemiyorsanız ne yapmalı?
Belirli bir beyaz adrese ve belirli bir yönlendirici bağlantı noktasına gelen tüm isteklerin şu adrese yönlendirileceğini belirtebilirsiniz. istenen bağlantı noktası istenilen dahili adres
Yönlendirici (yapılandırma) #ip nat kaynak statik tcp içinde 172.16.0.2 80 198.51.100.2 80 genişletilebilir

Bu komutun kullanılması, İnternet'ten 80 numaralı bağlantı noktasındaki 198.51.100.2 adresine yapılan bir TCP isteğinin, aynı 80. bağlantı noktasındaki 172.16.0.2 dahili adresine yeniden yönlendirileceği anlamına gelir. Tabii ki, UDP iletebilir ve bir bağlantı noktasından diğerine yönlendirebilirsiniz. Bu, örneğin, dışarıdan RDP aracılığıyla erişmeniz gereken iki bilgisayarınız varsa yararlı olabilir. RDP, 3389 numaralı bağlantı noktasını kullanır. Aynı bağlantı noktasını farklı ana bilgisayarlara iletemezsiniz (aynı harici adresi kullanırken). Bu nedenle, bunu yapabilirsiniz:
Yönlendirici (yapılandırma) # ip nat kaynak statik tcp içinde 172.16.6.61 3389 198.51.100.2 3389
Yönlendirici (yapılandırma) # ip nat kaynak statik tcp içinde 172.16.6.66 3389 198.51.100.2 3398

Ardından, 172.16.6.61 bilgisayarına ulaşmak için 198.51.100.2:3389 numaralı bağlantı noktasında ve 172.16.6.66 - 198.51.100.2:3398 numaralı bağlantı noktasında bir RDP oturumu başlatırsınız. Yönlendiricinin kendisi, olması gereken her şeyi dağıtacaktır.

Bu arada, bu komut ilk komutun özel bir durumudur: ip nat inside source static 172.16.6.66 198.51.100.2. Sadece bu durumda, tüm trafiği iletmekten ve örneklerimizde - TCP protokolünün belirli bağlantı noktalarından bahsediyoruz.

NAT temelde böyle çalışır. Özellikleri, artıları / eksileri hakkında birçok makale yazılmıştır, ancak bunlar göz ardı edilemez.

NAT'ın zayıf ve güçlü yönleri
+
- Her şeyden önce NAT, genel IP adreslerini kaydeder. Aslında bunun için yaratıldı. Tek bir adres aracılığıyla teorik olarak 65.000'den fazla gri adresin (port sayısına göre) serbest bırakılması mümkündür.
- İkincisi, PAT ve dinamik NAT bir dereceye kadar bir güvenlik duvarıdır ve harici bağlantıların kendi güvenlik duvarı ve antivirüsü olmayan uç bilgisayarlara ulaşmasını engeller. Gerçek şu ki, sürücüye dışarıdan beklenmeyen veya burada izin verilmeyen bir paket gelirse, basitçe atılır.
Paketin atlanması ve işlenmesi için aşağıdaki koşulların karşılanması gerekir:
1) Pakette göndericinin adresi olarak belirtilen bu harici adres için NAT tablosunda bir giriş olmalıdır.
VE
2) Paketteki gönderici bağlantı noktası, girişteki bu beyaz adresin bağlantı noktasıyla eşleşmelidir.
VE
3) Paketteki hedef bağlantı noktası, girişteki bağlantı noktasıyla aynıdır.
VEYA
Bağlantı noktası yönlendirme yapılandırıldı.
Ancak NAT'ı tam olarak bir güvenlik duvarı olarak düşünmenize gerek yok - bu onun için ek bir bonustan başka bir şey değil.

- Üçüncüsü, NAT gizler meraklı gözler ağınızın iç yapısı - rotayı dışarıdan takip ettiğinizde sürücünün ötesinde bir şey görmezsiniz.

-
NAT'ın bazı dezavantajları vardır. En somut olanlar belki de şunlardır:
- Bazı protokoller koltuk değneği olmadan NAT üzerinden çalışamaz. Örneğin, FTP veya tünel protokolleri (laboratuvarda FTP'yi ne kadar basit kurmama rağmen, gerçek hayatta bu bir sürü sorun yaratabilir)
- Başka bir sorun, bir adresten bir sunucuya çok sayıda istek gelmesi gerçeğinde yatmaktadır. Buna birçok kişi şahit olmuş, bir Rapidshare'e gittiğinizde IP'nizden zaten bir bağlantı olduğunu söylediğinde “yalan söylüyor köpek” zannediyorsunuz ama komşunuz zaten emiyor. Aynı nedenle, sunucular kaydolmayı reddettiğinde ICQ ile ilgili sorunlar vardı.
- Sorun şu anda çok acil değil: işlemci ve RAM üzerindeki yük. Basit yönlendirmeye kıyasla iş miktarı oldukça fazla olduğu için (sadece IP başlığına bakmanız gerekmez, onu kaldırmanız, TCP başlığını kaldırmanız, tabloya eklemeniz, yeni başlıkları sıkıştırmanız gerekir) küçük ofislerde problemler vardır. Bununla.
Böyle bir durumla karşılaştım.
Olası bir çözüm, NAT işlevini ayrı bir bilgisayara veya örneğin bir Cisco ASA gibi özel bir cihaza taşımaktır.
Yönlendiricileri 3-4 BGP tam görünümü çeviren büyük oyuncular için artık bu bir sorun değil.

Bilmen gereken başka ne var?
- NAT esas olarak özel adreslere sahip ana bilgisayarlara İnternet erişimi sağlamak için kullanılır. Ancak başka bir kullanım daha var - örtüşen adres boşluklarına sahip iki özel ağ arasında bir bağlantı.
Örneğin, şirketiniz Aktyubinsk'te bir şube satın alıyor. Adresiniz 10.0.0.0-10.1.255.255 ve 10.1.1.0-10.1.10.255 var. Aralıklar açıkça örtüşüyor, yönlendirmeyi yapılandıramazsınız, çünkü aynı adres Aktyubinsk'te ve genel merkezinizde görünebilir.
Bu durumda, NAT bağlantı noktasında yapılandırılır. Gri adresimiz olmadığı için örneğin 10.2.1.0-10.2.10.255 aralığını seçip bire bir yayın yapabiliriz:
10.1.1.1-10.2.1.1
10.1.1.2-10.2.1.2

10.1.10.255-10.2.10.255

Yetişkinler için büyük oyuncaklarda, NAT ayrı bir tahtaya uygulanabilir (ve çoğu zaman öyledir) ve onsuz çalışmayacaktır. Ve ofis bezlerinde, tam tersine, neredeyse her zaman vardır.

İLE BİRLİKTE yaygın tanıtım IPv6, NAT ihtiyacını azaltacaktır. Şimdiden, büyük müşteriler NAT64'ün işlevselliğiyle ilgilenmeye başlıyor - bu, IPv4 aracılığıyla dünyaya erişiminizin olduğu andır ve Dahili ağ zaten IPv6'da

Tabii ki, bu NAT'a sadece yüzeysel bir bakış ve hala kendi kendine eğitimin boğulmamanıza yardımcı olacağı bir nüans denizi var.

NAT alıştırması
Gerçeklik bizden ne ister?
1) Kontrol ağının hiç İnternet erişimi yok
2) Mesleki Eğitim ve Öğretim ağından gelen sunucuların yalnızca özel sitelere, örneğin bir siteye erişimi vardır.
3) Muhasebe departmanından sevimli hanımlar, müşteri bankalarının dünyasına bir pencere açmalıdır.
4) FEO, mali direktör dışında hiçbir yerde yayınlanmamalıdır.
5) Diğer ağda, bizim bilgisayarımız ve yöneticinin bilgisayarı - onlara internete tam erişim vereceğiz. Diğerleri yazılı talep üzerine açılabilir.
6) St. Petersburg ve Kemerovo şubelerini de unutmayalım. Basit olması için, bu alt ağlardan enikis için tam erişimi yapılandıracağız.
7) Sunucular ile ayrı bir şarkı. Onlar için port yönlendirmeyi yapılandıracağız. Tek ihtiyacımız olan:
a) WEB sunucusu 80 numaralı bağlantı noktasında mevcut olmalıdır
b) 25 ve 110'da posta sunucusu
c) Dosya sunucusuna FTP aracılığıyla dünyadan erişilebilir.
8) Yöneticinin ve bizimkinin bilgisayarlarına internetten RDP üzerinden erişilebilir olmalıdır. Aslında bu yanlış yol - uzak bir bağlantı için bir VPN bağlantısı kullanmanız ve yerel ağda zaten RDP kullanmanız gerekiyor, ancak bu tamamen farklı bir makalenin konusu.

Önce bir test sitesi hazırlayalım:

İnternet bağlantısı, sağlayıcı tarafından sağlanan mevcut bağlantı aracılığıyla düzenlenecektir.
Sağlayıcının ağına gider. Bu buluttaki her şeyin aslında düzinelerce yönlendirici ve yüzlerce anahtardan oluşabilen soyut bir ağ olduğunu hatırlatırız. Ancak yönetilebilir ve öngörülebilir bir şeye ihtiyacımız var, bu yüzden buraya başka bir yönlendirici koyduk. Bir yandan, anahtardan bir bağlantı var, diğer yandan internette bir sunucu var.

Aşağıdaki sunuculara ihtiyacımız var:
1. Muhasebeciler için iki müşteri bankası (sperbank.ru, mmm-bank.ru)
2. PTOshniki için site
3.Yandex (yandex.ru)

Böyle bir bağlantı için başka bir vlan'ı msk-arbat-gw1'e yükselteceğiz. Numarası elbette sağlayıcı ile koordine edilir. VLAN 6 olsun
Sağlayıcının bize sağladığını varsayalım alt ağ 198.51.100.0/28... İlk iki adres bağlantıyı düzenlemek için kullanılır (198.51.100.1 ve 198.51.100.2), geri kalanları ise NAT'a için bir havuz olarak kullanırız. Ancak havuz için 198.51.100.2 adresini kullanmamıza hiç kimse engel değildir. Öyleyse hadi yapalım: havuz: 198.51.100.2-198.51.100.14
Basitlik için, varsayalım ki genel sunucular aynı alt ağdayız:
192.0.2.0/24 .
Bir bağlantı ve adresleri nasıl kuracağınızı zaten biliyorsunuz.
Sağlayıcının ağında yalnızca bir yönlendiricimiz olduğundan ve tüm ağlar doğrudan ona bağlı olduğundan, yönlendirmeyi yapılandırmaya gerek yoktur.
Ancak msk-arbat-gw1'imizin paketleri İnternet'e nereye göndereceğini bilmesi gerekiyor, bu nedenle varsayılan bir rotaya ihtiyacımız var:
msk-arbat-gw1 (yapılandırma) # ip yolu 0.0.0.0 0.0.0.0 198.51.100.1

Şimdi sırayla

İlk önce adres havuzunu kuralım
msk-arbat-gw1 (yapılandırma) # ip nat havuzu ana_havuz 198.51.100.2 198.51.100.14 ağ maskesi 255.255.255.240

Şimdi ACL'yi topluyoruz:
msk-arbat-gw1 (config) # ip erişim listesi genişletilmiş nat-inet

1) Kontrol ağı
hiç internet erişimi yok
Hazır
2) MEÖ ağından sunucular
Yalnızca özel sitelere, örneğin bir siteye erişin
msk-arbat-gw1 (config-ext-nacl) # tcp izni 172.16.3.0 0.0.0.255 ana bilgisayar 192.0.2.2 eq 80
3) Muhasebe
Her iki sunucudaki tüm ana bilgisayarlara erişim sağlıyoruz
msk-arbat-gw1 (config-ext-nacl) # ip izin 172.16.5.0 0.0.0.255 ana bilgisayar 192.0.2.3
msk-arbat-gw1 (config-ext-nacl) # ip izni 172.16.5.0 0.0.0.255 ana bilgisayar 192.0.2.4
4) FEO
Yalnızca CFO'ya izin veriyoruz - bu yalnızca bir ana bilgisayardır.
msk-arbat-gw1 (config-ext-nacl) # ip ana bilgisayarına izin ver 172.16.4.123 herhangi biri
5) Diğer
Tam erişimli bilgisayarlarımız
msk-arbat-gw1 (config-ext-nacl) # ip ana bilgisayarına izin ver 172.16.6.61 herhangi biri
msk-arbat-gw1 (config-ext-nacl) # ip ana bilgisayarına izin ver 172.16.6.66 herhangi biri
6) St. Petersburg ve Kemerovo şubeleri
Enikiev'in adresleri aynı olsun: 172.16.x.222
msk-arbat-gw1 (config-ext-nacl) # ip ana bilgisayarına izin ver 172.16.16.222 herhangi biri
msk-arbat-gw1 (config-ext-nacl) # ip ana bilgisayarına izin ver 172.16.17.222 herhangi biri
msk-arbat-gw1 (config-ext-nacl) # ip ana bilgisayarına izin ver 172.16.24.222 herhangi biri

ACL şimdi tam olarak böyle görünüyor:
ip erişim listesi genişletilmiş nat-inet
açıklama PTO
tcp'ye izin ver 172.16.3.0 0.0.0.255 ana bilgisayar 192.0.2.2 eq www
MUHASEBE
ip izin ver 172.16.5.0 0.0.0.255 ana bilgisayar 192.0.2.3
ip izin ver 172.16.5.0 0.0.0.255 ana bilgisayar 192.0.2.4
açıklama FEO
ip ana bilgisayarına izin ver 172.16.4.123 herhangi
açıklama IAM
ip ana bilgisayarına izin ver 172.16.6.61 herhangi biri
YÖNETİCİ
ip ana bilgisayarına izin ver 172.16.6.66 herhangi biri
açıklama SPB_VSL_ISLAND
ip ana bilgisayarına izin ver 172.16.16.222 herhangi biri
açıklama SPB_OZERKI
ip ana bilgisayarına izin ver 172.16.17.222 herhangi
açıklama KMR
ip ana bilgisayarına izin ver 172.16.24.222 herhangi

Başlatmak:
msk-arbat-gw1 (config) # ip nat kaynak listesi içinde nat-inet havuzu main_pool aşırı yüklemesi

Ancak, arayüzleri özelleştirmeden mutluluk tamamlanmayacaktır:
Harici arayüzde, komutu vermeniz gerekir. ip nat dışarıda
Dahili: ip nat içeride
msk-arbat-gw1 (yapılandırma) # int fa0 / 0.101
msk-arbat-gw1 (yapılandırma) # int fa0 / 0.102
msk-arbat-gw1 (config-subif) # ip nat içeride
msk-arbat-gw1 (yapılandırma) # int fa0 / 0.103
msk-arbat-gw1 (config-subif) # ip nat içeride
msk-arbat-gw1 (yapılandırma) # int fa0 / 0.104
msk-arbat-gw1 (config-subif) # ip nat içeride
msk-arbat-gw1 (yapılandırma) # int fa0 / 1.6
msk-arbat-gw1 (config-subif) # ip nat dışarıda

Bu, yönlendiricinin paketlerin nerede işleneceğini ve daha sonra nereye gönderileceğini anlamasını sağlar.

İnternetteki sunucuların alan adıyla erişilebilmesi için ağımıza bir DNS sunucusu almamız iyi olur:



Doğal olarak, erişimi kontrol edeceğimiz cihazlara kaydetmeniz gerekir:

Gösteri devam etmeli!

Her şey yöneticinin bilgisayarından kullanılabilir:

PTO ağından yalnızca 80. bağlantı noktasındaki (HTTP) site sitesine erişim vardır:





FEO ağında dünyaya sadece 4.123 çıkıyor (findirector)





Muhasebe bölümünde sadece müşteri-banka siteleri çalışır. Ancak, izin tamamen IP protokolüne verildiğinden, ping işlemi yapılabilir:



7) Sunucular
Burada, İnternet'ten erişilebilmesi için bağlantı noktası iletmeyi yapılandırmamız gerekiyor:

a) Web sunucusu
msk-arbat-gw1 (config) # ip nat kaynak statik tcp içinde 172.16.0.2 80 198.51.100.2 80

Örneğin, bunu 192.0.2.7 adresli bir test PC'sinden yapabileceğimizi hemen kontrol ederiz.
Artık hiçbir şey çalışmayacak, çünkü sunucular ağı için msk-arbat-gw1 için yapılandırılmış bir arayüzümüz yok:
msk-arbat-gw1 (yapılandırma) # int fa0 / 0.3
msk-arbat-gw1 (config-subif) # ip nat içeride

Ve şimdi:

b) Dosya sunucusu
msk-arbat-gw1 (config) # ip nat kaynak statik tcp içinde 172.16.0.3 20 198.51.100.3 20
msk-arbat-gw1 (config) # ip nat kaynak statik tcp içinde 172.16.0.3 21 198.51.100.3 21

Bunun için ACL Sunucuları çıkışında da herkes için 20-21 portlarını açtık.

c) Posta sunucusu
msk-arbat-gw1 (config) # ip nat kaynak statik tcp içinde 172.16.0.4 25 198.51.100.4 25
msk-arbat-gw1 (config) # ip nat kaynak statik tcp içinde 172.16.0.4 110 198.51.100.4 110

Ayrıca kontrol etmek zor değil. Talimatları takip et:
İlk olarak mail sunucumuzu kuruyoruz. Etki alanını belirtiyoruz ve iki kullanıcı oluşturuyoruz.

Ardından, etki alanını DNS'ye ekliyoruz. Bu adım isteğe bağlıdır - sunucuya IP ile de erişebilirsiniz, ancak neden olmasın?

Ağımızdan bir bilgisayar yapılandırıyoruz:

Dışarıdan:

Bir mektup hazırlamak:

Yerel ana bilgisayarda Al'ı tıklayın:

8) Yöneticinin bilgisayarlarına ve bizim bilgisayarlarımıza RDP üzerinden erişim
msk-arbat-gw1 (config) # ip nat kaynak statik tcp içinde 172.16.6.61 3389 198.51.100.10 3389
msk-arbat-gw1 (config) # ip nat kaynak statik tcp içinde 172.16.6.66 3389 198.51.100.10 3398
Güvenlik
Son olarak, bir açıklama. Büyük olasılıkla, gerdirme cihazı ip nat dış arayüzünüze dışarıdan bakar - İnternet'e. Bu nedenle, ihtiyacınız olanı inkar ettiğiniz, izin verdiğiniz, bu arayüzde ACL'yi kapatmaktan zarar gelmez. Bu yazıda bu konu üzerinde durmayacağız.

Bu, NAT teknolojisi ile ilk tanışmayı tamamlar.
Başka bir DZ olarak, Enikis'in St. Petersburg ve Kemerovo'daki bilgisayarlarından neden İnternet erişimi olmadığı sorusuna cevap verin. Sonuçta, onları zaten erişim listesine ekledik.

Yayın malzemeleri

erişim listesi 101 ip 192.168.2.0 0.0.0.255 herhangi birine izin verir

Paket 192.168.2.0/24 ağından geliyorsa, bunun için sonraki atlama 10.0.2.1'i (10.0.1.1 yerine) atadığımızı belirttiğimiz bir yol haritası oluşturun.

Rota haritası MÜŞTERİ izni 5
ip adresi 101 ile eşleş
ip sonraki atlama 10.0.2.1 ayarla

Haritayı arayüze uygulayın:
ip politikası rota haritası MÜŞTERİ

Bu kullanımlardan sadece biri güçlü araç Maalesef hiçbir şekilde RT'de uygulanmayan Politika Tabanlı Yönlendirme.

Hız sınırı
Aynı örneği kullanarak, 192.168.1.0/24 ağı için hızı 1.5 Mb/s ile ve 192.168.2.0/24 için 64 kb/s ile sınırlayacağız.
10.0.1.1'de aşağıdaki komutları çalıştırabilirsiniz:
Yönlendirici (yapılandırma) # erişim listesi 100 izin ip 192.168.1.0 0.0.0.255 herhangi
Yönlendirici (yapılandırma) # erişim listesi 101 ip 192.168.2.0 0.0.0.255 herhangi birine izin verir
Yönlendirici (yapılandırma) # arabirimi fa0 / 0
Yönlendirici (config-if) # hız limiti çıkış erişim grubu 100 1544000 64000 64000 uyumlu eylem iletme aşırı eylem düşüşü
Yönlendirici (config-if) # hız limiti çıkış erişim grubu 101 64000 16000 16000 uyumlu eylem iletimi aşma eylemi düşüşü

Yazarlar:

Marat öküzotu
Maxim aka gluk

Makalenin hazırlanmasındaki yardımları için Dmitry JDima'ya özel teşekkürler.